~ubuntu-branches/ubuntu/vivid/emscripten/vivid

« back to all changes in this revision

Viewing changes to tests/fuzz/3.c

  • Committer: Package Import Robot
  • Author(s): Sylvestre Ledru
  • Date: 2013-05-02 13:11:51 UTC
  • Revision ID: package-import@ubuntu.com-20130502131151-q8dvteqr1ef2x7xz
Tags: upstream-1.4.1~20130504~adb56cb
ImportĀ upstreamĀ versionĀ 1.4.1~20130504~adb56cb

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
/*
 
2
 * This is a RANDOMLY GENERATED PROGRAM.
 
3
 *
 
4
 * Generator: csmith 2.2.0
 
5
 * Git version: 2751ded
 
6
 * Options:   --no-volatiles --no-math64
 
7
 * Seed:      1532285979
 
8
 */
 
9
 
 
10
#include "csmith.h"
 
11
 
 
12
 
 
13
static long __undefined;
 
14
 
 
15
/* --- Struct/Union Declarations --- */
 
16
union U0 {
 
17
   int8_t  f0;
 
18
   const uint8_t  f1;
 
19
};
 
20
 
 
21
union U1 {
 
22
   int8_t * f0;
 
23
};
 
24
 
 
25
union U2 {
 
26
   int32_t  f0;
 
27
   uint32_t  f1;
 
28
   uint8_t  f2;
 
29
   uint32_t  f3;
 
30
   int8_t * f4;
 
31
};
 
32
 
 
33
/* --- GLOBAL VARIABLES --- */
 
34
static uint8_t g_23 = 0x67L;
 
35
static int32_t g_25 = 1L;
 
36
static uint16_t g_34 = 0x451DL;
 
37
static union U2 g_42 = {-1L};
 
38
static int32_t g_61[8][6][4] = {{{0xE281B1D0L,8L,9L,0xC90ACEFCL},{0xC369029EL,8L,0x63978472L,0x55BBB785L},{0x23D12EF6L,(-1L),0x23D12EF6L,8L},{0x55BBB785L,0xE4FCD58FL,0L,1L},{0xDD4F9520L,0xBF567D71L,0x9117A540L,0xE4FCD58FL},{4L,0L,0x9117A540L,9L}},{{0xDD4F9520L,(-1L),0L,0L},{0x55BBB785L,(-1L),0x23D12EF6L,0xDD4F9520L},{0x23D12EF6L,0xDD4F9520L,0x63978472L,0L},{0xC369029EL,9L,9L,0xC369029EL},{0xE281B1D0L,6L,0x55BBB785L,0x70A6219FL},{0L,0x63978472L,0xE281B1D0L,8L}},{{4L,9L,(-1L),8L},{0x63978472L,1L,0xC90ACEFCL,(-1L)},{0x9117A540L,(-1L),0x63978472L,0xE281B1D0L},{0L,0x9117A540L,0xC35C241EL,0x55F5DDA3L},{0x3A29ADD9L,(-1L),0x5DD88BA5L,(-1L)},{0xE4FCD58FL,8L,9L,0xBF567D71L}},{{0x55BBB785L,0xDD4F9520L,0xBF567D71L,0x9117A540L},{0x55F5DDA3L,0x3A29ADD9L,8L,1L},{0x55F5DDA3L,4L,0xBF567D71L,0x55BBB785L},{0x55BBB785L,1L,9L,0L},{0xE4FCD58FL,0L,0x5DD88BA5L,8L},{0x3A29ADD9L,0x5DD88BA5L,0xC35C241EL,0xC35C241EL}},{{0L,0L,0x63978472L,0xDD4F9520L},{0x9117A540L,6L,0xC90ACEFCL,(-1L)},{0x63978472L,0xC369029EL,(-1L),0xC90ACEFCL},{4L,0xC369029EL,0xE281B1D0L,(-1L)},{0xC369029EL,6L,8L,0xDD4F9520L},{0L,0L,0x9117A540L,0xC35C241EL}},{{0xE281B1D0L,0x5DD88BA5L,1L,8L},{6L,0L,6L,0L},{8L,1L,0x3A29ADD9L,0x55BBB785L},{(-1L),4L,0x70A6219FL,1L},{0x23D12EF6L,0x3A29ADD9L,0x70A6219FL,0x9117A540L},{(-1L),0xBF567D71L,0x55BBB785L,(-1L)}},{{0x9117A540L,0x23D12EF6L,0xE4FCD58FL,4L},{0xE4FCD58FL,4L,0x3A29ADD9L,(-1L)},{0x63978472L,0L,0L,0x63978472L},{1L,1L,0x9117A540L,0L},{0xC35C241EL,0x3A29ADD9L,0x63978472L,0x23D12EF6L},{8L,8L,4L,0x23D12EF6L}},{{0L,0x3A29ADD9L,0xC369029EL,0L},{0L,1L,0L,0x63978472L},{0x70A6219FL,0L,0xE281B1D0L,(-1L)},{0x55BBB785L,4L,6L,4L},{(-1L),0x23D12EF6L,8L,(-1L)},{9L,0xBF567D71L,(-1L),0L}}};
 
39
static int32_t *g_60 = &g_61[3][1][1];
 
40
static int8_t g_70 = 1L;
 
41
static int8_t *g_69 = &g_70;
 
42
static int32_t g_78 = 1L;
 
43
static union U1 g_84 = {0};
 
44
static int32_t **g_95 = &g_60;
 
45
static int32_t ***g_94[1] = {&g_95};
 
46
static int8_t g_117 = 7L;
 
47
static union U0 g_163 = {0xE2L};
 
48
static uint16_t g_165[7] = {0xB953L,0xB953L,0xB953L,0xB953L,0xB953L,0xB953L,0xB953L};
 
49
static const uint8_t g_171[4][8][3] = {{{8UL,8UL,8UL},{1UL,1UL,1UL},{8UL,8UL,8UL},{1UL,1UL,1UL},{8UL,8UL,8UL},{1UL,1UL,1UL},{8UL,8UL,8UL},{1UL,1UL,1UL}},{{8UL,8UL,8UL},{1UL,1UL,1UL},{8UL,8UL,8UL},{1UL,1UL,1UL},{8UL,8UL,8UL},{1UL,1UL,1UL},{8UL,8UL,8UL},{1UL,1UL,1UL}},{{8UL,8UL,8UL},{1UL,1UL,1UL},{8UL,8UL,8UL},{1UL,1UL,1UL},{8UL,8UL,8UL},{1UL,1UL,1UL},{8UL,8UL,8UL},{1UL,1UL,1UL}},{{8UL,8UL,8UL},{1UL,1UL,1UL},{8UL,8UL,8UL},{1UL,1UL,1UL},{8UL,8UL,8UL},{1UL,1UL,1UL},{8UL,8UL,8UL},{1UL,1UL,1UL}}};
 
50
static const uint8_t *g_170 = &g_171[2][3][0];
 
51
static uint8_t g_218 = 0xB9L;
 
52
static int16_t g_234 = 1L;
 
53
static int16_t g_246 = 0x3B2BL;
 
54
static int16_t *g_248 = &g_246;
 
55
static int16_t *g_249 = &g_246;
 
56
static int32_t g_255 = (-8L);
 
57
static int16_t g_380 = 0L;
 
58
static int16_t g_387 = 1L;
 
59
static union U2 *g_397 = &g_42;
 
60
static union U2 **g_396 = &g_397;
 
61
static const int32_t *g_404 = &g_25;
 
62
static union U0 g_405[4][1] = {{{0xD5L}},{{0xD5L}},{{0xD5L}},{{0xD5L}}};
 
63
static int8_t g_471 = (-2L);
 
64
static uint16_t **g_505 = (void*)0;
 
65
static const int32_t g_555 = 0x72195204L;
 
66
static uint16_t g_556[9] = {8UL,0x32E2L,8UL,8UL,0x32E2L,8UL,8UL,0x32E2L,8UL};
 
67
static int32_t *g_588 = &g_61[3][1][2];
 
68
static uint8_t *g_616 = &g_42.f2;
 
69
static union U1 *g_644 = &g_84;
 
70
static union U1 **g_643 = &g_644;
 
71
 
 
72
 
 
73
/* --- FORWARD DECLARATIONS --- */
 
74
static int32_t  func_1(void);
 
75
static uint8_t  func_4(int8_t * p_5, uint16_t  p_6, int8_t * p_7);
 
76
static int8_t * func_8(uint8_t  p_9, const uint32_t  p_10, const int8_t * p_11, union U0  p_12);
 
77
static const int8_t  func_16(union U0  p_17, uint8_t  p_18, int8_t * p_19, int8_t * p_20);
 
78
static union U0  func_21(uint32_t  p_22);
 
79
static int8_t  func_27(uint16_t  p_28, int32_t * p_29, union U2  p_30, int32_t * const  p_31, int32_t  p_32);
 
80
static int32_t * func_37(const uint16_t  p_38, union U2  p_39, int32_t * p_40, int32_t  p_41);
 
81
static int32_t * func_43(uint8_t  p_44, int8_t  p_45, int8_t * p_46);
 
82
static uint16_t  func_50(int32_t * p_51, uint16_t  p_52, int8_t  p_53, int32_t * p_54, union U2  p_55);
 
83
static int32_t * func_56(int8_t * p_57, int32_t * p_58);
 
84
 
 
85
 
 
86
/* --- FUNCTIONS --- */
 
87
/* ------------------------------------------ */
 
88
/* 
 
89
 * reads : g_23 g_34 g_42 g_60 g_61 g_42.f3 g_69 g_70 g_42.f2 g_78 g_94 g_117 g_95 g_163 g_163.f0 g_42.f1 g_218 g_170 g_171 g_163.f1 g_84 g_248 g_246 g_234 g_249 g_405 g_255 g_387 g_25 g_396 g_397 g_380 g_471 g_165 g_404 g_505 g_588 g_643
 
90
 * writes: g_25 g_34 g_60 g_78 g_61 g_117 g_170 g_70 g_163.f0 g_218 g_165 g_234 g_42.f1 g_404 g_255 g_387 g_396 g_471 g_42.f2 g_616
 
91
 */
 
92
static int32_t  func_1(void)
 
