Function at 0x10042993
Capabilities:
Parse pe header

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x1006c7f8
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x51c
push esi
and dword [ebp - 0x28], 0
mov dword [ebp - 0x2dc], 0xffffffff
mov dword [ebp - 0x4c], 0x633efc07
mov dword [ebp - 0x104], 0
jmp 0x100429e0
mov eax, dword [ebp - 0x104]
inc eax
mov dword [ebp - 0x104], eax
cmp dword [ebp - 0x104], 4
jge 0x100429fc
mov eax, dword [ebp - 0x104]
mov dword [ebp + eax*4 - 0x528], 1
jmp 0x100429d3
cmp dword [ebp - 0x2dc], 0
je 0x10042a3f
mov dword [ebp - 0x348], 0x43cdf98a
mov eax, dword [ebp - 0x348]
mov dword [ebp - 0x4c], eax
mov byte [ebp - 0x47], 0
movzx eax, byte [ebp - 0x47]
test eax, eax
je 0x10042a3a
push 0
push 0x4e7f
push 1
push 0x35fe
call fcn.10045727
add esp, 0x10
jmp 0x10042acb
push 0x6b2e
push 0xe9a
lea eax, [ebp - 0x4c]
push eax
push 0x2d04
push 0x2a11
push 0xd3c
push 1
push 1
push 0x6a69
push 0x736b
push 0x6efa
push 0x6dac
push 0x39b6
push 1
push 0x1e04
call fcn.10039af9
add esp, 0x3c
mov dword [ebp - 0x4c], 3
jmp 0x10042a98
mov eax, dword [ebp - 0x4c]
dec eax
mov dword [ebp - 0x4c], eax
cmp dword [ebp - 0x4c], 0
jl 0x10042acb
mov dword [ebp - 0x350], 6
mov eax, dword [ebp - 0x4c]
mov eax, dword [ebp + eax*4 - 0x528]
mov dword [ebp - 0x350], eax
mov byte [ebp - 0x43], 0
movzx eax, byte [ebp - 0x43]
test eax, eax
je 0x10042ac9
call fcn.10042489
jmp 0x10042a91
mov dword [ebp - 0x358], 0x61928c17
lea eax, [ebp - 0x358]
push eax
call fcn.10042496
pop ecx
mov dword [ebp - 0x80], 3
mov dword [ebp - 0x110], 0
mov dword [ebp - 0x2c0], 0
mov dword [ebp - 0x33c], 0xffffffff
mov eax, dword [ebp - 0x80]
mov dword [ebp - 0x498], eax
cmp dword [ebp - 0x110], 0
jne 0x10042b20
cmp dword [ebp - 0x110], 0
mov eax, dword [ebp - 0x110]
mov ecx, dword [ebp - 0x80]
sub ecx, 0xd303
sub ecx, dword [ebp - 0x80]
sub eax, ecx
cmp dword [ebp - 0x80], eax
je 0x10042b45
mov dword [ebp - 0x170], 1
jmp 0x10042b4c
and dword [ebp - 0x170], 0
mov eax, dword [ebp - 0x170]
mov dword [ebp - 0x2c0], eax
imul eax, dword [ebp - 0x2c0], 0xc218
imul eax, eax, 0xa945
cmp eax, dword [ebp - 0x110]
je 0x10042b85
mov eax, 0xfffa
test eax, eax
je 0x10042b85
mov dword [ebp - 0x2c8], 1
jmp 0x10042b8c
and dword [ebp - 0x2c8], 0
mov eax, dword [ebp - 0x80]
cmp eax, dword [ebp - 0x2c8]
jge 0x10042ba3
mov dword [ebp - 0x274], 1
jmp 0x10042baa
and dword [ebp - 0x274], 0
mov eax, dword [ebp - 0x80]
cmp dword [ebp - 0x274], eax
jl 0x10042bc1
mov dword [ebp - 0x2a8], 1
jmp 0x10042bc8
and dword [ebp - 0x2a8], 0
mov eax, dword [ebp - 0x2a8]
mov dword [ebp - 0x33c], eax
mov byte [ebp - 0x55], 0
lea eax, [ebp - 0x55]
push eax
call fcn.10042503
pop ecx
mov dword [ebp - 0x54], 0x256915a
mov dword [ebp - 0x114], 0
mov dword [ebp - 0x158], 0xcd7d393e
mov dword [ebp - 0x40c], 0x1152
mov dword [ebp - 0x408], 0x1152
mov dword [ebp - 0x404], 0x1152
mov dword [ebp - 0x400], 0x1152
mov dword [ebp - 0x4b8], 0x7c5c6a81
mov dword [ebp - 0x10c], 0x673ed132
mov dword [ebp - 0x34], 0
jmp 0x10042c49
mov eax, dword [ebp - 0x34]
inc eax
mov dword [ebp - 0x34], eax
cmp dword [ebp - 0x34], 1
jge 0x10042c5f
mov eax, dword [ebp - 0x34]
mov dword [ebp + eax*4 - 0x17c], 8
jmp 0x10042c42
mov dword [ebp - 0x34], 0
jmp 0x10042c6f
mov eax, dword [ebp - 0x34]
inc eax
mov dword [ebp - 0x34], eax
cmp dword [ebp - 0x34], 4
jge 0x10042c85
mov eax, dword [ebp - 0x34]
mov dword [ebp + eax*4 - 0x4e0], 0xfffffff8
jmp 0x10042c68
mov dword [ebp - 0x54], 0
jmp 0x10042c95
mov eax, dword [ebp - 0x54]
inc eax
mov dword [ebp - 0x54], eax
cmp dword [ebp - 0x54], 0
jg 0x10042ec0
mov dword [ebp - 0x320], 0xeea53061
mov dword [ebp - 0x300], 0xdd9cd443
mov dword [ebp - 0x46c], 0x5f19
mov dword [ebp - 0xc8], 0
jmp 0x10042cd6
mov eax, dword [ebp - 0xc8]
inc eax
mov dword [ebp - 0xc8], eax
cmp dword [ebp - 0xc8], 4
jge 0x10042cf2
mov eax, dword [ebp - 0xc8]
mov dword [ebp + eax*4 - 0x4f0], 0
jmp 0x10042cc9
mov eax, dword [ebp - 0x10c]
dec eax
mov dword [ebp - 0x10c], eax
jne 0x10042d23
mov eax, dword [ebp - 0x54]
mov eax, dword [ebp + eax*4 - 0x17c]
mov dword [ebp - 0x114], eax
cmp dword [ebp - 0x114], 0
jne 0x10042d23
and dword [ebp - 0x2b0], 0
jmp 0x10042d2d
mov dword [ebp - 0x2b0], 1
push 4
pop eax
shl eax, 0
mov eax, dword [ebp + eax - 0x4f0]
mov dword [ebp - 0x158], eax
mov eax, dword [ebp - 0x158]
cmp dword [ebp - 0x2b0], eax
jl 0x10042d5a
mov dword [ebp - 0x16c], 1
jmp 0x10042d61
and dword [ebp - 0x16c], 0
push 4
pop eax
imul eax, eax, 3
cmp dword [ebp + eax - 0x40c], 0
je 0x10042d8d
push 4
pop eax
imul eax, eax, 0
cmp dword [ebp + eax - 0x4e0], 0
je 0x10042d8d
mov dword [ebp - 0x2b8], 1
jmp 0x10042d94
and dword [ebp - 0x2b8], 0
mov eax, dword [ebp - 0x54]
cmp dword [ebp - 0x2b8], eax
jle 0x10042dab
mov dword [ebp - 0x164], 1
jmp 0x10042db2
and dword [ebp - 0x164], 0
mov eax, dword [ebp - 0x164]
inc eax
cmp eax, 0x59af2c67
jl 0x10042dcc
mov dword [ebp - 0x21c], 1
jmp 0x10042dd3
and dword [ebp - 0x21c], 0
mov eax, dword [ebp - 0x21c]
neg eax
cmp dword [ebp - 0x16c], eax
jg 0x10042def
mov dword [ebp - 0x2a4], 1
jmp 0x10042df6
and dword [ebp - 0x2a4], 0
mov eax, dword [ebp - 0x320]
cmp dword [ebp - 0x2a4], eax
jg 0x10042e1c
push 4
pop eax
shl eax, 1
cmp dword [ebp + eax - 0x4e0], 0
jne 0x10042e1c
and dword [ebp - 0x174], 0
jmp 0x10042e26
mov dword [ebp - 0x174], 1
cmp dword [ebp - 0x174], 0xfffffff9
jb 0x10042e3b
mov dword [ebp - 0x224], 1
jmp 0x10042e42
and dword [ebp - 0x224], 0
cmp dword [ebp - 0x224], 2
jbe 0x10042e57
mov dword [ebp - 0x27c], 1
jmp 0x10042e5e
and dword [ebp - 0x27c], 0
mov eax, dword [ebp - 0x54]
mov eax, dword [ebp + eax*4 - 0x17c]
cmp eax, dword [ebp - 0x27c]
jge 0x10042e7c
mov dword [ebp - 0x184], 1
jmp 0x10042e83
and dword [ebp - 0x184], 0
mov eax, dword [ebp - 0x300]
imul eax, dword [ebp - 0x184]
cmp eax, 2
jge 0x10042ea1
mov dword [ebp - 0x22c], 1
jmp 0x10042ea8
and dword [ebp - 0x22c], 0
push 4
pop eax
shl eax, 0
mov ecx, dword [ebp - 0x22c]
mov dword [ebp + eax - 0x4f0], ecx
jmp 0x10042c8e
lea eax, [ebp - 0x10c]
push eax
lea eax, [ebp - 0x114]
push eax
call fcn.100184e9
pop ecx
pop ecx
mov dword [ebp - 0xd8], 0xfffffffe
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x13c], 0xffffffff
mov dword [ebp - 0x138], 0xffffffff
mov dword [ebp - 0x134], 0xffffffff
mov dword [ebp - 0x130], 0xffffffff
mov dword [ebp - 0x90], 0
mov dword [ebp - 0x23c], 0x4ba09a16
mov dword [ebp - 0xd0], 0
jmp 0x10042f3b
mov eax, dword [ebp - 0xd0]
inc eax
mov dword [ebp - 0xd0], eax
cmp dword [ebp - 0xd0], 4
jge 0x10042f57
mov eax, dword [ebp - 0xd0]
mov dword [ebp + eax*4 - 0x518], 0x1e9a9d01
jmp 0x10042f2e
push 0x672
lea eax, [ebp - 0xd8]
push eax
push 1
push 0x3713
push 0x75bf
lea eax, [ebp - 0x1c]
push eax
push 1
push 0x6cfd
push 1
call fcn.10039fe7
add esp, 0x24
mov dword [ebp - 0x1c], 0
jmp 0x10042f94
mov eax, dword [ebp - 0x1c]
inc eax
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], 3
jg 0x100431cb
mov dword [ebp - 0xbc], 0xddb74a71
push 0x6d4f
push 0x7322
push 0x4ecb
push 0x2d98
lea eax, [ebp - 0x90]
push eax
push 1
push 0x7d09
push 0x3b41
push 0x2baf
push 1
push 0x1cde
call fcn.1003a1cc
add esp, 0x2c
mov eax, dword [ebp - 0x1c]
cmp dword [ebp + eax*4 - 0x13c], 0
je 0x100430d8
mov eax, dword [ebp - 0xd8]
mov ecx, dword [ebp - 0x1c]
add eax, dword [ebp + ecx*4 - 0x13c]
imul eax, dword [ebp - 0x90]
test eax, eax
jne 0x10043027
push 4
pop eax
shl eax, 1
cmp dword [ebp + eax - 0x13c], 0
jne 0x10043027
and dword [ebp - 0x18c], 0
jmp 0x10043031
mov dword [ebp - 0x18c], 1
mov eax, dword [ebp - 0x18c]
mov dword [ebp - 0xbc], eax
cmp dword [ebp - 0xbc], 0
jne 0x1004305f
push 4
pop eax
imul eax, eax, 3
cmp dword [ebp + eax - 0x13c], 0
jne 0x1004305f
and dword [ebp - 0x2bc], 0
jmp 0x10043069
mov dword [ebp - 0x2bc], 1
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp + eax*4 - 0x13c]
imul eax, dword [ebp - 0x2bc]
cmp eax, dword [ebp - 0xd8]
jg 0x1004308e
mov dword [ebp - 0x194], 1
jmp 0x10043095
and dword [ebp - 0x194], 0
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp + eax*4 - 0x13c]
cmp dword [ebp - 0x194], eax
je 0x100430b3
mov dword [ebp - 0x234], 1
jmp 0x100430ba
and dword [ebp - 0x234], 0
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp + eax*4 - 0x13c]
add eax, dword [ebp - 0x234]
je 0x100430d8
mov dword [ebp - 0x19c], 1
jmp 0x100430df
and dword [ebp - 0x19c], 0
mov eax, dword [ebp - 0x19c]
sub eax, dword [ebp - 0xd8]
cmp eax, 8
jl 0x100430fc
mov dword [ebp - 0x2ec], 1
jmp 0x10043103
and dword [ebp - 0x2ec], 0
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp + eax*4 - 0x13c]
mov dword [ebp - 0x47c], eax
mov eax, dword [ebp - 0xbc]
mov dword [ebp - 0x4c0], eax
cmp dword [ebp - 0xbc], 1
jle 0x10043134
mov dword [ebp - 0x284], 1
jmp 0x1004313b
and dword [ebp - 0x284], 0
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp + eax*4 - 0x13c]
imul ecx, dword [ebp - 0x284], 0x33e3
add eax, ecx
cmp eax, dword [ebp - 0x90]
jge 0x10043165
mov dword [ebp - 0x1a4], 1
jmp 0x1004316c
and dword [ebp - 0x1a4], 0
mov eax, dword [ebp - 0x1a4]
mov dword [ebp - 0x90], eax
mov eax, dword [ebp - 0x90]
mov dword [ebp - 0x23c], eax
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp + eax*4 - 0x13c]
cmp dword [ebp - 0x23c], eax
jne 0x100431a2
mov dword [ebp - 0x1ac], 1
jmp 0x100431a9
and dword [ebp - 0x1ac], 0
mov eax, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x1ac]
sub ecx, dword [ebp + eax*4 - 0x13c]
push 4
pop eax
imul eax, eax, 0
mov dword [ebp + eax - 0x518], ecx
jmp 0x10042f8d
lea eax, [ebp + 8]
push eax
lea eax, [ebp - 0x120]
push eax
call fcn.100184e9
pop ecx
pop ecx
mov eax, dword [ebp - 0x120]
movzx eax, word [eax]
cmp eax, 0x5a4d
je 0x100431f4
xor eax, eax
jmp 0x10044e78
mov eax, dword [ebp - 0x120]
mov ecx, dword [ebp + 8]
add ecx, dword [eax + 0x3c]
mov dword [ebp - 0xac], ecx
mov dword [ebp - 0x88], 0
mov dword [ebp - 0xdc], 0
jmp 0x10043229
mov eax, dword [ebp - 0xdc]
inc eax
mov dword [ebp - 0xdc], eax
cmp dword [ebp - 0xdc], 1
jge 0x10043245
mov eax, dword [ebp - 0xdc]
mov dword [ebp + eax*4 - 0x28c], 0xffffffff
jmp 0x1004321c
mov byte [ebp - 0x45], 0
push 1
push 0x3731
push 0x35dd
push 1
push 0x7c8c
push 0xffd
lea eax, [ebp - 0x45]
push eax
push 0x38c9
push 1
call fcn.1003ea6f
add esp, 0x24
mov dword [ebp - 0x88], 0
jmp 0x1004328d
mov eax, dword [ebp - 0x88]
dec eax
mov dword [ebp - 0x88], eax
cmp dword [ebp - 0x88], 0
jl 0x100434a9
call fcn.10042521
mov dword [ebp - 0x334], 0x1519
cmp dword [ebp - 0x334], 0x1227
jge 0x1004348a
lea eax, [ebp - 0x2f4]
push eax
lea eax, [ebp - 0xa4]
push eax
push 0x1000e06c
call fcn.1005030b
add esp, 0xc
and dword [ebp - 0x8c], 0
and dword [ebp - 0x78], 0
and dword [ebp - 0x9c], 0
and dword [ebp - 0x128], 0
jmp 0x100432fc
mov eax, dword [ebp - 0x128]
inc eax
mov dword [ebp - 0x128], eax
mov eax, dword [ebp - 0x128]
cmp eax, dword [ebp - 0x2f4]
jge 0x10043378
lea eax, [ebp - 0x5c]
push eax
push 0x1000dbe8
call fcn.1005030b
pop ecx
pop ecx
mov eax, dword [ebp - 0x5c]
cdq
and edx, 3
add eax, edx
sar eax, 2
add eax, dword [ebp - 0x8c]
mov dword [ebp - 0x8c], eax
mov eax, dword [ebp - 0x5c]
and eax, 0x80000003
jns 0x10043341
dec eax
or eax, 0xfffffffc
inc eax
mov dword [ebp - 0x5c], eax
mov eax, dword [ebp - 0x5c]
cdq
sub eax, edx
sar eax, 1
add eax, dword [ebp - 0x78]
mov dword [ebp - 0x78], eax
mov eax, dword [ebp - 0x5c]
and eax, 0x80000001
jns 0x10043361
dec eax
or eax, 0xfffffffe
inc eax
mov dword [ebp - 0x5c], eax
mov eax, dword [ebp - 0x9c]
add eax, dword [ebp - 0x5c]
mov dword [ebp - 0x9c], eax
jmp 0x100432ef
mov eax, dword [ebp - 0xa4]
cmp eax, dword [ebp - 0x8c]
jl 0x10043392
mov dword [ebp - 0x2ac], 1
jmp 0x1004339c
mov dword [ebp - 0x2ac], 2
mov eax, dword [ebp - 0xa4]
sub eax, dword [ebp - 0x8c]
imul eax, dword [ebp - 0x2ac]
mov ecx, dword [ebp - 0xa4]
lea eax, [eax + ecx*2]
mov dword [ebp - 0xe0], eax
mov eax, dword [ebp - 0xa4]
cmp eax, dword [ebp - 0x8c]
jl 0x100433d8
mov dword [ebp - 0x1b4], 1
jmp 0x100433df
and dword [ebp - 0x1b4], 0
mov eax, dword [ebp - 0xe0]
cmp eax, dword [ebp - 0x78]
jle 0x100433f6
mov dword [ebp - 0x244], 1
jmp 0x100433fd
and dword [ebp - 0x244], 0
mov eax, dword [ebp - 0xa4]
sub eax, dword [ebp - 0x8c]
imul eax, dword [ebp - 0x1b4]
mov ecx, dword [ebp - 0xe0]
sub ecx, dword [ebp - 0x78]
imul ecx, dword [ebp - 0x244]
add eax, ecx
mov dword [ebp - 0x340], eax
mov eax, dword [ebp - 0x78]
cmp eax, dword [ebp - 0xe0]
jle 0x1004343f
mov dword [ebp - 0x1bc], 1
jmp 0x10043446
and dword [ebp - 0x1bc], 0
mov eax, dword [ebp - 0x1bc]
shl eax, 1
mov ecx, dword [ebp - 0x78]
sub ecx, dword [ebp - 0xe0]
imul eax, ecx
add eax, dword [ebp - 0x9c]
mov dword [ebp - 0x9c], eax
mov eax, dword [ebp - 0x9c]
cmp eax, dword [ebp - 0x340]
jle 0x1004347f
push 0x1000dfcc
call fcn.10051226
pop ecx
push 0x1000dfc8
call fcn.10051226
pop ecx
mov eax, dword [ebp - 0x88]
mov ecx, dword [ebp - 0x88]
mov eax, dword [ebp + eax*4 - 0x28c]
mov dword [ebp + ecx*4 - 0x28c], eax
jmp 0x10043280
mov eax, dword [ebp - 0xac]
cmp dword [eax], 0x4550
je 0x10043762
mov dword [ebp - 0x10], 4
mov dword [ebp - 0x3cc], 0x80be39e3
mov dword [ebp - 0x3c8], 0x80be39e3
mov dword [ebp - 0x3c4], 0x80be39e3
mov dword [ebp - 0x3c0], 0x80be39e3
lea ecx, [ebp - 0x129]
call fcn.10012752
push eax
lea eax, [ebp - 0x3bc]
push eax
lea eax, [ebp - 0x3cc]
push eax
lea ecx, [ebp - 0x4f8]
call fcn.10012755
push dword [eax + 4]
push dword [eax]
lea ecx, [ebp - 0x458]
call fcn.10012718
and dword [ebp - 4], 0
mov dword [ebp - 0x1e4], 0x6ce1
mov dword [ebp - 0xfc], 0
jmp 0x10043546
mov eax, dword [ebp - 0xfc]
inc eax
mov dword [ebp - 0xfc], eax
cmp dword [ebp - 0xfc], 3
jge 0x10043562
mov eax, dword [ebp - 0xfc]
mov dword [ebp + eax*4 - 0x148], 1
jmp 0x10043539
mov dword [ebp - 0x10], 2
jmp 0x10043572
mov eax, dword [ebp - 0x10]
dec eax
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 0
jl 0x10043726
mov dword [ebp - 0x254], 0xfffffff8
mov dword [ebp - 0x2fc], 0xffffffff
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp + eax*4 - 0x148]
add eax, dword [ebp - 0x10]
jne 0x100435a8
mov eax, 0x7f5aee0c
test eax, eax
je 0x100435b5
mov eax, dword [ebp - 0x10]
cmp dword [ebp + eax*4 - 0x148], 0
jne 0x100435cb
mov eax, dword [ebp - 0x10]
cmp dword [ebp + eax*4 - 0x148], 0
jne 0x100435cb
and dword [ebp - 0x1c4], 0
jmp 0x100435d5
mov dword [ebp - 0x1c4], 1
push 4
pop eax
shl eax, 0
mov ecx, dword [ebp - 0x1c4]
sub ecx, dword [ebp + eax - 0x148]
push 4
pop eax
shl eax, 0
sub ecx, dword [ebp + eax - 0x148]
jne 0x10043606
cmp dword [ebp - 0x10], 0
jne 0x10043606
and dword [ebp - 0x24c], 0
jmp 0x10043610
mov dword [ebp - 0x24c], 1
cmp dword [ebp - 0x24c], 0xfffffffb
jb 0x10043625
mov dword [ebp - 0x1cc], 1
jmp 0x1004362c
and dword [ebp - 0x1cc], 0
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp + eax*4 - 0x148]
cmp dword [ebp - 0x1cc], eax
jle 0x1004364a
mov dword [ebp - 0x2cc], 1
jmp 0x10043651
and dword [ebp - 0x2cc], 0
mov eax, dword [ebp - 0x2cc]
sub eax, dword [ebp - 0x1e4]
sub eax, 0x5d
cmp eax, 0xb060
jl 0x10043673
mov dword [ebp - 0x1d4], 1
jmp 0x1004367a
and dword [ebp - 0x1d4], 0
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x148]
cmp dword [ebp - 0x1d4], eax
jne 0x1004369b
mov dword [ebp - 0x1dc], 1
jmp 0x100436a2
and dword [ebp - 0x1dc], 0
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp + eax*4 - 0x148]
mov dword [ebp - 0x294], eax
push 2
lea ecx, [ebp - 0x458]
call fcn.10012743
mov ecx, dword [ebp - 0x294]
mov dword [eax], ecx
mov dword [ebp - 0x254], 1
mov eax, dword [ebp - 0x10]
mov ecx, dword [ebp - 0x254]
sub ecx, dword [ebp - 0x1dc]
imul ecx, dword [ebp - 0x294]
sub ecx, dword [ebp + eax*4 - 0x148]
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp + eax*4 - 0x148]
sub eax, ecx
cmp eax, dword [ebp - 0x1e4]
jl 0x1004370e
mov dword [ebp - 0x25c], 1
jmp 0x10043715
and dword [ebp - 0x25c], 0
mov eax, dword [ebp - 0x25c]
mov dword [ebp - 0x2fc], eax
jmp 0x1004356b
mov dword [ebp - 0x10], 0xfffffffd
jmp 0x10043736
mov eax, dword [ebp - 0x10]
inc eax
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 0xe
jle 0x1004374c
mov byte [ebp - 0x44], 0
lea eax, [ebp - 0x44]
push eax
call fcn.1004254b
pop ecx
jmp 0x1004372f
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x458]
call fcn.1001273e
xor eax, eax
jmp 0x10044e78
push 0x307
push 1
push 0x4711
push 0x3fe0
push 1
push 1
push 0x1f41
push 0x4524
call fcn.1003f0e5
add esp, 0x20
push 0x2728
push 0x4359
push 0x3d96
push dword [ebp - 0xac]
push 0x3600
push 0x4d5e
push 0x2032
push 0x3986
push 0x77bd
lea eax, [ebp - 0xc0]
push eax
push 1
push 0x635
push 0x3bfa
push 1
call fcn.100396fa
add esp, 0x38
cmp dword [ebp - 0xc0], 0
jne 0x100439f9
push 1
lea ecx, [ebp - 0x2d8]
call fcn.100126dc
mov dword [ebp - 4], 1
mov dword [ebp - 0x1ec], 0xad2086bd
mov dword [ebp - 0x2b4], 0xfffffff9
mov dword [ebp - 0x1fc], 0
push 2
lea ecx, [ebp - 0x3a0]
call fcn.100126dc
mov byte [ebp - 4], 2
mov dword [ebp - 0x354], 0xc4a87fce
mov dword [ebp - 0x20], 0
jmp 0x1004383e
mov eax, dword [ebp - 0x20]
inc eax
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], 1
jge 0x10043857
push dword [ebp - 0x20]
lea ecx, [ebp - 0x2d8]
call fcn.10012743
and dword [eax], 0
jmp 0x10043837
mov dword [ebp - 0x20], 0
jmp 0x10043867
mov eax, dword [ebp - 0x20]
inc eax
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], 2
jge 0x1004387d
mov eax, dword [ebp - 0x20]
mov dword [ebp + eax*4 - 0x3a8], 0xffffffff
jmp 0x10043860
lea eax, [ebp - 0x3a0]
push eax
lea eax, [ebp - 0x20]
push eax
call fcn.10042579
pop ecx
pop ecx
mov byte [ebp - 0x41], 0
movzx eax, byte [ebp - 0x41]
test eax, eax
je 0x100438b8
push 1
push 1
push 0x4547
push 0x48a
push 0x1bf5
push 4
call fcn.10040485
add esp, 0x18
push 0
lea ecx, [ebp - 0x2d8]
call fcn.10012743
mov eax, dword [eax]
mov dword [ebp - 0x1ec], eax
mov eax, dword [ebp - 0x1ec]
mov dword [ebp - 0x1f4], eax
push 4
pop eax
shl eax, 0
mov ecx, dword [ebp - 0x1f4]
mov dword [ebp + eax - 0x3a8], ecx
mov dword [ebp - 0x2b4], 0xd2703d9b
mov eax, dword [ebp - 0x2b4]
cmp dword [ebp - 0x1f4], eax
jl 0x10043910
mov dword [ebp - 0x264], 1
jmp 0x10043917
and dword [ebp - 0x264], 0
push 0
lea ecx, [ebp - 0x2d8]
call fcn.10012743
cmp dword [eax], 0
jne 0x10043951
push 0
lea ecx, [ebp - 0x2d8]
call fcn.10012743
push 0
lea ecx, [ebp - 0x2d8]
call fcn.10012743
cmp dword [eax], 0
jne 0x10043951
and dword [ebp - 0x29c], 0
jmp 0x1004395b
mov dword [ebp - 0x29c], 1
mov eax, dword [ebp - 0x264]
mov dword [ebp - 0x1fc], eax
mov esi, dword [ebp - 0x1fc]
push 0
lea ecx, [ebp - 0x2d8]
call fcn.10012743
imul esi, dword [eax]
cmp esi, dword [ebp - 0x29c]
je 0x10043993
push 4
pop eax
shl eax, 0
cmp dword [ebp + eax - 0x3a8], 0
push 1
lea ecx, [ebp - 0x3a0]
call fcn.10012743
mov esi, eax
push 0
lea ecx, [ebp - 0x3a0]
call fcn.10012743
mov ecx, dword [esi]
cmp ecx, dword [eax]
jge 0x100439c1
mov dword [ebp - 0x204], 1
jmp 0x100439c8
and dword [ebp - 0x204], 0
mov eax, dword [ebp - 0x204]
mov dword [ebp - 0x354], eax
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x3a0]
call fcn.1001273e
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x2d8]
call fcn.1001273e
xor eax, eax
jmp 0x10044e78
mov dword [ebp - 0xe8], 1
mov dword [ebp - 0x26c], 0xff40
mov dword [ebp - 0x304], 0x72759951
mov dword [ebp - 0xe8], 0xffffffee
jmp 0x10043a30
mov eax, dword [ebp - 0xe8]
inc eax
mov dword [ebp - 0xe8], eax
cmp dword [ebp - 0xe8], 0xfffffff6
jg 0x10043a97
mov dword [ebp - 0x100], 1
mov dword [ebp - 0x100], 0
jmp 0x10043a5c
mov eax, dword [ebp - 0x100]
dec eax
mov dword [ebp - 0x100], eax
cmp dword [ebp - 0x100], 0xfffffff2
jl 0x10043a8a
lea eax, [ebp - 0x26c]
push eax
lea eax, [ebp - 0x304]
push eax
call fcn.100425c1
pop ecx
pop ecx
mov byte [ebp - 0x4d], 0
lea eax, [ebp - 0x4d]
push eax
call fcn.100425e8
pop ecx
jmp 0x10043a4f
cmp dword [ebp - 0x26c], 0
je 0x10043a95
jmp 0x10043a97
jmp 0x10043a23
lea eax, [ebp - 0x28]
push eax
lea eax, [ebp - 0xc0]
push eax
lea eax, [ebp - 0x48c]
push eax
push 1
push dword [ebp - 0x120]
push 1
push dword [ebp - 0xac]
call fcn.1003993e
add esp, 0x1c
push 0x5d7c
push 0x23e9
push dword [ebp - 0xac]
push dword [ebp - 0x28]
push 0x7126
push 0
push 0x3746
push 0x8f9
push 0x1cb2
push 1
push dword [ebp + 8]
call fcn.1003a1cc
add esp, 0x2c
mov dword [ebp - 0x70], 3
mov dword [ebp - 0xf0], 0
mov dword [ebp - 0x2c4], 0
mov dword [ebp - 0x344], 0xffffffff
mov eax, dword [ebp - 0x70]
mov dword [ebp - 0x4bc], eax
cmp dword [ebp - 0xf0], 0
jne 0x10043b35
cmp dword [ebp - 0xf0], 0
mov eax, dword [ebp - 0xf0]
mov ecx, dword [ebp - 0x70]
sub ecx, 0xd303
sub ecx, dword [ebp - 0x70]
sub eax, ecx
cmp dword [ebp - 0x70], eax
je 0x10043b5a
mov dword [ebp - 0x20c], 1
jmp 0x10043b61
and dword [ebp - 0x20c], 0
mov eax, dword [ebp - 0x20c]
mov dword [ebp - 0x2c4], eax
imul eax, dword [ebp - 0x2c4], 0xc218
imul eax, eax, 0xa945
cmp eax, dword [ebp - 0xf0]
je 0x10043b9a
mov eax, 0xfffa
test eax, eax
je 0x10043b9a
mov dword [ebp - 0x214], 1
jmp 0x10043ba1
and dword [ebp - 0x214], 0
mov eax, dword [ebp - 0x70]
cmp eax, dword [ebp - 0x214]
jge 0x10043bb8
mov dword [ebp - 0x15c], 1
jmp 0x10043bbf
and dword [ebp - 0x15c], 0
mov eax, dword [ebp - 0x70]
cmp dword [ebp - 0x15c], eax
jl 0x10043bd6
mov dword [ebp - 0x160], 1
jmp 0x10043bdd
and dword [ebp - 0x160], 0
mov eax, dword [ebp - 0x160]
mov dword [ebp - 0x344], eax
mov byte [ebp - 0x46], 0
lea eax, [ebp - 0x46]
push eax
call fcn.10042618
pop ecx
push 1
push 0x1f1c
lea eax, [ebp - 0xac]
push eax
lea eax, [ebp - 0xc0]
push eax
push 0x10d7
lea eax, [ebp - 0x168]
push eax
push 1
call fcn.1004072e
add esp, 0x1c
cmp dword [ebp - 0x168], 0
je 0x10043ca1
push 4
lea ecx, [ebp - 0x468]
call fcn.100126dc
mov dword [ebp - 4], 3
push 1
lea eax, [ebp - 0x494]
push eax
push 1
push 0xaba
lea eax, [ebp - 0x468]
push eax
push 1
push 0x7d6c
push 0x5e02
call fcn.10040824
add esp, 0x20
call fcn.10042648
call fcn.1004266f
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x468]
call fcn.1001273e
push 0x4de0
push 1
lea eax, [ebp - 0x168]
push eax
push 1
lea eax, [ebp - 0x28]
push eax
push 0
call fcn.100410e9
add esp, 0x18
mov dword [ebp - 0x7c], 0
push 4
lea ecx, [ebp - 0x3fc]
call fcn.100126dc
mov dword [ebp - 4], 4
lea eax, [ebp - 0x3fc]
push eax
lea eax, [ebp - 0x4cc]
push eax
call fcn.10042695
pop ecx
pop ecx
mov dword [ebp - 0x7c], 0xfffffff8
jmp 0x10043ce1
mov eax, dword [ebp - 0x7c]
inc eax
mov dword [ebp - 0x7c], eax
cmp dword [ebp - 0x7c], 0x10
jg 0x10043f27
mov dword [ebp - 0x98], 0xfffffff7
mov dword [ebp - 0x74], 0
mov dword [ebp - 0x49c], 0x188b9abc
push 2
lea ecx, [ebp - 0x478]
call fcn.100126dc
mov byte [ebp - 4], 5
lea eax, [ebp - 0x478]
push eax
push 1
push 0x1081
lea eax, [ebp - 0x94]
push eax
push 0x7bf3
push 0
call fcn.10040c61
add esp, 0x18
mov dword [ebp - 0x94], 0
jmp 0x10043d54
mov eax, dword [ebp - 0x94]
inc eax
mov dword [ebp - 0x94], eax
cmp dword [ebp - 0x94], 4
jge 0x10043d70
mov eax, dword [ebp - 0x94]
mov dword [ebp + eax*4 - 0x508], 0xfffffff7
jmp 0x10043d47
mov dword [ebp - 0x98], 3
jmp 0x10043d89
mov eax, dword [ebp - 0x98]
dec eax
mov dword [ebp - 0x98], eax
cmp dword [ebp - 0x98], 0
jl 0x10043f13
mov dword [ebp - 0x118], 0xe5ab
lea eax, [ebp - 0x98]
push eax
lea eax, [ebp - 0x3fc]
push eax
lea eax, [ebp - 0x74]
push eax
call fcn.100426dd
add esp, 0xc
mov dword [ebp - 0x74], 3
jmp 0x10043dca
mov eax, dword [ebp - 0x74]
dec eax
mov dword [ebp - 0x74], eax
cmp dword [ebp - 0x74], 0
jl 0x10043f0e
mov dword [ebp - 0x84], 0x89a69576
mov dword [ebp - 0x84], 3
jmp 0x10043df7
mov eax, dword [ebp - 0x84]
dec eax
mov dword [ebp - 0x84], eax
cmp dword [ebp - 0x84], 0
jl 0x10043e98
mov dword [ebp - 0xa0], 0xfffffffe
mov dword [ebp - 0xa0], 0
jmp 0x10043e27
mov eax, dword [ebp - 0xa0]
inc eax
mov dword [ebp - 0xa0], eax
cmp dword [ebp - 0xa0], 3
jg 0x10043e6a
mov dword [ebp - 0x108], 0xf8b8ae50
mov dword [ebp - 0x108], 3
jmp 0x10043e53
mov eax, dword [ebp - 0x108]
dec eax
mov dword [ebp - 0x108], eax
cmp dword [ebp - 0x108], 0
jl 0x10043e68
call fcn.1004270d
call fcn.10042742
jmp 0x10043e46
jmp 0x10043e1a
lea eax, [ebp - 0x118]
push eax
push 1
push 0x45e1
push 1
lea eax, [ebp - 0xa0]
push eax
push 0x44ce
push 0x3627
call fcn.10040efb
add esp, 0x1c
jmp 0x10043dea
cmp dword [ebp - 0x84], 1
jge 0x10043ead
mov dword [ebp - 0x30c], 1
jmp 0x10043eb4
and dword [ebp - 0x30c], 0
mov eax, dword [ebp - 0x118]
mov dword [ebp - 0x434], eax
mov eax, dword [ebp - 0x74]
mov dword [ebp - 0x438], eax
mov eax, dword [ebp - 0x118]
mov dword [ebp - 0x440], eax
mov eax, dword [ebp - 0x7c]
cmp dword [ebp - 0x7c], eax
jg 0x10043ee9
mov dword [ebp - 0x14c], 1
jmp 0x10043ef0
and dword [ebp - 0x14c], 0
mov eax, dword [ebp - 0x84]
add eax, dword [ebp - 0x14c]
push 4
pop ecx
imul ecx, ecx, 3
mov dword [ebp + ecx - 0x508], eax
jmp 0x10043dc3
jmp 0x10043d7c
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x478]
call fcn.1001273e
jmp 0x10043cda
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x3fc]
call fcn.1001273e
push dword [ebp - 0x28]
call fcn.100369ee
pop ecx
test eax, eax
jne 0x10043f4a
xor eax, eax
jmp 0x10044e78
mov dword [ebp - 0x30], 0xfe1ca296
mov dword [ebp - 0x11c], 0xe6e4
mov dword [ebp - 0xf8], 0x2f67ab6c
mov dword [ebp - 0x388], 0xc4ce10b4
mov dword [ebp - 0x384], 0xc4ce10b4
mov dword [ebp - 0x380], 0xc4ce10b4
mov dword [ebp - 0x37c], 0xc4ce10b4
mov dword [ebp - 0x448], 0x7697ab83
mov dword [ebp - 0x2c], 0
jmp 0x10043fa7
mov eax, dword [ebp - 0x2c]
inc eax
mov dword [ebp - 0x2c], eax
cmp dword [ebp - 0x2c], 1
jge 0x10043fba
mov eax, dword [ebp - 0x2c]
mov dword [ebp + eax*4 - 0x38], 0x8b92
jmp 0x10043fa0
mov dword [ebp - 0x2c], 0
jmp 0x10043fca
mov eax, dword [ebp - 0x2c]
inc eax
mov dword [ebp - 0x2c], eax
cmp dword [ebp - 0x2c], 1
jge 0x10043fe0
mov eax, dword [ebp - 0x2c]
mov dword [ebp + eax*4 - 0x314], 0x955f1bb1
jmp 0x10043fc3
mov eax, dword [ebp - 0x30]
mov dword [ebp - 0x490], eax
cmp dword [ebp - 0x30], 0
je 0x10044004
mov eax, 0x176df7e
test eax, eax
je 0x10044004
mov dword [ebp - 0x178], 1
jmp 0x1004400b
and dword [ebp - 0x178], 0
push 4
pop eax
imul eax, eax, 0
mov ecx, dword [ebp - 0x178]
sub ecx, dword [ebp + eax - 0x38]
je 0x10044021
cmp dword [ebp - 0x30], 0
push 4
pop eax
imul eax, eax, 0
push 4
pop ecx
imul ecx, ecx, 0
mov ecx, dword [ebp + ecx - 0x38]
cmp dword [ebp + eax - 0x38], ecx
jge 0x10044043
mov dword [ebp - 0x36c], 1
jmp 0x1004404a
and dword [ebp - 0x36c], 0
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x38]
mov dword [ebp - 0x430], eax
mov eax, dword [ebp - 0x30]
cmp dword [ebp - 0x30], eax
je 0x1004407b
push 4
pop eax
imul eax, eax, 0
cmp dword [ebp + eax - 0x38], 0
je 0x1004407b
mov dword [ebp - 0x180], 1
jmp 0x10044082
and dword [ebp - 0x180], 0
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x38]
cmp dword [ebp - 0x180], eax
jg 0x100440a3
cmp dword [ebp - 0x30], 0
jne 0x100440a3
and dword [ebp - 0x188], 0
jmp 0x100440ad
mov dword [ebp - 0x188], 1
mov eax, dword [ebp - 0x188]
mov dword [ebp - 0x11c], eax
mov eax, dword [ebp - 0x11c]
push 4
pop ecx
imul ecx, ecx, 0
sub eax, dword [ebp + ecx - 0x38]
cmp eax, 1
jle 0x100440da
mov dword [ebp - 0x190], 1
jmp 0x100440e1
and dword [ebp - 0x190], 0
mov eax, dword [ebp - 0x30]
cmp dword [ebp - 0x190], eax
je 0x100440f8
mov dword [ebp - 0x198], 1
jmp 0x100440ff
and dword [ebp - 0x198], 0
mov eax, dword [ebp - 0x30]
add eax, dword [ebp - 0x30]
cmp eax, dword [ebp - 0x198]
jl 0x10044119
mov dword [ebp - 0x1a0], 1
jmp 0x10044120
and dword [ebp - 0x1a0], 0
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x38]
cmp dword [ebp - 0x1a0], eax
jle 0x10044144
cmp dword [ebp - 0x11c], 0
jne 0x10044144
and dword [ebp - 0x1a8], 0
jmp 0x1004414e
mov dword [ebp - 0x1a8], 1
mov eax, dword [ebp - 0x1a8]
mov dword [ebp - 0xf8], eax
mov eax, dword [ebp - 0xf8]
mov dword [ebp - 0xf8], eax
mov eax, dword [ebp - 0xf8]
push 4
pop ecx
shl ecx, 0
add eax, dword [ebp + ecx - 0x388]
push 4
pop ecx
imul ecx, ecx, 0
mov dword [ebp + ecx - 0x314], eax
push 4
pop eax
shl eax, 0
mov eax, dword [ebp + eax - 0x388]
dec eax
push 4
pop ecx
shl ecx, 0
mov dword [ebp + ecx - 0x388], eax
push 1
push 0x4241
push 0
push 1
push 0x32b6
push 0x58bc
push 0x505
push 0x1c18
push dword [ebp - 0x28]
push 0x7d7a
push 0x58cc
call fcn.1002b2fa
add esp, 0x2c
mov eax, dword [ebp - 0x28]
mov eax, dword [eax]
cmp dword [eax + 0x28], 0
je 0x10044e57
mov eax, dword [ebp - 0x28]
mov eax, dword [eax]
mov ecx, dword [ebp - 0xc0]
add ecx, dword [eax + 0x28]
mov dword [ebp - 0x228], ecx
push 1
lea ecx, [ebp - 0x368]
call fcn.100126dc
mov dword [ebp - 4], 6
mov dword [ebp - 0x40], 0
mov dword [ebp - 0x1b0], 0x3607a988
mov dword [ebp - 0x31c], 0
mov dword [ebp - 0xa8], 0xafbd13d
lea eax, [ebp - 0x368]
push eax
lea eax, [ebp - 0x4a0]
push eax
call fcn.10042768
pop ecx
pop ecx
mov dword [ebp - 0x40], 0
jmp 0x10044256
mov eax, dword [ebp - 0x40]
dec eax
mov dword [ebp - 0x40], eax
cmp dword [ebp - 0x40], 0
jl 0x10044347
mov dword [ebp - 0x1b0], 0xfffffffe
mov eax, dword [ebp - 0x1b0]
cmp dword [ebp - 0x40], eax
jl 0x10044281
mov dword [ebp - 0x34c], 1
jmp 0x10044288
and dword [ebp - 0x34c], 0
push dword [ebp - 0x40]
lea ecx, [ebp - 0x368]
call fcn.10012743
push dword [ebp - 0x40]
lea ecx, [ebp - 0x368]
call fcn.10012743
cmp dword [eax], 0xcef9
je 0x100442c1
cmp dword [ebp - 0x31c], 0
je 0x100442c1
mov dword [ebp - 0x1b8], 1
jmp 0x100442c8
and dword [ebp - 0x1b8], 0
push dword [ebp - 0x40]
lea ecx, [ebp - 0x368]
call fcn.10012743
mov ecx, dword [ebp - 0x1b8]
cmp ecx, dword [eax]
je 0x100442ec
mov dword [ebp - 0x35c], 1
jmp 0x100442f3
and dword [ebp - 0x35c], 0
xor eax, eax
cmp eax, 1
jne 0x10044306
mov dword [ebp - 0x1c0], 1
jmp 0x1004430d
and dword [ebp - 0x1c0], 0
mov eax, dword [ebp - 0x1c0]
mov dword [ebp - 0xa8], eax
mov dword [ebp - 0xa8], 0
jmp 0x10044332
mov eax, dword [ebp - 0xa8]
inc eax
mov dword [ebp - 0xa8], eax
cmp dword [ebp - 0xa8], 0
jg 0x10044342
call fcn.100427b0
jmp 0x10044325
jmp 0x1004424f
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x368]
call fcn.1001273e
cmp dword [ebp - 0x228], 0
jne 0x100447ae
push 2
lea ecx, [ebp - 0xb8]
call fcn.100126dc
mov dword [ebp - 4], 7
mov dword [ebp - 0x124], 0xda862840
mov dword [ebp - 0x4a8], 0x23cb8e00
mov dword [ebp - 0x4b0], 0x3c3fa3c
push 3
lea ecx, [ebp - 0x488]
call fcn.100126dc
mov byte [ebp - 4], 8
mov dword [ebp - 0xc4], 0x5296947a
mov dword [ebp - 0x218], 1
mov dword [ebp - 0x18], 0
jmp 0x100443ca
mov eax, dword [ebp - 0x18]
inc eax
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], 4
jge 0x100443e0
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x41c], 0xc93b4e1
jmp 0x100443c3
lea eax, [ebp - 0xb8]
push eax
lea eax, [ebp - 0x18]
push eax
call fcn.100427e5
pop ecx
pop ecx
mov dword [ebp - 0x18], 0
jmp 0x10044402
mov eax, dword [ebp - 0x18]
inc eax
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], 1
jge 0x10044418
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x220], 0x5e45db0f
jmp 0x100443fb
mov dword [ebp - 0x18], 0
jmp 0x10044428
mov eax, dword [ebp - 0x18]
inc eax
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], 3
jge 0x10044444
push dword [ebp - 0x18]
lea ecx, [ebp - 0x488]
call fcn.10012743
mov dword [eax], 0xb60f9aa2
jmp 0x10044421
push 1
lea ecx, [ebp - 0xb8]
call fcn.10012743
mov dword [eax], 3
jmp 0x1004447d
push 1
lea ecx, [ebp - 0xb8]
call fcn.10012743
mov dword [ebp - 0x1c8], eax
mov eax, dword [ebp - 0x1c8]
mov eax, dword [eax]
dec eax
mov ecx, dword [ebp - 0x1c8]
mov dword [ecx], eax
push 1
lea ecx, [ebp - 0xb8]
call fcn.10012743
cmp dword [eax], 0
jl 0x10044789
mov dword [ebp - 0x64], 0x2d91509c
mov dword [ebp - 0x4c8], 0x656540f2
mov dword [ebp - 0x200], 0xfffffff8
mov dword [ebp - 0x4d0], 0xffffffff
mov dword [ebp - 0x2e8], 6
push 3
lea ecx, [ebp - 0x3f0]
call fcn.100126dc
mov byte [ebp - 4], 9
lea eax, [ebp - 0x3f0]
push eax
lea eax, [ebp - 0x4c4]
push eax
call fcn.1004282d
pop ecx
pop ecx
push 1
lea ecx, [ebp - 0xb8]
call fcn.10012743
mov eax, dword [eax]
mov eax, dword [ebp + eax*4 - 0x41c]
mov dword [ebp - 0x1d0], eax
push 1
lea ecx, [ebp - 0xb8]
call fcn.10012743
mov eax, dword [eax]
mov ecx, dword [ebp - 0x1d0]
mov dword [ebp + eax*4 - 0x41c], ecx
mov eax, dword [ebp - 0x64]
cmp dword [ebp - 0x1d0], eax
jle 0x10044537
mov dword [ebp - 0x1d8], 1
jmp 0x1004453e
and dword [ebp - 0x1d8], 0
mov eax, dword [ebp - 0x64]
cmp dword [ebp - 0x1d8], eax
jle 0x10044555
mov dword [ebp - 0x324], 1
jmp 0x1004455c
and dword [ebp - 0x324], 0
push 1
lea ecx, [ebp - 0xb8]
call fcn.10012743
mov eax, dword [ebp - 0x64]
mov dword [ebp - 0x43c], eax
push 1
lea ecx, [ebp - 0xb8]
call fcn.10012743
mov esi, eax
push 0
lea ecx, [ebp - 0xb8]
call fcn.10012743
mov ecx, dword [esi]
cmp ecx, dword [eax]
jge 0x100445a0
mov dword [ebp - 0x1e0], 1
jmp 0x100445a7
and dword [ebp - 0x1e0], 0
mov eax, dword [ebp - 0x64]
cmp dword [ebp - 0x1e0], eax
jge 0x100445be
mov dword [ebp - 0x1e8], 1
jmp 0x100445c5
and dword [ebp - 0x1e8], 0
mov eax, 0x63e31551
sub eax, dword [ebp - 0x1e8]
mov dword [ebp - 0x124], eax
push 0
lea ecx, [ebp - 0xb8]
call fcn.10012743
cmp dword [eax], 0
jne 0x10044739
cmp dword [ebp - 0x200], 0x83ce7179
je 0x10044604
mov dword [ebp - 0x1f0], 1
jmp 0x1004460b
and dword [ebp - 0x1f0], 0
mov eax, dword [ebp - 0xc4]
mov dword [ebp - 0x338], eax
mov eax, dword [ebp - 0x1f0]
mov dword [ebp - 0x330], eax
mov eax, dword [ebp - 0xc4]
dec eax
mov dword [ebp - 0xc4], eax
mov eax, dword [ebp - 0x338]
cmp eax, dword [ebp - 0x330]
jle 0x1004464a
mov dword [ebp - 0x1f8], 1
jmp 0x10044651
and dword [ebp - 0x1f8], 0
push 1
lea ecx, [ebp - 0xb8]
call fcn.10012743
mov eax, dword [eax]
mov eax, dword [ebp + eax*4 - 0x41c]
cmp dword [ebp - 0x1f8], eax
jle 0x1004467b
mov dword [ebp - 0x2e4], 1
jmp 0x10044682
and dword [ebp - 0x2e4], 0
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x220]
mov dword [ebp - 0x4a4], eax
mov eax, dword [ebp - 0x200]
cmp dword [ebp - 0x64], eax
je 0x100446ac
mov dword [ebp - 0x208], 1
jmp 0x100446b3
and dword [ebp - 0x208], 0
mov eax, dword [ebp - 0x64]
mov dword [ebp - 0x124], eax
mov eax, dword [ebp - 0x124]
mov ecx, dword [ebp - 0x2e8]
imul ecx, dword [ebp - 0x208]
sub eax, ecx
cmp eax, dword [ebp - 0x64]
jle 0x100446eb
cmp dword [ebp - 0xc4], 0
je 0x100446eb
mov dword [ebp - 0x2f0], 1
jmp 0x100446f2
and dword [ebp - 0x2f0], 0
push 1
lea ecx, [ebp - 0xb8]
call fcn.10012743
mov eax, dword [eax]
mov eax, dword [ebp + eax*4 - 0x41c]
mov dword [ebp - 0x444], eax
push 0
lea ecx, [ebp - 0x3f0]
call fcn.10012743
mov esi, eax
push 1
lea ecx, [ebp - 0xb8]
call fcn.10012743
mov ecx, dword [esi]
cmp ecx, dword [eax]
jl 0x10044739
and dword [ebp - 0x210], 0
jmp 0x10044743
mov dword [ebp - 0x210], 1
imul esi, dword [ebp - 0x210], 0xf970
push 1
lea ecx, [ebp - 0xb8]
call fcn.10012743
add esi, dword [eax]
mov dword [ebp - 0x218], esi
push 4
pop eax
imul eax, eax, 0
mov ecx, dword [ebp - 0x218]
mov dword [ebp + eax - 0x220], ecx
mov byte [ebp - 4], 8
lea ecx, [ebp - 0x3f0]
call fcn.1001273e
jmp 0x10044459
mov byte [ebp - 4], 7
lea ecx, [ebp - 0x488]
call fcn.1001273e
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0xb8]
call fcn.1001273e
xor eax, eax
jmp 0x10044e78
push 0
push 1
push 0xdeadbeef
call dword [ebp - 0x228]
mov dword [ebp - 0x2f8], eax
cmp dword [ebp - 0x2f8], 0
jne 0x10044ad7
mov dword [ebp - 0x3c], 0xfff7
mov dword [ebp - 0x3b8], 0xfffffffa
mov dword [ebp - 0x3b4], 0xfffffffa
mov dword [ebp - 0x3b0], 0xfffffffa
mov dword [ebp - 0x3ac], 0xfffffffa
mov dword [ebp - 0x240], 0x335c0de4
mov dword [ebp - 0x68], 0xfffffff9
mov dword [ebp - 0x6c], 1
mov dword [ebp - 0x4b4], 0
mov eax, dword [ebp - 0x3c]
neg eax
cmp eax, dword [ebp - 0x3c]
jg 0x10044837
mov dword [ebp - 0x230], 1
jmp 0x1004483e
and dword [ebp - 0x230], 0
mov eax, dword [ebp - 0x3c]
cmp eax, dword [ebp - 0x230]
je 0x10044855
mov dword [ebp - 0x250], 1
jmp 0x1004485c
and dword [ebp - 0x250], 0
cmp dword [ebp - 0x3c], 1
jg 0x1004486e
mov dword [ebp - 0x238], 1
jmp 0x10044875
and dword [ebp - 0x238], 0
imul eax, dword [ebp - 0x238], 0xfffffffb
cmp eax, 0x5ac3d6c1
jl 0x1004489b
cmp dword [ebp - 0x3c], 0
je 0x1004489b
cmp dword [ebp - 0x3c], 0
je 0x1004489b
mov dword [ebp - 0x2e0], 1
jmp 0x100448a2
and dword [ebp - 0x2e0], 0
mov eax, dword [ebp - 0x240]
mov dword [ebp - 0x44c], eax
mov eax, dword [ebp - 0x68]
mov dword [ebp - 0x4ac], eax
cmp dword [ebp - 0x240], 0xfffffffc
jge 0x100448cc
mov dword [ebp - 0x248], 1
jmp 0x100448d3
and dword [ebp - 0x248], 0
cmp dword [ebp - 0x248], 1
ja 0x100448e8
mov dword [ebp - 0x308], 1
jmp 0x100448ef
and dword [ebp - 0x308], 0
push 4
pop eax
shl eax, 0
mov ecx, dword [ebp - 0x250]
mov dword [ebp + eax - 0x3b8], ecx
mov eax, dword [ebp - 0x3c]
mov dword [ebp - 0x45c], eax
cmp dword [ebp - 0x6c], 0
jne 0x10044920
cmp dword [ebp - 0x3c], 0
jne 0x10044920
and dword [ebp - 0x258], 0
jmp 0x1004492a
mov dword [ebp - 0x258], 1
mov eax, dword [ebp - 0x6c]
cmp dword [ebp - 0x258], eax
je 0x10044941
mov dword [ebp - 0x260], 1
jmp 0x10044948
and dword [ebp - 0x260], 0
cmp dword [ebp - 0x260], 1
jg 0x10044a9f
push 1
lea ecx, [ebp - 0x3d8]
call fcn.100126dc
mov dword [ebp - 4], 0xa
mov dword [ebp - 0xcc], 0
jmp 0x10044982
mov eax, dword [ebp - 0xcc]
inc eax
mov dword [ebp - 0xcc], eax
cmp dword [ebp - 0xcc], 1
jge 0x100449a4
push dword [ebp - 0xcc]
lea ecx, [ebp - 0x3d8]
call fcn.10012743
mov dword [eax], 0xc53a21b7
jmp 0x10044975
mov byte [ebp - 0x5d], 0
movzx eax, byte [ebp - 0x5d]
test eax, eax
je 0x100449cd
push 0x6a3b
push 1
push 0x1f44
push 1
push 0x7d12
push 1
call fcn.100410e9
add esp, 0x18
mov dword [ebp - 0x6c], 0
jmp 0x100449dd
mov eax, dword [ebp - 0x6c]
inc eax
mov dword [ebp - 0x6c], eax
cmp dword [ebp - 0x6c], 0x13
jne 0x10044a8e
mov dword [ebp - 0x42c], 0xffffffff
mov dword [ebp - 0x428], 0xffffffff
mov dword [ebp - 0x424], 0xffffffff
mov dword [ebp - 0x420], 0xffffffff
mov dword [ebp - 0x310], 0xfffffff7
push 4
pop eax
imul eax, eax, 3
cmp dword [ebp + eax - 0x42c], 0
je 0x10044a4c
mov dword [ebp - 0x268], 0xe96b
mov eax, dword [ebp - 0x268]
dec eax
mov dword [ebp - 0x268], eax
mov dword [ebp - 0x310], 1
jmp 0x10044a89
mov dword [ebp - 0x68], 0
jmp 0x10044a5c
mov eax, dword [ebp - 0x68]
inc eax
mov dword [ebp - 0x68], eax
cmp dword [ebp - 0x68], 4
jge 0x10044a72
mov eax, dword [ebp - 0x68]
mov dword [ebp + eax*4 - 0x3b8], 0xa5c1b09c
jmp 0x10044a55
push 0
lea ecx, [ebp - 0x3d8]
call fcn.10012743
cmp dword [eax], 0
je 0x10044a89
jmp 0x100449d6
jmp 0x100449d6
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x3d8]
call fcn.1001273e
jmp 0x10044aad
mov byte [ebp - 0x48], 0
lea eax, [ebp - 0x48]
push eax
call fcn.10042875
pop ecx
mov byte [ebp - 0x42], 0
push 0x3ef9
push 1
push 0x706f
push 1
lea eax, [ebp - 0x42]
push eax
call fcn.10041304
add esp, 0x14
call fcn.100428ad
xor eax, eax
jmp 0x10044e78
mov dword [ebp - 0x14], 0xfff6
mov dword [ebp - 0x24], 1
push 3
lea ecx, [ebp - 0x3e4]
call fcn.100126dc
mov dword [ebp - 4], 0xb
mov dword [ebp - 0xd4], 0
jmp 0x10044b12
mov eax, dword [ebp - 0xd4]
inc eax
mov dword [ebp - 0xd4], eax
cmp dword [ebp - 0xd4], 3
jge 0x10044b34
push dword [ebp - 0xd4]
lea ecx, [ebp - 0x3e4]
call fcn.10012743
mov dword [eax], 0x638299fa
jmp 0x10044b05
mov eax, dword [ebp - 0x14]
sub eax, 0xffff
mov dword [ebp - 0x24], eax
jne 0x10044b5d
mov eax, dword [ebp - 0x14]
add eax, dword [ebp - 0x24]
cmp eax, dword [ebp - 0x14]
mov eax, 0x38dc5336
sub eax, dword [ebp - 0x14]
jne 0x10044b5d
and dword [ebp - 0x270], 0
jmp 0x10044b67
mov dword [ebp - 0x270], 1
mov eax, dword [ebp - 0x14]
cmp eax, dword [ebp - 0x270]
je 0x10044b7e
mov dword [ebp - 0x278], 1
jmp 0x10044b85
and dword [ebp - 0x278], 0
mov eax, dword [ebp - 0x14]
cmp eax, dword [ebp - 0x278]
je 0x10044b9c
mov dword [ebp - 0x280], 1
jmp 0x10044ba3
and dword [ebp - 0x280], 0
mov eax, dword [ebp - 0x14]
cmp dword [ebp - 0x280], eax
jg 0x10044bea
mov dword [ebp - 0x14], 0x1b
jmp 0x10044bbe
mov eax, dword [ebp - 0x14]
inc eax
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], 0x2c
jne 0x10044be5
call fcn.10042952
push 1
push 0x36
push 0x17
push 0x2224
push 1
push 0x3ec4
call fcn.100423f5
add esp, 0x18
jmp 0x10044bb7
jmp 0x10044e3e
push 1
lea ecx, [ebp - 0x394]
call fcn.100126dc
mov byte [ebp - 4], 0xc
mov dword [ebp - 0xe4], 0
jmp 0x10044c14
mov eax, dword [ebp - 0xe4]
inc eax
mov dword [ebp - 0xe4], eax
cmp dword [ebp - 0xe4], 1
jge 0x10044c36
push dword [ebp - 0xe4]
lea ecx, [ebp - 0x394]
call fcn.10012743
mov dword [eax], 0xffff
jmp 0x10044c07
mov dword [ebp - 0x24], 0
jmp 0x10044c46
mov eax, dword [ebp - 0x24]
dec eax
mov dword [ebp - 0x24], eax
cmp dword [ebp - 0x24], 0
jl 0x10044e2f
mov dword [ebp - 0xec], 0
jmp 0x10044c69
mov eax, dword [ebp - 0xec]
inc eax
mov dword [ebp - 0xec], eax
cmp dword [ebp - 0xec], 2
jge 0x10044c85
mov eax, dword [ebp - 0xec]
mov dword [ebp + eax*4 - 0x32c], 0xfffffffd
jmp 0x10044c5c
mov dword [ebp - 0x14], 0
jmp 0x10044c95
mov eax, dword [ebp - 0x14]
inc eax
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], 0
jg 0x10044dd4
push 2
lea ecx, [ebp - 0x378]
call fcn.100126dc
mov byte [ebp - 4], 0xd
mov dword [ebp - 0xf4], 0
jmp 0x10044cc9
mov eax, dword [ebp - 0xf4]
inc eax
mov dword [ebp - 0xf4], eax
cmp dword [ebp - 0xf4], 2
jge 0x10044ceb
push dword [ebp - 0xf4]
lea ecx, [ebp - 0x378]
call fcn.10012743
mov dword [eax], 0xe936be85
jmp 0x10044cbc
push 1
lea ecx, [ebp - 0x378]
call fcn.10012743
and dword [eax], 0
jmp 0x10044d21
push 1
lea ecx, [ebp - 0x378]
call fcn.10012743
mov dword [ebp - 0x288], eax
mov eax, dword [ebp - 0x288]
mov eax, dword [eax]
inc eax
mov ecx, dword [ebp - 0x288]
mov dword [ecx], eax
push 1
lea ecx, [ebp - 0x378]
call fcn.10012743
cmp dword [eax], 0
jg 0x10044dc0
mov dword [ebp - 0x318], 0xbd18
push dword [ebp - 0x24]
lea ecx, [ebp - 0x394]
call fcn.10012743
cmp dword [eax], 0x4d07
je 0x10044d63
mov dword [ebp - 0x290], 1
jmp 0x10044d6a
and dword [ebp - 0x290], 0
push 4
pop eax
imul eax, eax, 0
mov ecx, dword [ebp - 0x290]
mov dword [ebp + eax - 0x32c], ecx
push dword [ebp - 0x24]
lea ecx, [ebp - 0x394]
call fcn.10012743
push 4
pop ecx
shl ecx, 0
mov ecx, dword [ebp + ecx - 0x32c]
cmp dword [eax], ecx
jl 0x10044da8
mov dword [ebp - 0x298], 1
jmp 0x10044daf
and dword [ebp - 0x298], 0
mov eax, dword [ebp - 0x298]
mov dword [ebp - 0x318], eax
jmp 0x10044cfd
mov byte [ebp - 4], 0xc
lea ecx, [ebp - 0x378]
call fcn.1001273e
jmp 0x10044c8e
push 4
pop eax
shl eax, 0
mov eax, dword [ebp + eax - 0x32c]
cmp dword [ebp - 0x24], eax
jge 0x10044df2
mov dword [ebp - 0x2a0], 1
jmp 0x10044df9
and dword [ebp - 0x2a0], 0
cmp dword [ebp - 0x2a0], 7
ja 0x10044e0e
mov dword [ebp - 0x150], 1
jmp 0x10044e15
and dword [ebp - 0x150], 0
push 1
lea ecx, [ebp - 0x3e4]
call fcn.10012743
mov ecx, dword [ebp - 0x150]
mov dword [eax], ecx
jmp 0x10044c3f
mov byte [ebp - 4], 0xb
lea ecx, [ebp - 0x394]
call fcn.1001273e
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x3e4]
call fcn.1001273e
mov eax, dword [ebp - 0x28]
mov dword [eax + 0x10], 1
mov eax, dword [ebp - 0x28]
cmp dword [eax + 0x10], 0
je 0x10044e6b
mov eax, dword [ebp - 0x28]
mov dword [ebp - 0x154], eax
jmp 0x10044e72
and dword [ebp - 0x154], 0
mov eax, dword [ebp - 0x154]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop esi
mov esp, ebp
pop ebp
ret