93
{ /* block id: 0 */
 
94
    int32_t l_13[8] = {1L,1L,1L,1L,1L,1L,1L,1L};
 
95
    uint16_t *l_33 = &g_34;
 
96
    uint32_t l_47 = 0xF844BA92L;
 
97
    int8_t *l_59 = (void*)0;
 
98
    union U2 l_64 = {-8L};
 
99
    int32_t l_175[3][5] = {{0xEB591F11L,0xEB591F11L,(-9L),4L,0xE9867546L},{(-1L),1L,1L,(-1L),0xEB591F11L},{(-1L),4L,0L,0L,4L}};
 
100
    int32_t l_509[9][6] = {{0xDF92247FL,0x59DF3EF6L,0x59DF3EF6L,0xDF92247FL,0x59DF3EF6L,0x59DF3EF6L},{0xDF92247FL,0x59DF3EF6L,0x59DF3EF6L,0xDF92247FL,0x59DF3EF6L,0x59DF3EF6L},{0xDF92247FL,0x59DF3EF6L,0x59DF3EF6L,0xDF92247FL,0x59DF3EF6L,0x59DF3EF6L},{0xDF92247FL,0x59DF3EF6L,0x59DF3EF6L,0xDF92247FL,0x59DF3EF6L,0x59DF3EF6L},{0xDF92247FL,0x59DF3EF6L,0x59DF3EF6L,0xDF92247FL,0x59DF3EF6L,0x59DF3EF6L},{0xDF92247FL,0x59DF3EF6L,0x59DF3EF6L,0xDF92247FL,0x59DF3EF6L,0x59DF3EF6L},{0xDF92247FL,0x59DF3EF6L,0x59DF3EF6L,0xDF92247FL,0x59DF3EF6L,0x59DF3EF6L},{0xDF92247FL,0x59DF3EF6L,0x59DF3EF6L,0xDF92247FL,0x59DF3EF6L,0x59DF3EF6L},{0xDF92247FL,0x59DF3EF6L,0x59DF3EF6L,0xDF92247FL,0x59DF3EF6L,0x59DF3EF6L}};
 
101
    uint32_t l_528 = 6UL;
 
102
    uint8_t *l_576[8] = {&g_23,&g_23,&g_23,&g_23,&g_23,&g_23,&g_23,&g_23};
 
103
    int32_t l_635 = 0x6AE51A9FL;
 
104
    int i, j;
 
105
    if (((safe_add_func_uint16_t_u_u((l_509[1][5] ^= (func_4(func_8(l_13[7], (((safe_mul_func_uint8_t_u_u((func_16(func_21(g_23), (((*g_69) = func_27((++(*l_33)), func_37(l_13[7], g_42, func_43(l_47, (safe_div_func_uint8_t_u_u((func_50(func_56(l_59, g_60), g_61[6][5][1], l_13[2], &g_61[3][1][1], l_64) <= l_64.f1), g_42.f3)), g_69), l_47), l_64, &l_13[1], l_175[0][2])) < l_13[7]), l_59, g_69) >= g_171[1][6][2]), 0x43L)) < l_64.f2) != 5UL), g_69, g_405[3][0]), l_64.f0, l_59) >= l_64.f1)), l_64.f3)) > 0x66CCL))
 
106
    { /* block id: 365 */
 
107
        int32_t l_524 = (-9L);
 
108
        union U2 l_580 = {0xF3A458B5L};
 
109
        int8_t *l_581 = (void*)0;
 
110
        int32_t l_589 = 0x34F78B18L;
 
111
        uint32_t l_605 = 0xE76FF136L;
 
112
        for (g_234 = (-16); (g_234 >= 13); g_234 = safe_add_func_int32_t_s_s(g_234, 6))
 
113
        { /* block id: 368 */
 
114
            union U2 l_520 = {0x03E6CC5CL};
 
115
            int32_t l_529 = (-7L);
 
116
            int32_t *l_566 = &l_175[0][0];
 
117
            const uint8_t *l_577 = &g_171[2][4][1];
 
118
            uint32_t *l_584 = &l_580.f1;
 
119
            uint8_t l_587 = 0x74L;
 
120
            if (l_64.f1)
 
121
            { /* block id: 369 */
 
122
                uint32_t l_516 = 0UL;
 
123
                uint8_t *l_519 = &g_42.f2;
 
124
                union U2 *l_521 = &l_64;
 
125
                int32_t *l_525 = (void*)0;
 
126
                int32_t *l_526 = &g_61[3][1][1];
 
127
                int32_t *l_527[7][2] = {{&l_13[4],&l_13[4]},{(void*)0,&l_13[4]},{&l_13[4],(void*)0},{&l_13[4],&l_13[4]},{(void*)0,&l_13[4]},{&l_13[4],(void*)0},{&l_13[4],&l_13[4]}};
 
128
                int16_t l_554 = 0xB066L;
 
129
                uint16_t *l_571 = &g_165[6];
 
130
                int i, j;
 
131
                l_529 = (safe_div_func_int16_t_s_s((safe_rshift_func_uint16_t_u_s(l_516, (safe_rshift_func_int8_t_s_u(l_516, ((*l_519) = 0x47L))))), (((*l_521) = l_520) , ((l_528 = ((*l_526) = (safe_lshift_func_uint16_t_u_s((func_16(g_163, l_524, l_519, &g_70) && 1L), 8)))) | l_520.f0))));
 
132
                if ((*l_526))
 
133
                    break;
 
134
                for (g_34 = 0; (g_34 <= 5); g_34 = safe_add_func_int16_t_s_s(g_34, 5))
 
135
                { /* block id: 378 */
 
136
                    uint32_t l_534 = 0x9C38BE8CL;
 
137
                    int8_t **l_537 = &g_69;
 
138
                    int32_t *l_565 = &l_13[0];
 
139
                }
 
140
            }
 
141
            else
 
142
            { /* block id: 394 */
 
143
                return l_175[0][1];
 
144
            }
 
145
            l_589 = ((*g_588) = (safe_mod_func_uint16_t_u_u(((((l_576[2] = &g_218) == l_577) && (~(safe_mul_func_uint8_t_u_u((l_13[5] >= (l_580 , g_165[5])), (*l_566))))) > 0x0256L), l_47)));
 
146
            (*g_588) ^= (*l_566);
 
147
        }
 
148
        for (g_117 = (-29); (g_117 != (-7)); g_117 = safe_add_func_int8_t_s_s(g_117, 5))
 
149
        { /* block id: 407 */
 
150
            int32_t *l_592 = &l_13[7];
 
151
            int32_t *l_593 = &l_13[0];
 
152
            int32_t *l_594 = &l_175[0][2];
 
153
            int32_t *l_595 = &l_509[1][5];
 
154
            int32_t *l_596 = &l_175[0][2];
 
155
            int32_t *l_597 = &l_509[1][5];
 
156
            int32_t *l_598 = &l_175[1][2];
 
157
            int32_t *l_599 = (void*)0;
 
158
            int32_t *l_600 = &g_255;
 
159
            int32_t *l_601 = &g_25;
 
160
            int32_t *l_602 = &g_255;
 
161
            int32_t l_603 = 0x83DE74D8L;
 
162
            int32_t *l_604[5][7] = {{(void*)0,(void*)0,(void*)0,(void*)0,(void*)0,(void*)0,(void*)0},{&l_175[0][2],&g_61[3][1][0],&l_509[3][2],&g_61[3][1][0],&l_175[0][2],(void*)0,&l_175[0][2]},{(void*)0,(void*)0,(void*)0,(void*)0,(void*)0,&g_255,(void*)0},{&l_509[3][2],&g_255,&l_509[3][2],(void*)0,&l_509[8][3],(void*)0,&l_509[3][2]},{(void*)0,(void*)0,(void*)0,(void*)0,(void*)0,(void*)0,(void*)0}};
 
163
            int i, j;
 
164
            ++l_605;
 
165
        }
 
166
    }
 
167
    else
 
168
    { /* block id: 410 */
 
169
        int32_t *l_608[10] = {&l_175[0][2],&l_175[0][2],&l_175[0][2],&l_175[0][2],&l_175[0][2],&l_175[0][2],&l_175[0][2],&l_175[0][2],&l_175[0][2],&l_175[0][2]};
 
170
        uint8_t *l_612 = (void*)0;
 
171
        uint8_t **l_613 = (void*)0;
 
172
        uint8_t **l_614 = &l_612;
 
173
        uint8_t **l_615[10] = {&l_576[5],&l_576[2],&l_576[5],&l_576[2],&l_576[5],&l_576[2],&l_576[5],&l_576[2],&l_576[5],&l_576[2]};
 
174
        uint32_t l_617 = 0xA732A71CL;
 
175
        const int8_t *l_618 = &g_70;
 
176
        int32_t *l_622 = (void*)0;
 
177
        union U1 l_641 = {0};
 
178
        int i;
 
179
        if (func_50(func_56(&g_70, l_608[8]), (safe_lshift_func_uint8_t_u_s(l_13[7], 7)), (((safe_unary_minus_func_int8_t_s(((*g_69) = ((*g_248) ^ (l_175[0][3] > ((g_616 = ((*l_614) = l_612)) != (l_576[4] = &g_23))))))) | l_64.f1) && g_165[4]), &l_175[0][0], (**g_396)))
 
180
        { /* block id: 415 */
 
181
            return l_528;
 
182
        }
 
183
        else
 
184
        { /* block id: 417 */
 
185
            int8_t l_619 = 0xF5L;
 
186
            const int32_t *l_627[7][2] = {{&g_42.f0,&g_42.f0},{&g_42.f0,&g_42.f0},{&g_42.f0,&g_42.f0},{&l_64.f0,&l_64.f0},{&l_64.f0,&g_42.f0},{&g_42.f0,&g_42.f0},{&g_42.f0,&g_42.f0}};
 
187
            const int32_t **l_626 = &l_627[3][0];
 
188
            int32_t l_628[6] = {0xF3CEC250L,0xF3CEC250L,0xF3CEC250L,0xF3CEC250L,0xF3CEC250L,0xF3CEC250L};
 
189
            int16_t l_636 = 0xA7CDL;
 
190
            uint8_t l_637 = 0x6EL;
 
191
            int i, j;
 
192
            for (g_387 = 7; (g_387 >= 0); g_387 -= 1)
 
193
            { /* block id: 420 */
 
194
                int8_t *l_620[4][4][9] = {{{&g_163.f0,&l_619,(void*)0,&g_163.f0,&g_163.f0,(void*)0,&l_619,&g_163.f0,&g_405[3][0].f0},{&g_70,&g_471,(void*)0,&g_70,&l_619,&g_70,(void*)0,&g_117,&g_471},{&g_405[3][0].f0,&l_619,&g_163.f0,&g_471,(void*)0,&g_471,&g_163.f0,&l_619,&g_405[3][0].f0},{&g_163.f0,&g_471,&l_619,&g_70,&g_70,(void*)0,&g_471,(void*)0,&g_405[3][0].f0}},{{&g_163.f0,(void*)0,(void*)0,&g_163.f0,(void*)0,(void*)0,(void*)0,&g_163.f0,&g_163.f0},{&g_70,&g_405[3][0].f0,&g_70,&g_471,(void*)0,(void*)0,(void*)0,&g_471,&g_163.f0},{&l_619,(void*)0,&g_471,&g_163.f0,&g_163.f0,&g_117,&g_163.f0,&g_163.f0,&g_471},{&g_405[3][0].f0,&g_405[3][0].f0,&g_405[3][0].f0,&g_163.f0,&l_619,&g_117,&g_471,&g_70,&g_70}},{{&g_471,&g_163.f0,&l_619,&g_163.f0,(void*)0,&l_619,&l_619,(void*)0,&g_163.f0},{&g_405[3][0].f0,&g_117,&g_405[3][0].f0,(void*)0,&g_471,(void*)0,&g_70,&g_70,&l_619},{&g_117,&l_619,&g_471,&g_163.f0,(void*)0,&g_405[3][0].f0,&g_163.f0,&g_405[3][0].f0,(void*)0},{(void*)0,&g_70,&g_70,(void*)0,&g_117,(void*)0,&g_70,&l_619,&g_70}},{{&g_163.f0,&g_117,&g_163.f0,&g_163.f0,&l_619,&g_163.f0,&g_117,&g_117,&g_163.f0},{&g_117,&g_163.f0,(void*)0,&g_163.f0,&g_117,&l_619,&g_405[3][0].f0,&g_471,&g_70},{&l_619,&g_163.f0,&g_405[3][0].f0,&g_163.f0,(void*)0,&g_117,(void*)0,&g_163.f0,(void*)0},{&g_70,&l_619,&l_619,&l_619,&l_619,&g_70,(void*)0,&g_117,&g_70}}};
 
195
                int32_t l_629 = 0x94DF55BDL;
 
196
                int32_t l_630 = 0x78F2A151L;
 
197
                int32_t l_631 = 0x108DD9F6L;
 
198
                int32_t l_632 = 1L;
 
199
                int32_t l_633 = 0x9920FA05L;
 
200
                int32_t l_634 = 8L;
 
201
                int32_t *l_650 = &g_255;
 
202
                int i, j, k;
 
203
                for (g_163.f0 = 0; (g_163.f0 <= 3); g_163.f0 += 1)
 
204
                { /* block id: 423 */
 
205
                    int32_t *l_621[7][7] = {{&l_175[0][2],&g_61[3][4][2],&l_509[1][5],&l_175[0][2],&l_13[7],&l_175[0][2],&l_509[1][5]},{&g_255,&g_255,&l_13[7],&l_509[1][5],&g_61[3][4][2],(void*)0,&g_255},{&g_255,&l_509[1][5],&l_509[1][5],&g_61[3][4][2],&g_255,&g_255,&g_61[3][4][2]},{&l_175[0][2],&l_13[7],&l_175[0][2],&l_509[1][5],&g_61[3][4][2],&l_175[0][2],&l_175[0][2]},{&g_61[3][4][2],&l_13[7],&l_509[1][5],&l_509[1][5],&l_13[7],&l_13[7],&l_13[7]},{(void*)0,&l_509[1][5],&l_509[1][5],(void*)0,&l_175[0][2],&l_175[0][2],&g_61[3][4][2]},{&g_255,&g_255,&l_509[1][5],&l_509[1][5],&g_61[3][4][2],&g_255,&g_255}};
 
206
                    const int32_t *l_624 = &g_78;
 
207
                    const int32_t **l_623[5];
 
208
                    int i, j;
 
209
                    for (i = 0; i < 5; i++)
 
210
                        l_623[i] = &l_624;
 
211
                    for (g_78 = 3; (g_78 >= 0); g_78 -= 1)
 
212
                    { /* block id: 426 */
 
213
                        int i, j, k;
 
214
                        g_61[(g_78 + 1)][(g_163.f0 + 1)][g_163.f0] ^= l_619;
 
215
                        (*g_95) = func_56(l_620[0][2][7], l_621[0][2]);
 
216
                        (*g_95) = (*g_95);
 
217
                        l_622 = l_621[0][2];
 
218
                    }
 
219
                    for (l_619 = 1; (l_619 <= 7); l_619 += 1)
 
220
                    { /* block id: 434 */
 
221
                        const int32_t ***l_625[2];
 
222
                        int i;
 
223
                        for (i = 0; i < 2; i++)
 
224
                            l_625[i] = &l_623[1];
 
225
                        l_626 = l_623[4];
 
226
                    }
 
227
                }
 
228
                --l_637;
 
229
                for (l_47 = 0; (l_47 <= 3); l_47 += 1)
 
230
                { /* block id: 441 */
 
231
                    int32_t l_640 = 0xEDD92DAAL;
 
232
                    int32_t *l_642 = (void*)0;
 
233
                    int8_t *l_649 = (void*)0;
 
234
                    (*g_588) |= (((g_165[2] = l_640) >= l_640) | ((((l_641 , (*g_170)) | (l_628[0] = (l_13[2] >= (func_50(l_642, (func_50(&l_628[2], (((g_643 == ((safe_rshift_func_uint8_t_u_s(l_628[2], 6)) , &g_644)) == 0x572EL) & 0L), l_634, l_608[7], (**g_396)) ^ 9UL), (*g_69), l_608[0], (*g_397)) || 0x10DDA243L)))) < l_13[7]) > l_13[g_387]));
 
235
                    for (l_636 = 0; (l_636 <= 3); l_636 += 1)
 
236
                    { /* block id: 447 */
 
237
                        int32_t *l_651 = &l_628[2];
 
238
                        l_650 = &l_628[2];
 
239
                        (*g_95) = l_651;
 
240
                        if ((**g_95))
 
241
                            break;
 
242
                    }
 
243
                    for (g_163.f0 = 5; (g_163.f0 >= 2); g_163.f0 -= 1)
 
244
                    { /* block id: 455 */
 
245
                        int i, j, k;
 
246
                        g_61[g_387][l_47][l_47] = (safe_unary_minus_func_int16_t_s(l_509[(l_47 + 4)][l_47]));
 
247
                        l_509[3][0] ^= (*l_650);
 
248
                        return (*g_588);
 
249
                    }
 
250
                    for (l_528 = 2; (l_528 <= 7); l_528 += 1)
 
251
                    { /* block id: 462 */
 
252
                        return (*g_404);
 
253
                    }
 
254
                }
 
255
            }
 
256
            for (l_637 = 0; (l_637 == 3); l_637++)
 
257
            { /* block id: 469 */
 
258
                uint32_t l_655[6];
 
259
                int i;
 
260
                for (i = 0; i < 6; i++)
 
261
                    l_655[i] = 0x4CE808BAL;
 
262
                (*g_95) = l_622;
 
263
                if (l_655[4])
 
264
                    continue;
 
265
            }
 
266
        }
 
267
    }
 
268
    for (g_218 = 3; (g_218 == 24); g_218++)
 
269
    { /* block id: 477 */
 
270
        for (l_635 = 24; (l_635 <= 1); l_635 = safe_sub_func_int32_t_s_s(l_635, 2))
 
271
        { /* block id: 480 */
 
272
            (*g_588) = ((&g_78 == &g_78) ^ 0x108FL);
 
273
        }
 
274
    }
 
275
    return (*g_588);
 
276
}
 
277
 
 
278
 
 
279
/* ------------------------------------------ */
 
280
/* 
 
281
 * reads : g_387 g_95 g_84 g_61 g_170 g_171 g_163.f1 g_25 g_396 g_397 g_42 g_42.f3 g_117 g_248 g_246 g_255 g_380 g_471 g_249 g_165 g_163 g_69 g_70 g_42.f1 g_218 g_404 g_505
 
282
 * writes: g_387 g_60 g_404 g_218 g_25 g_117 g_396 g_255 g_61 g_471 g_170 g_34
 
283
 */
 
284
static uint8_t  func_4(int8_t * p_5, uint16_t  p_6, int8_t * p_7)
 
285
{ /* block id: 299 */
 
286
    int32_t *l_430[6][9] = {{&g_61[3][1][1],&g_61[3][1][1],(void*)0,&g_61[1][1][0],&g_25,(void*)0,&g_25,&g_61[1][1][0],(void*)0},{&g_25,&g_25,&g_61[3][5][3],(void*)0,&g_61[5][0][1],&g_61[3][5][3],&g_61[5][0][1],(void*)0,&g_61[3][5][3]},{&g_61[3][1][1],&g_61[3][1][1],(void*)0,&g_61[1][1][0],&g_25,(void*)0,&g_25,&g_61[1][1][0],(void*)0},{&g_25,&g_25,&g_61[3][5][3],(void*)0,&g_61[5][0][1],&g_61[3][5][3],&g_61[5][0][1],(void*)0,&g_61[3][5][3]},{&g_61[3][1][1],&g_61[3][1][1],(void*)0,&g_61[3][1][1],&g_61[1][1][0],(void*)0,&g_61[1][1][0],&g_61[3][1][1],(void*)0},{&g_61[5][0][1],&g_61[5][0][1],&g_25,&g_25,(void*)0,&g_25,(void*)0,&g_25,&g_25}};
 
287
    uint32_t l_437[7][6] = {{0x73C76190L,0x73C76190L,1UL,0x73C76190L,0x73C76190L,1UL},{0x73C76190L,0x73C76190L,1UL,0x73C76190L,0x73C76190L,1UL},{0x73C76190L,0x73C76190L,1UL,0x73C76190L,0x73C76190L,1UL},{0x73C76190L,0x73C76190L,1UL,0x73C76190L,0x73C76190L,1UL},{0x73C76190L,0x73C76190L,1UL,0x73C76190L,0x73C76190L,1UL},{0x73C76190L,0x73C76190L,1UL,0x73C76190L,0x73C76190L,1UL},{0x73C76190L,0x73C76190L,1UL,0x73C76190L,0x73C76190L,1UL}};
 
288
    union U0 l_439 = {0x5BL};
 
289
    union U2 l_464 = {0x013712E9L};
 
290
    int8_t *l_468 = (void*)0;
 
291
    union U2 l_470 = {0xFCE83381L};
 
292
    const union U1 l_504 = {0};
 
293
    int i, j;
 
294
    for (g_387 = 10; (g_387 > (-15)); g_387--)
 
295
    { /* block id: 302 */
 
296
        union U0 l_438[9][10] = {{{0x4FL},{0x2CL},{0x2CL},{0x4FL},{-6L},{0x4FL},{0x2CL},{0x2CL},{0x4FL},{-6L}},{{0x4FL},{0x2CL},{0x2CL},{0x4FL},{-6L},{0x4FL},{0x2CL},{0x2CL},{0x4FL},{-6L}},{{0x4FL},{0x2CL},{0x2CL},{0x4FL},{-6L},{0x4FL},{0x2CL},{0x2CL},{0x4FL},{-6L}},{{0x4FL},{0x2CL},{0x2CL},{0x4FL},{-6L},{0x4FL},{0x2CL},{0x6AL},{0x2CL},{-5L}},{{0x2CL},{0x6AL},{0x6AL},{0x2CL},{-5L},{0x2CL},{0x6AL},{0x6AL},{0x2CL},{-5L}},{{0x2CL},{0x6AL},{0x6AL},{0x2CL},{-5L},{0x2CL},{0x6AL},{0x6AL},{0x2CL},{-5L}},{{0x2CL},{0x6AL},{0x6AL},{0x2CL},{-5L},{0x2CL},{0x6AL},{0x6AL},{0x2CL},{-5L}},{{0x2CL},{0x6AL},{0x6AL},{0x2CL},{-5L},{0x2CL},{0x6AL},{0x6AL},{0x2CL},{-5L}},{{0x2CL},{0x6AL},{0x6AL},{0x2CL},{-5L},{0x2CL},{0x6AL},{0x6AL},{0x2CL},{-5L}}};
 
297
        int8_t *l_444 = &l_438[8][2].f0;
 
298
        uint8_t *l_445 = (void*)0;
 
299
        uint8_t *l_446 = (void*)0;
 
300
        uint8_t *l_447 = (void*)0;
 
301
        int32_t *l_448 = &g_25;
 
302
        int i, j;
 
303
        (*l_448) = func_50(((*g_95) = l_430[0][6]), (safe_lshift_func_uint8_t_u_u((safe_mod_func_int32_t_s_s((safe_mul_func_int16_t_s_s((l_437[5][3] , ((g_218 = func_16(l_438[8][2], func_16(l_439, (g_84 , func_16(l_439, (safe_rshift_func_uint8_t_u_s(0x01L, (safe_rshift_func_int16_t_s_s(0xFC91L, 13)))), p_7, l_444)), p_7, p_7), p_7, l_444)) ^ (*g_170))), g_387)), g_25)), 3)), l_438[8][2].f1, l_448, (**g_396));
 
304
        (*l_448) &= 9L;
 
305
        if (p_6)
 
306
            break;
 
307
    }
 
308
    for (g_117 = (-26); (g_117 < 23); g_117++)
 
309
    { /* block id: 311 */
 
310
        int16_t l_469 = (-9L);
 
311
        uint32_t *l_486 = &l_470.f1;
 
312
        uint32_t **l_485[4] = {&l_486,&l_486,&l_486,&l_486};
 
313
        int8_t l_497 = 0L;
 
314
        int32_t l_501 = 1L;
 
315
        uint16_t l_508 = 0x4BC4L;
 
316
        int i;
 
317
        if (p_6)
 
318
        { /* block id: 312 */
 
319
            int32_t *l_451[8] = {&g_255,&g_255,&g_255,&g_255,&g_255,&g_255,&g_255,&g_255};
 
320
            int32_t *l_452 = (void*)0;
 
321
            const union U1 l_472 = {0};
 
322
            union U0 l_479 = {0xB8L};
 
323
            int i;
 
324
            for (l_439.f0 = 3; (l_439.f0 >= 0); l_439.f0 -= 1)
 
325
            { /* block id: 315 */
 
326
                union U2 ***l_453 = &g_396;
 
327
                int32_t l_465 = 0xAF964579L;
 
328
                uint16_t *l_482 = &g_165[0];
 
329
                l_452 = ((*g_95) = func_56(p_5, l_451[0]));
 
330
                (*l_453) = &g_397;
 
331
                for (g_387 = 5; (g_387 >= 0); g_387 -= 1)
 
332
                { /* block id: 321 */
 
333
                    union U0 l_454 = {8L};
 
334
                    int i, j, k;
 
335
                    if (g_61[l_439.f0][g_387][l_439.f0])
 
336
                    { /* block id: 322 */
 
337
                        int32_t *l_463 = &g_255;
 
338
                        uint16_t l_466[9] = {0xBF85L,0xBF85L,0x789FL,0xBF85L,0xBF85L,0x789FL,0xBF85L,0xBF85L,0x789FL};
 
339
                        uint16_t *l_467[1];
 
340
                        int i, j, k;
 
341
                        for (i = 0; i < 1; i++)
 
342
                            l_467[i] = &g_165[4];
 
343
                        g_61[(l_439.f0 + 3)][g_387][l_439.f0] = (func_16(l_454, (safe_rshift_func_uint16_t_u_u(((*l_463) ^= ((safe_sub_func_int16_t_s_s(((safe_sub_func_uint16_t_u_u(l_437[(l_439.f0 + 3)][(l_439.f0 + 2)], (l_466[1] = (func_16(l_454, (func_16(func_21(((*p_5) != (safe_sub_func_uint8_t_u_u((func_50(l_463, g_387, (*p_5), l_463, ((255UL == 0xC5L) , l_464)) || p_6), 1L)))), l_465, p_5, &g_70) == 0xC5F1L), p_5, p_5) ^ 0x5022C929L)))) != (-9L)), (*g_248))) ^ 0x01E9L)), g_380)), l_468, l_468) >= l_469);
 
344
                    }
 
345
                    else
 
346
                    { /* block id: 326 */
 
347
                        (*l_452) ^= (-1L);
 
348
                    }
 
349
                    (*l_452) = ((g_84 , (((l_470 , (*g_170)) == g_471) ^ ((((func_50(&g_61[l_439.f0][g_387][l_439.f0], p_6, (g_61[l_439.f0][g_387][l_439.f0] = 0L), (l_472 , l_452), l_464) != 0UL) | 0x92L) | (*g_249)) > (*g_170)))) != (*g_249));
 
350
                }
 
351
                for (g_471 = 0; (g_471 <= 3); g_471 += 1)
 
352
                { /* block id: 334 */
 
353
                    uint16_t *l_480 = (void*)0;
 
354
                    int32_t l_484 = 0x0E90AE7DL;
 
355
                    for (g_387 = 0; (g_387 <= 6); g_387 += 1)
 
356
                    { /* block id: 337 */
 
357
                        uint16_t **l_481 = &l_480;
 
358
                        union U2 l_483 = {4L};
 
359
                        int i, j, k;
 
360
                        (*g_95) = func_37((safe_rshift_func_int8_t_s_u(0xCBL, g_61[(l_439.f0 + 3)][(l_439.f0 + 1)][g_471])), (***l_453), &g_61[(l_439.f0 + 3)][(l_439.f0 + 1)][g_471], ((l_439 , ((safe_mod_func_uint32_t_u_u(((((*l_481) = (((safe_sub_func_int32_t_s_s(g_165[g_471], p_6)) , l_479) , l_480)) == l_482) & (*g_170)), p_6)) , l_483)) , l_484));
 
361
                    }
 
362
                    for (l_465 = 3; (l_465 >= 0); l_465 -= 1)
 
363
                    { /* block id: 343 */
 
364
                        int i, j, k;
 
365
                        return g_61[(g_471 + 1)][(l_439.f0 + 2)][l_465];
 
366
                    }
 
367
                }
 
368
            }
 
369
            return (*g_170);
 
370
        }
 
371
        else
 
372
        { /* block id: 349 */
 
373
            uint32_t ***l_487 = (void*)0;
 
374
            uint32_t ***l_488 = &l_485[3];
 
375
            int32_t l_495[9][9][2] = {{{0L,0x40CE7CD7L},{1L,0x40CE7CD7L},{0L,0x50ED6328L},{0xADA7BC83L,0x40CE7CD7L},{0L,0x40CE7CD7L},{0xADA7BC83L,0x50ED6328L},{0L,0x40CE7CD7L},{1L,0x40CE7CD7L},{0L,0x50ED6328L}},{{0xADA7BC83L,0x40CE7CD7L},{0L,0x40CE7CD7L},{0xADA7BC83L,0x50ED6328L},{0L,0x40CE7CD7L},{1L,0x40CE7CD7L},{0L,0x50ED6328L},{0xADA7BC83L,0x40CE7CD7L},{0L,0x40CE7CD7L},{0xADA7BC83L,0x50ED6328L}},{{0L,0x40CE7CD7L},{1L,0x40CE7CD7L},{0L,0x50ED6328L},{0xADA7BC83L,0x40CE7CD7L},{0L,0x40CE7CD7L},{0xADA7BC83L,0x50ED6328L},{0L,0x40CE7CD7L},{1L,0x40CE7CD7L},{0L,0x50ED6328L}},{{0xADA7BC83L,0x40CE7CD7L},{0L,0x40CE7CD7L},{0xADA7BC83L,0x50ED6328L},{0L,0x40CE7CD7L},{1L,0x40CE7CD7L},{0L,0x50ED6328L},{0xADA7BC83L,0x40CE7CD7L},{0L,0x40CE7CD7L},{0xADA7BC83L,0x50ED6328L}},{{0L,0x40CE7CD7L},{1L,0x40CE7CD7L},{0L,0x50ED6328L},{0xADA7BC83L,0x40CE7CD7L},{0L,0x40CE7CD7L},{0xADA7BC83L,0x50ED6328L},{0L,0x40CE7CD7L},{1L,0x40CE7CD7L},{0L,0x50ED6328L}},{{0xADA7BC83L,0x40CE7CD7L},{0L,0x40CE7CD7L},{0xADA7BC83L,0x50ED6328L},{0L,0x40CE7CD7L},{1L,0x40CE7CD7L},{0L,0x50ED6328L},{0xADA7BC83L,0x40CE7CD7L},{0L,0x40CE7CD7L},{0xADA7BC83L,0x50ED6328L}},{{0L,0x40CE7CD7L},{1L,0x40CE7CD7L},{0L,0x50ED6328L},{0xADA7BC83L,0x40CE7CD7L},{0L,0x50ED6328L},{1L,0xD0A14D25L},{0L,0x50ED6328L},{(-9L),0x50ED6328L},{0L,0xD0A14D25L}},{{1L,0x50ED6328L},{0x1F85E5ACL,0x50ED6328L},{1L,0xD0A14D25L},{0L,0x50ED6328L},{(-9L),0x50ED6328L},{0L,0xD0A14D25L},{1L,0x50ED6328L},{0x1F85E5ACL,0x50ED6328L},{1L,0xD0A14D25L}},{{0L,0x50ED6328L},{(-9L),0x50ED6328L},{0L,0xD0A14D25L},{1L,0x50ED6328L},{0x1F85E5ACL,0x50ED6328L},{1L,0xD0A14D25L},{0L,0x50ED6328L},{(-9L),0x50ED6328L},{0L,0xD0A14D25L}}};
 
376
            uint16_t *l_496 = &g_34;
 
377
            int i, j, k;
 
378
            (*l_488) = l_485[1];
 
379
            (*g_95) = func_37((p_6 ^ 0xE2F4L), (**g_396), l_430[0][6], ((safe_sub_func_uint32_t_u_u((safe_lshift_func_uint16_t_u_u(((*l_496) = (safe_mul_func_uint8_t_u_u(func_16(l_439, l_495[1][7][1], p_5, &g_70), 0UL))), g_25)), g_42.f1)) <= l_469));
 
380
            for (g_218 = 0; (g_218 <= 5); g_218 += 1)
 
381
            { /* block id: 355 */
 
382
                uint32_t l_498[10][6][2] = {{{0UL,0x4710D315L},{0xC89510DFL,18446744073709551614UL},{18446744073709551615UL,0x32FB2497L},{18446744073709551615UL,0UL},{1UL,0xA19F4CA6L},{18446744073709551614UL,1UL}},{{0UL,1UL},{0x243448FFL,0x243448FFL},{18446744073709551615UL,18446744073709551614UL},{0x0D81DB8EL,0x78E1239EL},{1UL,0x4710D315L},{1UL,1UL}},{{0x32FB2497L,18446744073709551615UL},{0x32FB2497L,1UL},{1UL,0x4710D315L},{1UL,0x78E1239EL},{0x0D81DB8EL,18446744073709551614UL},{18446744073709551615UL,0x243448FFL}},{{0x243448FFL,1UL},{0UL,1UL},{18446744073709551614UL,0xA19F4CA6L},{1UL,0UL},{18446744073709551615UL,0x32FB2497L},{18446744073709551615UL,18446744073709551614UL}},{{0xC89510DFL,0x4710D315L},{0xFF073B46L,18446744073709551614UL},{0UL,1UL},{18446744073709551615UL,0UL},{0xF99EA8BEL,0xFF073B46L},{0x78E1239EL,18446744073709551615UL}},{{1UL,18446744073709551615UL},{0x78E1239EL,0xFF073B46L},{0xF99EA8BEL,0UL},{18446744073709551615UL,1UL},{0UL,18446744073709551614UL},{0xFF073B46L,0x53B970BDL}},{{0x78E1239EL,18446744073709551610UL},{0xC89510DFL,18446744073709551615UL},{0UL,0xFF073B46L},{0x76FB5125L,18446744073709551614UL},{18446744073709551610UL,1UL},{0UL,18446744073709551612UL}},{{0xF99EA8BEL,0xF99EA8BEL},{0UL,18446744073709551610UL},{0xA19F4CA6L,18446744073709551615UL},{18446744073709551612UL,0x53B970BDL},{0x76FB5125L,18446744073709551612UL},{18446744073709551615UL,0xC89510DFL}},{{18446744073709551615UL,18446744073709551612UL},{0x76FB5125L,0x53B970BDL},{18446744073709551612UL,18446744073709551615UL},{0xA19F4CA6L,18446744073709551610UL},{0UL,0xF99EA8BEL},{0xF99EA8BEL,18446744073709551612UL}},{{0UL,1UL},{18446744073709551610UL,18446744073709551614UL},{0x76FB5125L,0xFF073B46L},{0UL,18446744073709551615UL},{0xC89510DFL,18446744073709551610UL},{0x78E1239EL,0x53B970BDL}}};
 
383
                int i, j, k;
 
384
                if ((*g_404))
 
385
                    break;
 
386
                l_498[0][0][0]--;
 
387
                l_501 = l_498[0][0][0];
 
388
            }
 
389
        }
 
390
        l_501 &= (func_21((((~p_6) , (safe_div_func_int32_t_s_s(p_6, ((l_504 , 0L) | ((void*)0 == g_505))))) , (safe_rshift_func_int8_t_s_u(0x75L, l_508)))) , p_6);
 
391
    }
 
392
    return (*g_170);
 
393
}
 
394
 
 
395
 
 
396
/* ------------------------------------------ */
 
397
/* 
 
398
 * reads : g_95 g_60 g_234 g_249 g_246 g_61 g_69 g_70 g_42.f3 g_42.f1 g_218 g_170 g_171 g_163.f1 g_34 g_163.f0 g_42 g_84 g_248 g_255
 
399
 * writes: g_60 g_70 g_78 g_34 g_163.f0 g_61 g_218 g_165 g_234 g_117 g_42.f1 g_255
 
400
 */
 
401
static int8_t * func_8(uint8_t  p_9, const uint32_t  p_10, const int8_t * p_11, union U0  p_12)
 
402
{ /* block id: 293 */
 
403
    int8_t l_406[2][8] = {{0x4CL,0x4CL,(-6L),0x4CL,0x4CL,(-6L),0x4CL,0x4CL},{0x31L,0x4CL,0x31L,0x31L,0x4CL,0x31L,0x31L,0x4CL}};
 
404
    int32_t *l_407 = &g_61[1][3][0];
 
405
    int32_t *l_408 = (void*)0;
 
406
    int32_t *l_409 = &g_61[3][1][1];
 
407
    int32_t *l_410 = &g_25;
 
408
    int32_t *l_411 = (void*)0;
 
409
    int32_t *l_412 = &g_25;
 
410
    int32_t *l_413 = &g_61[3][1][1];
 
411
    int32_t *l_414 = &g_255;
 
412
    int32_t *l_415 = &g_61[3][1][1];
 
413
    int32_t *l_416 = (void*)0;
 
414
    int32_t l_417[3][4][5];
 
415
    int32_t *l_418[6][10][1] = {{{(void*)0},{(void*)0},{(void*)0},{&g_61[1][4][2]},{(void*)0},{(void*)0},{(void*)0},{(void*)0},{&g_61[1][4][2]},{(void*)0}},{{(void*)0},{(void*)0},{(void*)0},{(void*)0},{&g_25},{&g_25},{(void*)0},{(void*)0},{(void*)0},{(void*)0}},{{(void*)0},{(void*)0},{(void*)0},{&g_25},{&g_25},{(void*)0},{(void*)0},{(void*)0},{(void*)0},{(void*)0}},{{(void*)0},{(void*)0},{&g_25},{&g_25},{(void*)0},{(void*)0},{(void*)0},{(void*)0},{(void*)0},{(void*)0}},{{(void*)0},{&g_25},{&g_25},{(void*)0},{(void*)0},{(void*)0},{(void*)0},{(void*)0},{(void*)0},{(void*)0}},{{&g_25},{&g_25},{(void*)0},{(void*)0},{(void*)0},{(void*)0},{(void*)0},{(void*)0},{(void*)0},{&g_25}}};
 
416
    int16_t l_419 = 0x46F3L;
 
417
    int32_t l_420 = 0xEFAEA218L;
 
418
    int32_t l_421 = 0xF0C3CF87L;
 
419
    int32_t l_422 = 0xF5496424L;
 
420
    int8_t l_423 = (-7L);
 
421
    uint32_t l_424 = 0xBE103C84L;
 
422
    union U2 l_427 = {0x21442813L};
 
423
    int i, j, k;
 
424
    for (i = 0; i < 3; i++)
 
425
    {
 
426
        for (j = 0; j < 4; j++)
 
427
        {
 
428
            for (k = 0; k < 5; k++)
 
429
                l_417[i][j][k] = 0xF85FD576L;
 
430
        }
 
431
    }
 
432
    l_406[1][3] ^= p_9;
 
433
    (*g_95) = l_407;
 
434
    l_424--;
 
435
    (*l_414) &= func_27(p_9, (*g_95), l_427, (*g_95), ((&g_387 == (l_427 , &g_380)) != ((((p_12.f1 <= (0x201B5C96L > p_9)) >= g_234) ^ (*g_249)) , 0x9438L)));
 
436
    return &g_117;
 
437
}
 
438
 
 
439
 
 
440
/* ------------------------------------------ */
 
441
/* 
 
442
 * reads : g_61
 
443
 * writes: g_404
 
444
 */
 
445
static const int8_t  func_16(union U0  p_17, uint8_t  p_18, int8_t * p_19, int8_t * p_20)
 
446
{ /* block id: 197 */
 
447
    uint16_t l_302[6][3] = {{1UL,1UL,1UL},{0UL,0UL,0UL},{1UL,1UL,1UL},{0UL,0UL,0UL},{1UL,1UL,1UL},{0UL,0UL,0UL}};
 
448
    int32_t *l_342[5][7][4] = {{{&g_255,&g_61[3][1][1],&g_61[2][3][3],&g_25},{&g_61[3][1][1],&g_25,&g_255,&g_255},{&g_255,&g_255,&g_255,&g_255},{&g_255,&g_255,&g_255,&g_255},{&g_255,&g_25,&g_61[3][1][1],&g_25},{&g_61[2][3][3],&g_61[3][1][1],&g_255,&g_61[3][1][1]},{&g_61[2][3][3],&g_255,&g_61[3][1][1],(void*)0}},{{&g_61[5][4][3],&g_255,&g_61[4][5][1],&g_25},{&g_255,(void*)0,&g_255,&g_25},{&g_61[4][5][1],&g_255,&g_61[5][4][3],(void*)0},{&g_61[2][3][3],&g_25,&g_255,&g_255},{&g_25,(void*)0,&g_255,&g_61[3][1][1]},{&g_61[2][3][3],&g_25,&g_61[5][4][3],&g_25},{&g_61[4][5][1],&g_25,&g_255,&g_25}},{{&g_255,&g_25,&g_61[4][5][1],&g_25},{&g_61[5][4][3],&g_25,&g_61[2][3][3],&g_61[3][1][1]},{&g_255,(void*)0,&g_25,&g_255},{&g_255,&g_25,&g_61[2][3][3],(void*)0},{&g_61[5][4][3],&g_255,&g_61[4][5][1],&g_25},{&g_255,(void*)0,&g_255,&g_25},{&g_61[4][5][1],&g_255,&g_61[5][4][3],(void*)0}},{{&g_61[2][3][3],&g_25,&g_255,&g_255},{&g_25,(void*)0,&g_255,&g_61[3][1][1]},{&g_61[2][3][3],&g_25,&g_61[5][4][3],&g_25},{&g_61[4][5][1],&g_25,&g_255,&g_25},{&g_255,&g_25,&g_61[4][5][1],&g_25},{&g_61[5][4][3],&g_25,&g_61[2][3][3],&g_61[3][1][1]},{&g_255,(void*)0,&g_25,&g_255}},{{&g_255,&g_25,&g_61[2][3][3],(void*)0},{&g_61[5][4][3],&g_255,&g_61[4][5][1],&g_25},{&g_255,(void*)0,&g_61[4][5][1],&g_255},{&g_61[3][1][1],&g_61[3][1][1],&g_25,&g_25},{&g_255,&g_61[3][1][1],&g_255,&g_61[3][1][1]},{&g_61[5][1][3],&g_25,&g_255,&g_255},{&g_255,(void*)0,&g_25,&g_61[3][1][1]}}};
 
449
    const union U2 *l_352 = &g_42;
 
450
    uint16_t *l_377 = &g_165[1];
 
451
    uint16_t **l_376[4][4] = {{&l_377,(void*)0,&l_377,(void*)0},{&l_377,(void*)0,&l_377,(void*)0},{&l_377,(void*)0,&l_377,(void*)0},{&l_377,(void*)0,&l_377,(void*)0}};
 
452
    uint32_t l_393 = 4294967290UL;
 
453
    const uint8_t *l_398 = &g_42.f2;
 
454
    int8_t **l_401 = &g_69;
 
455
    int8_t ***l_402 = &l_401;
 
456
    const int32_t *l_403 = &g_61[3][1][1];
 
457
    int i, j, k;
 
458
    for (p_18 = 25; (p_18 < 17); p_18 = safe_sub_func_uint32_t_u_u(p_18, 5))
 
459
    { /* block id: 200 */
 
460
        int32_t l_308 = 0xDC603431L;
 
461
        int32_t l_309 = 0x1C33B4EEL;
 
462
        union U1 *l_336 = &g_84;
 
463
        int32_t l_388 = 4L;
 
464
        uint8_t * const l_399 = &g_42.f2;
 
465
        int8_t **l_400 = &g_69;
 
466
    }
 
467
    (*l_402) = l_401;
 
468
    g_404 = (p_17.f1 , l_403);
 
469
    return (*l_403);
 
470
}
 
471
 
 
472
 
 
473
/* ------------------------------------------ */
 
474
/* 
 
475
 * reads :
 
476
 * writes: g_25
 
477
 */
 
478
static union U0  func_21(uint32_t  p_22)
 
479
{ /* block id: 1 */
 
480
    int32_t *l_24 = &g_25;
 
481
    union U0 l_26 = {-3L};
 
482
    (*l_24) = p_22;
 
483
    return l_26;
 
484
}
 
485
 
 
486
 
 
487
/* ------------------------------------------ */
 
488
/* 
 
489
 * reads : g_61 g_69 g_70 g_42.f3 g_42.f1 g_218 g_170 g_171 g_163.f1 g_95 g_34 g_163.f0 g_42 g_84 g_248 g_246 g_234 g_249 g_78 g_117
 
490
 * writes: g_70 g_78 g_34 g_163.f0 g_61 g_60 g_218 g_165 g_234 g_117 g_42.f1
 
491
 */
 
492
static int8_t  func_27(uint16_t  p_28, int32_t * p_29, union U2  p_30, int32_t * const  p_31, int32_t  p_32)
 
493
{ /* block id: 106 */
 
494
    union U1 *l_177 = &g_84;
 
495
    union U1 **l_176 = &l_177;
 
496
    int32_t *l_178 = &g_61[3][1][1];
 
497
    int8_t *l_181[8] = {&g_163.f0,&g_163.f0,&g_163.f0,&g_163.f0,&g_163.f0,&g_163.f0,&g_163.f0,&g_163.f0};
 
498
    int32_t *l_182 = &g_61[3][1][1];
 
499
    union U2 l_252 = {8L};
 
500
    int32_t l_275 = 0x343AA78CL;
 
501
    int32_t l_277 = 0xE7E876F0L;
 
502
    int32_t l_289 = 0x3867B030L;
 
503
    int32_t l_290 = 0x04B24578L;
 
504
    int32_t l_291 = (-6L);
 
505
    int32_t l_292 = 0xE153FDD8L;
 
506
    int i;
 
507
lbl_256:
 
508
    if (((+0x7E10L) ^ ((l_176 != (((*g_69) &= (*l_182)) , &l_177)) || (*l_178))))
 
509
    { /* block id: 108 */
 
510
        uint32_t l_193 = 18446744073709551606UL;
 
511
        int32_t l_194 = 3L;
 
512
        for (g_78 = 0; (g_78 <= (-16)); g_78 = safe_sub_func_int32_t_s_s(g_78, 2))
 
513
        { /* block id: 111 */
 
514
            int8_t l_192 = 0L;
 
515
            for (g_34 = 0; (g_34 <= 7); g_34 += 1)
 
516
            { /* block id: 114 */
 
517
                return (*l_178);
 
518
            }
 
519
            for (p_32 = 25; (p_32 == (-30)); p_32 = safe_sub_func_int32_t_s_s(p_32, 2))
 
520
            { /* block id: 119 */
 
521
                for (g_163.f0 = 0; (g_163.f0 != (-23)); g_163.f0 = safe_sub_func_int16_t_s_s(g_163.f0, 4))
 
522
                { /* block id: 122 */
 
523
                    int8_t l_189 = (-3L);
 
524
                    for (g_34 = 0; (g_34 <= 3); g_34 += 1)
 
525
                    { /* block id: 125 */
 
526
                        (*l_176) = &g_84;
 
527
                    }
 
528
                    if (l_189)
 
529
                        break;
 
530
                }
 
531
                if ((*l_178))
 
532
                    break;
 
533
            }
 
534
            (*l_178) = (*p_31);
 
535
            for (g_70 = 0; (g_70 < 3); ++g_70)
 
536
            { /* block id: 135 */
 
537
                l_192 = 0x42813DB6L;
 
538
            }
 
539
        }
 
540
        for (p_32 = 7; (p_32 >= 0); p_32 -= 1)
 
541
        { /* block id: 141 */
 
542
            return p_30.f0;
 
543
        }
 
544
        l_194 = (~l_193);
 
545
        return l_194;
 
546
    }
 
547
    else
 
548
    { /* block id: 146 */
 
549
        int8_t l_197[10] = {1L,0x3CL,1L,(-1L),(-1L),1L,0x3CL,1L,(-1L),(-1L)};
 
550
        int32_t *l_198 = &g_61[3][1][1];
 
551
        union U0 l_199[1] = {{0xDFL}};
 
552
        int32_t *l_200 = (void*)0;
 
553
        union U2 l_201[10] = {{0x8373BB44L},{0x8373BB44L},{0x8373BB44L},{0x8373BB44L},{0x8373BB44L},{0x8373BB44L},{0x8373BB44L},{0x8373BB44L},{0x8373BB44L},{0x8373BB44L}};
 
554
        uint16_t *l_224 = &g_34;
 
555
        uint8_t *l_232 = (void*)0;
 
556
        uint8_t ** const l_231 = &l_232;
 
557
        union U1 l_240 = {0};
 
558
        int i;
 
559
        if (((*l_178) = (safe_mul_func_uint16_t_u_u(((l_197[9] && func_50(l_198, (*l_182), (l_199[0] , p_30.f2), l_200, l_201[2])) >= (safe_mul_func_int8_t_s_s((*l_178), 0x2EL))), (*l_198)))))
 
560
        { /* block id: 148 */
 
561
            return (*l_198);
 
562
        }
 
563
        else
 
564
        { /* block id: 150 */
 
565
            uint8_t l_204 = 0xA3L;
 
566
            uint32_t *l_217[3];
 
567
            union U2 l_223 = {0x3A80E33CL};
 
568
            uint16_t **l_225 = &l_224;
 
569
            int i;
 
570
            for (i = 0; i < 3; i++)
 
571
                l_217[i] = &l_201[2].f1;
 
572
lbl_226:
 
573
            l_204--;
 
574
            if (g_42.f3)
 
575
                goto lbl_256;
 
576
            if (((*l_178) = (safe_sub_func_uint8_t_u_u((safe_add_func_uint16_t_u_u(g_42.f1, (g_165[6] = ((*l_198) >= ((safe_add_func_int32_t_s_s(0xBBEC7243L, (safe_lshift_func_int8_t_s_u(((((safe_mul_func_uint16_t_u_u(1UL, (*l_198))) < (++g_218)) && ((*g_170) ^ ((*g_69) = (safe_add_func_uint8_t_u_u(0UL, (l_223 , (((*l_225) = l_224) == &g_34))))))) == 0UL), (*g_170))))) , 0xACD3L))))), (*l_198)))))
 
577
            { /* block id: 157 */
 
578
                return (*l_182);
 
579
            }
 
580
            else
 
581
            { /* block id: 159 */
 
582
                int16_t *l_233 = &g_234;
 
583
                int32_t l_235 = (-9L);
 
584
                if (g_218)
 
585
                    goto lbl_226;
 
586
                (*l_198) = (func_50(((*g_95) = l_217[0]), g_61[0][4][3], ((((safe_add_func_uint32_t_u_u(g_42.f3, (p_30 , (((*l_224) ^= (*l_182)) ^ g_163.f0)))) , (((*l_198) | ((((*l_233) = ((safe_add_func_uint16_t_u_u((((l_231 == &g_170) && 1L) != p_28), 0x6AFEL)) , p_30.f3)) , (*g_69)) > (*l_178))) ^ 0xE3L)) == (*g_69)) > l_235), l_178, g_42) , 0x23B8671DL);
 
587
            }
 
588
        }
 
589
        for (g_117 = (-4); (g_117 <= 25); ++g_117)
 
590
        { /* block id: 169 */
 
591
            int16_t *l_245 = &g_246;
 
592
            int16_t **l_247[2];
 
593
            int32_t *l_250 = &g_61[3][1][1];
 
594
            int32_t l_253[6] = {0x4B38AC99L,0x4B38AC99L,0x12668D6FL,0x4B38AC99L,0x4B38AC99L,0x12668D6FL};
 
595
            int32_t *l_254 = &g_255;
 
596
            int i;
 
597
            for (i = 0; i < 2; i++)
 
598
                l_247[i] = &l_245;
 
599
        }
 
600
    }
 
601
    for (p_32 = 0; (p_32 > (-13)); p_32 = safe_sub_func_int32_t_s_s(p_32, 5))
 
602
    { /* block id: 181 */
 
603
        uint8_t l_264 = 0x45L;
 
604
        int32_t l_272 = (-8L);
 
605
        int32_t l_287[1][4] = {{0L,0L,0L,0L}};
 
606
        int16_t l_288 = (-1L);
 
607
        uint32_t l_293 = 0xA6770327L;
 
608
        int i, j;
 
609
        for (p_28 = 1; (p_28 <= 7); p_28 += 1)
 
610
        { /* block id: 184 */
 
611
            const union U1 *l_263[9] = {&g_84,&g_84,&g_84,&g_84,&g_84,&g_84,&g_84,&g_84,&g_84};
 
612
            int32_t l_265 = 0x3B5E6BF7L;
 
613
            uint32_t *l_268 = &l_252.f1;
 
614
            int16_t *l_271 = &g_234;
 
615
            int32_t l_273 = 0x7167734CL;
 
616
            int32_t *l_274 = (void*)0;
 
617
            int32_t *l_276 = &g_255;
 
618
            int32_t *l_278 = &l_273;
 
619
            int32_t *l_279 = &g_255;
 
620
            int32_t *l_280 = (void*)0;
 
621
            int32_t *l_281 = &g_61[4][3][1];
 
622
            int32_t *l_282 = &l_275;
 
623
            int32_t *l_283 = &l_265;
 
624
            int32_t *l_284 = &l_275;
 
625
            int32_t *l_285 = &l_277;
 
626
            int32_t *l_286[9][2] = {{&l_275,&g_255},{&g_61[3][1][1],&g_61[3][1][1]},{&g_255,&l_275},{&g_61[4][1][1],&l_275},{&g_255,&g_61[3][1][1]},{&g_61[3][1][1],&g_255},{&l_275,&g_255},{&l_265,&l_275},{&g_255,&g_255}};
 
627
            int i, j;
 
628
            l_273 |= ((p_32 ^ (p_32 != (safe_lshift_func_uint16_t_u_u(((safe_rshift_func_uint16_t_u_s((((void*)0 != l_263[4]) != ((*l_177) , (l_264 = ((g_42.f1 = p_28) | (*p_31))))), 14)) | l_265), ((safe_add_func_uint16_t_u_u(((++(*l_268)) , (((*l_271) ^= (*g_248)) <= l_272)), (*g_249))) || l_272))))) || 0x9B2CL);
 
629
            if ((*l_182))
 
630
                continue;
 
631
            l_293++;
 
632
            (*l_182) |= l_272;
 
633
        }
 
634
    }
 
635
    return (*l_182);
 
636
}
 
637
 
 
638
 
 
639
/* ------------------------------------------ */
 
640
/* 
 
641
 * reads : g_117 g_163 g_61 g_69 g_70 g_42 g_42.f3
 
642
 * writes: g_170 g_61 g_60
 
643
 */
 
644
static int32_t * func_37(const uint16_t  p_38, union U2  p_39, int32_t * p_40, int32_t  p_41)
 
645
{ /* block id: 101 */
 
646
    int32_t ***l_159 = &g_95;
 
647
    int32_t l_160 = 0x1B0D62F1L;
 
648
    uint16_t *l_164 = &g_165[4];
 
649
    const uint8_t *l_168 = &g_163.f1;
 
650
    const uint8_t **l_169[5];
 
651
    const uint8_t l_172[4] = {0x82L,0x82L,0x82L,0x82L};
 
652
    int32_t *l_173 = &g_61[3][1][1];
 
653
    uint32_t l_174 = 18446744073709551614UL;
 
654
    int i;
 
655
    for (i = 0; i < 5; i++)
 
656
        l_169[i] = &l_168;
 
657
    (*l_173) = ((safe_div_func_uint8_t_u_u(p_39.f3, (safe_lshift_func_int16_t_s_u(g_117, ((((void*)0 != l_159) <= l_160) == (safe_lshift_func_int16_t_s_u((((g_163 , l_164) == &p_38) && (safe_lshift_func_uint16_t_u_s(((g_170 = l_168) != (void*)0), 0))), 6))))))) >= l_172[3]);
 
658
    (*l_173) = ((*l_173) & ((func_50(p_40, ((*g_69) , l_174), (*g_69), &l_160, g_42) != (g_61[7][0][3] , p_39.f2)) <= 0xEEL));
 
659
    return p_40;
 
660
}
 
661
 
 
662
 
 
663
/* ------------------------------------------ */
 
664
/* 
 
665
 * reads : g_69 g_70 g_61 g_60 g_42.f3 g_42.f2 g_78 g_94 g_23 g_117 g_95
 
666
 * writes: g_78 g_61 g_60 g_117
 
667
 */
 
668
static int32_t * func_43(uint8_t  p_44, int8_t  p_45, int8_t * p_46)
 
669
{ /* block id: 15 */
 
670
    int32_t *l_71 = &g_61[3][1][1];
 
671
    int32_t *l_72 = (void*)0;
 
672
    int32_t *l_73[9][8] = {{&g_61[3][1][1],(void*)0,(void*)0,&g_61[1][4][3],&g_61[0][3][1],&g_61[4][3][1],&g_61[6][4][2],&g_61[4][2][0]},{&g_61[2][4][2],(void*)0,(void*)0,&g_61[0][3][1],&g_61[0][3][1],(void*)0,(void*)0,&g_61[2][4][2]},{&g_61[3][1][1],&g_61[2][4][2],&g_61[3][1][2],&g_61[4][2][0],(void*)0,(void*)0,(void*)0,&g_61[1][2][0]},{(void*)0,(void*)0,(void*)0,(void*)0,&g_61[4][2][0],(void*)0,(void*)0,(void*)0},{&g_61[4][3][1],&g_61[2][4][2],&g_61[1][2][0],&g_61[3][0][0],&g_61[3][1][1],(void*)0,(void*)0,(void*)0},{(void*)0,(void*)0,&g_61[0][3][1],(void*)0,&g_61[4][3][1],&g_61[4][3][1],(void*)0,&g_61[0][3][1]},{(void*)0,(void*)0,&g_61[1][2][0],(void*)0,&g_61[1][4][3],&g_61[3][1][2],(void*)0,(void*)0},{&g_61[1][4][3],&g_61[3][1][2],(void*)0,(void*)0,(void*)0,&g_61[0][3][1],(void*)0,(void*)0},{&g_61[3][1][2],&g_61[1][2][0],&g_61[3][1][2],(void*)0,&g_61[6][4][2],(void*)0,(void*)0,&g_61[0][3][1]}};
 
673
    uint32_t l_74 = 0xFA7F9CD9L;
 
674
    int32_t *l_77 = &g_78;
 
675
    int32_t l_79 = 1L;
 
676
    union U1 *l_86[5];
 
677
    int32_t ***l_96 = &g_95;
 
678
    int8_t l_106 = 8L;
 
679
    int8_t l_119[6] = {9L,0L,9L,9L,0L,9L};
 
680
    union U2 l_120 = {-5L};
 
681
    int32_t *l_134 = &g_61[3][1][1];
 
682
    int i, j;
 
683
    for (i = 0; i < 5; i++)
 
684
        l_86[i] = &g_84;
 
685
lbl_87:
 
686
    l_74--;
 
687
    l_79 ^= (((*l_77) = ((*g_69) || ((*l_71) < 0x14A1L))) , (*g_60));
 
688
    if ((g_42.f3 <= (1UL & (0xF049L <= g_42.f2))))
 
689
    { /* block id: 19 */
 
690
        union U1 *l_83 = &g_84;
 
691
        int32_t l_90 = 0L;
 
692
        for (p_45 = 0; (p_45 < (-22)); p_45--)
 
693
        { /* block id: 22 */
 
694
            int32_t *l_88 = &g_61[3][1][1];
 
695
            for (l_79 = 6; (l_79 >= 0); l_79 -= 1)
 
696
            { /* block id: 25 */
 
697
                int i, j;
 
698
                l_73[(l_79 + 1)][l_79] = l_73[l_79][(l_79 + 1)];
 
699
                if (p_45)
 
700
                { /* block id: 27 */
 
701
                    const int16_t l_82 = (-10L);
 
702
                    for (g_78 = 7; (g_78 >= 0); g_78 -= 1)
 
703
                    { /* block id: 30 */
 
704
                        union U1 **l_85[4] = {(void*)0,(void*)0,(void*)0,(void*)0};
 
705
                        int i;
 
706
                        (*g_60) = l_82;
 
707
                        l_86[4] = ((p_45 <= g_70) , l_83);
 
708
                    }
 
709
                    if (g_42.f3)
 
710
                        goto lbl_87;
 
711
                    return l_88;
 
712
                }
 
713
                else
 
714
                { /* block id: 36 */
 
715
                    int32_t l_89 = 1L;
 
716
                    int i, j;
 
717
                    l_73[(l_79 + 1)][(l_79 + 1)] = (l_89 , l_73[l_79][(l_79 + 1)]);
 
718
                    if (p_44)
 
719
                        break;
 
720
                }
 
721
            }
 
722
            if (l_90)
 
723
                break;
 
724
            (*l_71) |= (safe_lshift_func_int8_t_s_s(l_90, 2));
 
725
        }
 
726
    }
 
727
    else
 
728
    { /* block id: 44 */
 
729
        int32_t l_93 = 0x63BE35A8L;
 
730
        int32_t l_98 = (-9L);
 
731
        int32_t l_99 = 0xE0221BC3L;
 
732
        int32_t l_100 = 0xE0F627EEL;
 
733
        int32_t l_103 = 7L;
 
734
        int32_t l_104 = 0xBAAC5CA8L;
 
735
        int32_t l_105 = 0xA126CF24L;
 
736
        union U2 l_115 = {4L};
 
737
        int32_t *l_128 = &l_93;
 
738
        int32_t *l_133 = &l_100;
 
739
        if ((((l_93 , g_94[0]) != l_96) <= 5L))
 
740
        { /* block id: 45 */
 
741
            int32_t l_97 = 0xA0849DA6L;
 
742
            int32_t l_101 = 1L;
 
743
            int32_t l_102[5] = {(-1L),(-1L),(-1L),(-1L),(-1L)};
 
744
            uint8_t l_107 = 8UL;
 
745
            int32_t *l_112 = &l_99;
 
746
            uint8_t *l_116[10][4][4] = {{{&l_107,&l_107,&g_23,&l_115.f2},{&g_42.f2,&g_23,(void*)0,&l_107},{&g_42.f2,(void*)0,&g_23,&g_42.f2},{&l_107,&l_115.f2,(void*)0,&l_115.f2}},{{(void*)0,&l_115.f2,(void*)0,&g_42.f2},{&l_107,(void*)0,(void*)0,&l_107},{&l_107,&g_23,(void*)0,&l_115.f2},{&l_107,&l_107,(void*)0,(void*)0}},{{(void*)0,(void*)0,(void*)0,(void*)0},{&l_107,&l_107,&g_23,&l_115.f2},{&g_42.f2,&g_23,(void*)0,&l_107},{&g_42.f2,(void*)0,&g_23,&g_42.f2}},{{&l_107,&l_115.f2,(void*)0,&l_115.f2},{(void*)0,&l_115.f2,(void*)0,&g_42.f2},{&l_107,(void*)0,(void*)0,&l_107},{&l_107,&g_23,(void*)0,&l_115.f2}},{{&l_107,&l_107,(void*)0,(void*)0},{(void*)0,(void*)0,(void*)0,(void*)0},{&l_107,&l_107,&g_23,&l_115.f2},{&g_42.f2,&g_23,(void*)0,&l_107}},{{&g_42.f2,(void*)0,&g_23,&g_42.f2},{&l_107,&l_115.f2,(void*)0,&l_115.f2},{(void*)0,&l_115.f2,(void*)0,&g_42.f2},{&l_107,(void*)0,(void*)0,&g_42.f2}},{{&l_115.f2,&l_107,(void*)0,&g_23},{&g_42.f2,&l_115.f2,&l_107,&l_107},{&l_107,(void*)0,&g_23,&l_107},{&l_115.f2,&l_115.f2,(void*)0,&g_23}},{{(void*)0,&l_107,&l_107,&g_42.f2},{(void*)0,(void*)0,(void*)0,(void*)0},{&l_115.f2,&g_23,&g_23,&g_23},{&l_107,&g_23,&l_107,(void*)0}},{{&g_42.f2,(void*)0,(void*)0,&g_42.f2},{&l_115.f2,&l_107,(void*)0,&g_23},{&g_42.f2,&l_115.f2,&l_107,&l_107},{&l_107,(void*)0,&g_23,&l_107}},{{&l_115.f2,&l_115.f2,(void*)0,&g_23},{(void*)0,&l_107,&l_107,&g_42.f2},{(void*)0,(void*)0,(void*)0,(void*)0},{&l_115.f2,&g_23,&g_23,&g_23}}};
 
747
            int8_t *l_118 = &l_106;
 
748
            union U2 l_121 = {0xF3683EEDL};
 
749
            uint32_t l_123 = 0x382ABCCDL;
 
750
            int32_t *l_131 = &l_104;
 
751
            int i, j, k;
 
752
            l_107--;
 
753
            l_101 &= ((safe_mod_func_int8_t_s_s((*p_46), (-1L))) == func_50(l_112, l_99, (safe_sub_func_int16_t_s_s(((0xD7L ^ (func_50(&l_99, g_42.f3, (((*l_118) = ((((g_117 |= (func_50(&l_102[2], (g_78 , g_23), (*g_69), &l_100, l_115) > g_42.f2)) , p_45) || 0x8DL) <= (-1L))) , l_119[2]), &l_101, l_120) , l_115.f2)) && 65535UL), 0x1D2AL)), &l_93, l_121));
 
754
            if (p_44)
 
755
            { /* block id: 50 */
 
756
                int8_t l_122 = 1L;
 
757
                union U2 *l_127[5] = {(void*)0,(void*)0,(void*)0,(void*)0,(void*)0};
 
758
                union U2 **l_126 = &l_127[3];
 
759
                int32_t *l_129 = &l_102[2];
 
760
                int32_t *l_130 = &l_104;
 
761
                int32_t *l_132 = &l_101;
 
762
                int i;
 
763
                l_123--;
 
764
                (*l_126) = &g_42;
 
765
                return l_134;
 
766
            }
 
767
            else
 
768
            { /* block id: 54 */
 
769
                uint16_t l_135 = 65535UL;
 
770
                int32_t l_138 = (-1L);
 
771
                if ((0L == 1L))
 
772
                { /* block id: 55 */
 
773
                    for (l_98 = 5; (l_98 >= 1); l_98 -= 1)
 
774
                    { /* block id: 58 */
 
775
                        int i;
 
776
                        if (l_119[l_98])
 
777
                            break;
 
778
                    }
 
779
                    ++l_135;
 
780
                }
 
781
                else
 
782
                { /* block id: 62 */
 
783
                    int8_t l_142[10][6][4] = {{{0x71L,(-2L),0xA5L,0x84L},{(-9L),(-2L),0x0DL,1L},{0x80L,0L,0x3EL,5L},{0x71L,1L,9L,1L},{0x97L,(-4L),0x4CL,0x5CL},{0x45L,0x38L,0x71L,0xF5L}},{{0xA5L,0xA5L,1L,1L},{0L,0L,0x97L,(-1L)},{0x85L,0xBBL,0xE4L,0x3EL},{6L,0L,1L,0xE4L},{(-8L),0L,5L,0x3EL},{0L,0xBBL,(-1L),(-1L)}},{{0x4CL,0L,(-1L),1L},{0x84L,0xA5L,(-2L),0x71L},{(-1L),0x6FL,6L,8L},{1L,0x9DL,0x83L,0xFBL},{0L,0xDAL,(-2L),0L},{0x85L,0xF9L,1L,0xDAL}},{{0x18L,7L,0x4CL,0x83L},{0x78L,0x16L,(-2L),0x3EL},{0L,0x6DL,0x72L,0L},{1L,1L,(-1L),(-1L)},{0L,0x97L,(-2L),(-8L)},{0xA4L,(-1L),0x18L,0xA4L}},{{0x4CL,0xA5L,0x25L,0x97L},{1L,0xDAL,5L,0x31L},{9L,1L,0x83L,0x38L},{6L,0x84L,0x0DL,0x97L},{0x78L,1L,0x97L,0xDAL},{7L,(-1L),0x6FL,(-1L)}},{{0x1CL,(-8L),0x34L,0xB9L},{0x3EL,0x16L,1L,0x16L},{7L,0x34L,(-1L),0x31L},{0x8BL,(-1L),0x6FL,(-1L)},{(-1L),0x9DL,(-3L),1L},{(-1L),0L,0x6FL,0x78L}},{{0x8BL,1L,(-1L),9L},{7L,0L,1L,0x71L},{0x3EL,0x0DL,0x34L,0x85L},{1L,8L,0x0DL,0x6DL},{0x3EL,1L,(-7L),7L},{0x84L,1L,0x8BL,0x31L}},{{(-1L),0x16L,(-1L),0xBBL},{0L,0x97L,0x15L,0x38L},{0x97L,1L,0x6FL,0L},{0xE4L,0x3EL,0L,0x6DL},{0L,0x38L,0x5CL,0x78L},{0L,0x0DL,0L,0x03L}},{{0L,0x39L,0x18L,9L},{0x3EL,0L,(-9L),0xF8L},{0x84L,0L,0xE4L,0L},{0L,1L,0x6DL,(-1L)},{0xA4L,(-8L),(-9L),0x38L},{0xA5L,0x34L,(-1L),0x97L}},{{0x15L,1L,(-7L),0x1CL},{0L,(-1L),9L,0L},{(-1L),0x80L,0x80L,(-1L)},{1L,0x4CL,0x0BL,(-4L)},{1L,0L,0x85L,0xE4L},{(-1L),0x4FL,0x15L,0xE4L}}};
 
784
                    int i, j, k;
 
785
                    if (((*g_60) = (**g_95)))
 
786
                    { /* block id: 64 */
 
787
                        (*l_134) = (p_44 , func_50((**l_96), (*l_133), l_135, (**l_96), l_120));
 
788
                        l_138 = ((l_133 != (void*)0) & p_45);
 
789
                    }
 
790
                    else
 
791
                    { /* block id: 67 */
 
792
                        int32_t *l_141[6] = {&l_102[1],&l_102[1],&l_102[1],&l_102[1],&l_102[1],&l_102[1]};
 
793
                        int i;
 
794
                        (*l_131) &= (*l_134);
 
795
                        (***l_96) = ((safe_rshift_func_uint8_t_u_s((p_44 = (((void*)0 == l_141[2]) , (l_142[0][3][1] = (*l_112)))), (*g_69))) || (-8L));
 
796
                        (*l_134) |= p_44;
 
797
                    }
 
798
                }
 
799
                for (l_107 = 0; (l_107 <= 37); l_107++)
 
800
                { /* block id: 77 */
 
801
                    (**g_95) = (((p_44++) , (&g_95 == (void*)0)) & (*g_69));
 
802
                    for (l_93 = 0; l_93 < 6; l_93 += 1)
 
803
                    {
 
804
                        l_119[l_93] = 0xC6L;
 
805
                    }
 
806
                }
 
807
                for (l_100 = 4; (l_100 >= 0); l_100 -= 1)
 
808
                { /* block id: 84 */
 
809
                    int32_t *l_147 = &l_104;
 
810
                    int32_t *l_148 = (void*)0;
 
811
                    return l_148;
 
812
                }
 
813
                (*g_95) = (**l_96);
 
814
            }
 
815
            for (g_117 = 0; (g_117 != (-14)); g_117--)
 
816
            { /* block id: 91 */
 
817
                uint32_t l_151 = 0x6CEBD2D5L;
 
818
                int32_t l_154 = 0x9DA40672L;
 
819
                ++l_151;
 
820
                l_154 = (p_45 >= (*l_133));
 
821
            }
 
822
        }
 
823
        else
 
824
        { /* block id: 95 */
 
825
            return (*g_95);
 
826
        }
 
827
    }
 
828
    (*l_71) |= (-1L);
 
829
    return l_73[2][6];
 
830
}
 
831
 
 
832
 
 
833
/* ------------------------------------------ */
 
834
/* 
 
835
 * reads : g_42.f3
 
836
 * writes: g_60
 
837
 */
 
838
static uint16_t  func_50(int32_t * p_51, uint16_t  p_52, int8_t  p_53, int32_t * p_54, union U2  p_55)
 
839
{ /* block id: 8 */
 
840
    for (p_53 = 0; (p_53 < (-11)); p_53 = safe_sub_func_uint8_t_u_u(p_53, 9))
 
841
    { /* block id: 11 */
 
842
        int32_t **l_67 = (void*)0;
 
843
        int32_t **l_68 = &g_60;
 
844
        (*l_68) = p_54;
 
845
    }
 
846
    return g_42.f3;
 
847
}
 
848
 
 
849
 
 
850
/* ------------------------------------------ */
 
851
/* 
 
852
 * reads :
 
853
 * writes:
 
854
 */
 
855
static int32_t * func_56(int8_t * p_57, int32_t * p_58)
 
856
{ /* block id: 5 */
 
857
    int32_t **l_62 = (void*)0;
 
858
    int32_t ***l_63 = &l_62;
 
859
    (*l_63) = l_62;
 
860
    return p_58;
 
861
}
 
862
 
 
863
 
 
864
 
 
865
 
 
866
/* ---------------------------------------- */
 
867
int main (int argc, char* argv[])
 
868
{
 
869
    int i, j, k;
 
870
    int print_hash_value = 0;
 
871
    if (argc == 2 && strcmp(argv[1], "1") == 0) print_hash_value = 1;
 
872
    platform_main_begin();
 
873
    crc32_gentab();
 
874
    func_1();
 
875
    transparent_crc(g_23, "g_23", print_hash_value);
 
876
    transparent_crc(g_25, "g_25", print_hash_value);
 
877
    transparent_crc(g_34, "g_34", print_hash_value);
 
878
    transparent_crc(g_42.f2, "g_42.f2", print_hash_value);
 
879
    for (i = 0; i < 8; i++)
 
880
    {
 
881
        for (j = 0; j < 6; j++)
 
882
        {
 
883
            for (k = 0; k < 4; k++)
 
884
            {
 
885
                transparent_crc(g_61[i][j][k], "g_61[i][j][k]", print_hash_value);
 
886
                if (print_hash_value) printf("index = [%d][%d][%d]\n", i, j, k);
 
887
 
 
888
            }
 
889
        }
 
890
    }
 
891
    transparent_crc(g_70, "g_70", print_hash_value);
 
892
    transparent_crc(g_78, "g_78", print_hash_value);
 
893
    transparent_crc(g_117, "g_117", print_hash_value);
 
894
    transparent_crc(g_163.f0, "g_163.f0", print_hash_value);
 
895
    transparent_crc(g_163.f1, "g_163.f1", print_hash_value);
 
896
    for (i = 0; i < 7; i++)
 
897
    {
 
898
        transparent_crc(g_165[i], "g_165[i]", print_hash_value);
 
899
        if (print_hash_value) printf("index = [%d]\n", i);
 
900
 
 
901
    }
 
902
    for (i = 0; i < 4; i++)
 
903
    {
 
904
        for (j = 0; j < 8; j++)
 
905
        {
 
906
            for (k = 0; k < 3; k++)
 
907
            {
 
908
                transparent_crc(g_171[i][j][k], "g_171[i][j][k]", print_hash_value);
 
909
                if (print_hash_value) printf("index = [%d][%d][%d]\n", i, j, k);
 
910
 
 
911
            }
 
912
        }
 
913
    }
 
914
    transparent_crc(g_218, "g_218", print_hash_value);
 
915
    transparent_crc(g_234, "g_234", print_hash_value);
 
916
    transparent_crc(g_246, "g_246", print_hash_value);
 
917
    transparent_crc(g_255, "g_255", print_hash_value);
 
918
    transparent_crc(g_380, "g_380", print_hash_value);
 
919
    transparent_crc(g_387, "g_387", print_hash_value);
 
920
    for (i = 0; i < 4; i++)
 
921
    {
 
922
        for (j = 0; j < 1; j++)
 
923
        {
 
924
            transparent_crc(g_405[i][j].f0, "g_405[i][j].f0", print_hash_value);
 
925
            transparent_crc(g_405[i][j].f1, "g_405[i][j].f1", print_hash_value);
 
926
            if (print_hash_value) printf("index = [%d][%d]\n", i, j);
 
927
 
 
928
        }
 
929
    }
 
930
    transparent_crc(g_471, "g_471", print_hash_value);
 
931
    transparent_crc(g_555, "g_555", print_hash_value);
 
932
    for (i = 0; i < 9; i++)
 
933
    {
 
934
        transparent_crc(g_556[i], "g_556[i]", print_hash_value);
 
935
        if (print_hash_value) printf("index = [%d]\n", i);
 
936
 
 
937
    }
 
938
    platform_main_end(crc32_context ^ 0xFFFFFFFFUL, print_hash_value);
 
939
    return 0;
 
940
}
 
941
 
 
942
/************************ statistics *************************
 
943
XXX max struct depth: 0
 
944
breakdown:
 
945
   depth: 0, occurrence: 231
 
946
XXX total union variables: 28
 
947
 
 
948
XXX non-zero bitfields defined in structs: 0
 
949
XXX zero bitfields defined in structs: 0
 
950
XXX const bitfields defined in structs: 0
 
951
XXX volatile bitfields defined in structs: 0
 
952
XXX structs with bitfields in the program: 0
 
953
breakdown:
 
954
XXX full-bitfields structs in the program: 0
 
955
breakdown:
 
956
XXX times a bitfields struct's address is taken: 0
 
957
XXX times a bitfields struct on LHS: 0
 
958
XXX times a bitfields struct on RHS: 0
 
959
XXX times a single bitfield on LHS: 0
 
960
XXX times a single bitfield on RHS: 0
 
961
 
 
962
XXX max expression depth: 45
 
963
breakdown:
 
964
   depth: 1, occurrence: 161
 
965
   depth: 2, occurrence: 47
 
966
   depth: 3, occurrence: 4
 
967
   depth: 4, occurrence: 3
 
968
   depth: 5, occurrence: 2
 
969
   depth: 6, occurrence: 1
 
970
   depth: 7, occurrence: 2
 
971
   depth: 10, occurrence: 2
 
972
   depth: 11, occurrence: 1
 
973
   depth: 12, occurrence: 1
 
974
   depth: 14, occurrence: 2
 
975
   depth: 15, occurrence: 1
 
976
   depth: 16, occurrence: 2
 
977
   depth: 17, occurrence: 1
 
978
   depth: 18, occurrence: 1
 
979
   depth: 19, occurrence: 1
 
980
   depth: 20, occurrence: 1
 
981
   depth: 25, occurrence: 1
 
982
   depth: 27, occurrence: 1
 
983
   depth: 28, occurrence: 1
 
984
   depth: 30, occurrence: 1
 
985
   depth: 34, occurrence: 1
 
986
   depth: 45, occurrence: 1
 
987
 
 
988
XXX total number of pointers: 222
 
989
 
 
990
XXX times a variable address is taken: 413
 
991
XXX times a pointer is dereferenced on RHS: 116
 
992
breakdown:
 
993
   depth: 1, occurrence: 105
 
994
   depth: 2, occurrence: 10
 
995
   depth: 3, occurrence: 1
 
996
XXX times a pointer is dereferenced on LHS: 91
 
997
breakdown:
 
998
   depth: 1, occurrence: 89
 
999
   depth: 2, occurrence: 1
 
1000
   depth: 3, occurrence: 1
 
1001
XXX times a pointer is compared with null: 9
 
1002
XXX times a pointer is compared with address of another variable: 1
 
1003
XXX times a pointer is compared with another pointer: 3
 
1004
XXX times a pointer is qualified to be dereferenced: 2461
 
1005
 
 
1006
XXX max dereference level: 3
 
1007
breakdown:
 
1008
   level: 0, occurrence: 0
 
1009
   level: 1, occurrence: 541
 
1010
   level: 2, occurrence: 44
 
1011
   level: 3, occurrence: 6
 
1012
XXX number of pointers point to pointers: 37
 
1013
XXX number of pointers point to scalars: 174
 
1014
XXX number of pointers point to structs: 0
 
1015
XXX percent of pointers has null in alias set: 30.2
 
1016
XXX average alias set size: 1.65
 
1017
 
 
1018
XXX times a non-volatile is read: 686
 
1019
XXX times a non-volatile is write: 318
 
1020
XXX times a volatile is read: 0
 
1021
XXX    times read thru a pointer: 0
 
1022
XXX times a volatile is write: 0
 
1023
XXX    times written thru a pointer: 0
 
1024
XXX times a volatile is available for access: 0
 
1025
XXX percentage of non-volatile access: 100
 
1026
 
 
1027
XXX forward jumps: 1
 
1028
XXX backward jumps: 2
 
1029
 
 
1030
XXX stmts: 167
 
1031
XXX max block depth: 5
 
1032
breakdown:
 
1033
   depth: 0, occurrence: 32
 
1034
   depth: 1, occurrence: 19
 
1035
   depth: 2, occurrence: 34
 
1036
   depth: 3, occurrence: 34
 
1037
   depth: 4, occurrence: 23
 
1038
   depth: 5, occurrence: 25
 
1039
 
 
1040
XXX percentage a fresh-made variable is used: 17.7
 
1041
XXX percentage an existing variable is used: 82.3
 
1042
********************* end of statistics **********************/
 
1043