Function at 0x1005067d
Capabilities:
Check os version
Contain obfuscated stackstrings
Parse pe header
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x1008c508
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0xbf8
push esi
and dword [ebp - 0x18], 0
movzx eax, byte [ebp + 0x24]
test eax, eax
je 0x10055d62
mov eax, dword [ebp + 0x1c]
mov dword [ebp - 0x34], eax
push 3
lea ecx, [ebp - 0x838]
call fcn.10019689
and dword [ebp - 4], 0
mov dword [ebp - 0x9c], 0x432a2768
mov dword [ebp - 0x6fc], 0
lea eax, [ebp - 0x838]
push eax
push 0x6a28
lea eax, [ebp - 0x9dc]
push eax
push 0x835
push 0
call fcn.1004f0e5
add esp, 0x14
mov dword [ebp - 0x9c], 0
jmp 0x10050712
mov eax, dword [ebp - 0x9c]
inc eax
mov dword [ebp - 0x9c], eax
cmp dword [ebp - 0x9c], 2
jg 0x100507eb
push dword [ebp - 0x9c]
lea ecx, [ebp - 0x838]
call fcn.10019727
cmp dword [eax], 0
je 0x10050757
push dword [ebp - 0x9c]
lea ecx, [ebp - 0x838]
call fcn.10019727
cmp dword [eax], 0
je 0x10050757
mov dword [ebp - 0x390], 1
jmp 0x1005075e
and dword [ebp - 0x390], 0
push dword [ebp - 0x9c]
lea ecx, [ebp - 0x838]
call fcn.10019727
cmp dword [eax], 0xffff
ja 0x1005078c
cmp dword [ebp - 0x9c], 0
je 0x1005078c
mov dword [ebp - 0x668], 1
jmp 0x10050793
and dword [ebp - 0x668], 0
mov eax, dword [ebp - 0x390]
cmp eax, dword [ebp - 0x668]
jg 0x100507ad
mov dword [ebp - 0x670], 1
jmp 0x100507b4
and dword [ebp - 0x670], 0
mov eax, dword [ebp - 0x670]
mov dword [ebp - 0x6fc], eax
mov byte [ebp - 0xa9], 0
movzx eax, byte [ebp - 0xa9]
test eax, eax
je 0x100507e6
push 0x4dc7
push 0x1a0e
push 0
call fcn.10050525
add esp, 0xc
jmp 0x10050705
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x838]
call fcn.1001970b
mov eax, dword [ebp - 0x34]
mov dword [ebp - 0x620], eax
push 1
lea ecx, [ebp - 0x970]
call fcn.10019689
mov dword [ebp - 4], 1
mov dword [ebp - 0x160], 0
mov dword [ebp - 0xa00], 0x1ad67a4b
mov dword [ebp - 0x9e0], 0
mov dword [ebp - 0xd0], 0x11e7bff4
mov dword [ebp - 0x244], 0
jmp 0x10050858
mov eax, dword [ebp - 0x244]
inc eax
mov dword [ebp - 0x244], eax
cmp dword [ebp - 0x244], 1
jge 0x1005087a
push dword [ebp - 0x244]
lea ecx, [ebp - 0x970]
call fcn.10019727
mov dword [eax], 0x75dc
jmp 0x1005084b
mov dword [ebp - 0x160], 0
jmp 0x10050893
mov eax, dword [ebp - 0x160]
dec eax
mov dword [ebp - 0x160], eax
cmp dword [ebp - 0x160], 0
jl 0x10050a38
mov dword [ebp - 0x168], 5
mov dword [ebp - 0x88], 1
mov dword [ebp - 0xa08], 0
mov dword [ebp - 0x214], 0
jmp 0x100508d7
mov eax, dword [ebp - 0x214]
inc eax
mov dword [ebp - 0x214], eax
cmp dword [ebp - 0x214], 3
jge 0x100508f3
mov eax, dword [ebp - 0x214]
mov dword [ebp + eax*4 - 0xbd8], 0
jmp 0x100508ca
mov dword [ebp - 0x168], 0
jmp 0x1005090c
mov eax, dword [ebp - 0x168]
inc eax
mov dword [ebp - 0x168], eax
cmp dword [ebp - 0x168], 0
jg 0x10050959
mov dword [ebp - 0x9e8], 0xe7308f47
push 0x33f2
lea eax, [ebp - 0x970]
push eax
push 0
lea eax, [ebp - 0x160]
push eax
lea eax, [ebp - 0x168]
push eax
lea eax, [ebp - 0x88]
push eax
call fcn.1004f7d6
add esp, 0x18
mov eax, dword [ebp - 0xd0]
inc eax
mov dword [ebp - 0xd0], eax
jmp 0x100508ff
mov dword [ebp - 0x88], 0
jmp 0x10050972
mov eax, dword [ebp - 0x88]
inc eax
mov dword [ebp - 0x88], eax
cmp dword [ebp - 0x88], 0
jg 0x100509ba
mov byte [ebp - 0x9e], 0
push 1
lea eax, [ebp - 0x9e]
push eax
call fcn.1004e555
pop ecx
pop ecx
mov byte [ebp - 0x9f], 0
movzx eax, byte [ebp - 0x9f]
test eax, eax
je 0x100509b8
push 0x5f72
push 0x3b7d
push 0
call fcn.1004f278
add esp, 0xc
jmp 0x10050965
mov dword [ebp - 0x88], 0
jmp 0x100509d3
mov eax, dword [ebp - 0x88]
dec eax
mov dword [ebp - 0x88], eax
cmp dword [ebp - 0x88], 0
jl 0x10050a33
mov dword [ebp - 0xd0], 0
jmp 0x100509f5
mov eax, dword [ebp - 0xd0]
inc eax
mov dword [ebp - 0xd0], eax
cmp dword [ebp - 0xd0], 0
jg 0x10050a31
mov dword [ebp - 0x694], 0xc097bc8b
mov eax, dword [ebp - 0x694]
inc eax
mov dword [ebp - 0x694], eax
mov byte [ebp - 0xa1], 0
movzx eax, byte [ebp - 0xa1]
test eax, eax
je 0x10050a2f
push 1
call fcn.1004e59d
pop ecx
jmp 0x100509e8
jmp 0x100509c6
jmp 0x10050886
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x970]
call fcn.1001970b
mov eax, dword [ebp - 0x620]
movzx eax, word [eax]
cmp eax, 0x5a4d
je 0x10050a5c
jmp 0x10055eda
push 1
lea ecx, [ebp - 0x2e8]
call fcn.10019689
mov dword [ebp - 4], 2
and dword [ebp - 0x8bc], 0
and dword [ebp - 0x8b8], 0
and dword [ebp - 0x8b4], 0
and dword [ebp - 0x8b0], 0
lea ecx, [ebp - 0x2d5]
call fcn.100093d3
push eax
lea eax, [ebp - 0x8ac]
push eax
lea eax, [ebp - 0x8bc]
push eax
lea ecx, [ebp - 0xacc]
call fcn.10019736
push dword [eax + 4]
push dword [eax]
lea ecx, [ebp - 0x6f8]
call fcn.100196e5
mov byte [ebp - 4], 3
mov dword [ebp - 0x78], 0
jmp 0x10050ad5
mov eax, dword [ebp - 0x78]
inc eax
mov dword [ebp - 0x78], eax
cmp dword [ebp - 0x78], 1
jge 0x10050aeb
mov eax, dword [ebp - 0x78]
mov dword [ebp + eax*4 - 0x1dc], 1
jmp 0x10050ace
mov dword [ebp - 0x78], 0
jmp 0x10050afb
mov eax, dword [ebp - 0x78]
inc eax
mov dword [ebp - 0x78], eax
cmp dword [ebp - 0x78], 1
jge 0x10050b14
push dword [ebp - 0x78]
lea ecx, [ebp - 0x2e8]
call fcn.10019727
or dword [eax], 0xffffffff
jmp 0x10050af4
push 0
lea ecx, [ebp - 0x2e8]
call fcn.10019727
and dword [eax], 0
jmp 0x10050b4a
push 0
lea ecx, [ebp - 0x2e8]
call fcn.10019727
mov dword [ebp - 0x69c], eax
mov eax, dword [ebp - 0x69c]
mov eax, dword [eax]
inc eax
mov ecx, dword [ebp - 0x69c]
mov dword [ecx], eax
push 0
lea ecx, [ebp - 0x2e8]
call fcn.10019727
cmp dword [eax], 1
jge 0x10050b78
push 0
lea ecx, [ebp - 0x2e8]
call fcn.10019727
mov eax, dword [eax]
mov dword [ebp + eax*4 - 0x1dc], 0x743d
jmp 0x10050b26
push 0
lea ecx, [ebp - 0x6f8]
call fcn.10019727
and dword [eax], 0
jmp 0x10050bae
push 0
lea ecx, [ebp - 0x6f8]
call fcn.10019727
mov dword [ebp - 0x6a4], eax
mov eax, dword [ebp - 0x6a4]
mov eax, dword [eax]
dec eax
mov ecx, dword [ebp - 0x6a4]
mov dword [ecx], eax
push 0
lea ecx, [ebp - 0x6f8]
call fcn.10019727
cmp dword [eax], 0
jl 0x10050e06
mov dword [ebp - 0x238], 0
jmp 0x10050bdd
mov eax, dword [ebp - 0x238]
inc eax
mov dword [ebp - 0x238], eax
cmp dword [ebp - 0x238], 2
jge 0x10050bf9
mov eax, dword [ebp - 0x238]
mov dword [ebp + eax*4 - 0x294], 0xc4279c41
jmp 0x10050bd0
mov byte [ebp - 0xa3], 0
movzx eax, byte [ebp - 0xa3]
test eax, eax
je 0x10050c1f
push 0
push 0x62a6
push 0x1502
call fcn.1004fc74
add esp, 0xc
push 4
pop eax
shl eax, 0
mov dword [ebp + eax - 0x294], 0
jmp 0x10050c4d
push 4
pop eax
shl eax, 0
mov eax, dword [ebp + eax - 0x294]
inc eax
push 4
pop ecx
shl ecx, 0
mov dword [ebp + ecx - 0x294], eax
push 4
pop eax
shl eax, 0
cmp dword [ebp + eax - 0x294], 0
jg 0x10050e01
mov dword [ebp - 0x6ac], 0x9193c1de
mov dword [ebp - 0x328], 7
push 4
pop eax
shl eax, 0
push dword [ebp + eax - 0x294]
lea ecx, [ebp - 0x2e8]
call fcn.10019727
cmp dword [eax], 0xfe6d39c7
je 0x10050ca1
mov dword [ebp - 0x6bc], 1
jmp 0x10050ca8
and dword [ebp - 0x6bc], 0
push 0
lea ecx, [ebp - 0x6f8]
call fcn.10019727
mov esi, dword [eax]
push 0
lea ecx, [ebp - 0x6f8]
call fcn.10019727
mov eax, dword [eax]
mov eax, dword [ebp + eax*4 - 0x1dc]
cmp dword [ebp + esi*4 - 0x1dc], eax
jge 0x10050ce2
mov dword [ebp - 0x6b4], 1
jmp 0x10050ce9
and dword [ebp - 0x6b4], 0
push 4
pop eax
shl eax, 0
push dword [ebp + eax - 0x294]
lea ecx, [ebp - 0x2e8]
call fcn.10019727
mov eax, dword [eax]
mov dword [ebp - 0x6ac], eax
mov eax, dword [ebp - 0x6ac]
cmp eax, dword [ebp - 0x6b4]
jl 0x10050d23
mov dword [ebp - 0x6b8], 1
jmp 0x10050d2a
and dword [ebp - 0x6b8], 0
mov eax, dword [ebp - 0x6bc]
cmp eax, dword [ebp - 0x6b8]
jle 0x10050d44
mov dword [ebp - 0x298], 1
jmp 0x10050d4b
and dword [ebp - 0x298], 0
push 4
pop eax
shl eax, 0
push dword [ebp + eax - 0x294]
lea ecx, [ebp - 0x2e8]
call fcn.10019727
mov ecx, dword [ebp - 0x298]
mov dword [eax], ecx
cmp dword [ebp - 0x298], 0
jne 0x10050d8f
push 0
lea ecx, [ebp - 0x2e8]
call fcn.10019727
cmp dword [eax], 0
jne 0x10050d8f
and dword [ebp - 0x51c], 0
jmp 0x10050d99
mov dword [ebp - 0x51c], 1
cmp dword [ebp - 0x51c], 0
jbe 0x10050dae
mov dword [ebp - 0x618], 1
jmp 0x10050db5
and dword [ebp - 0x618], 0
imul esi, dword [ebp - 0x618], 0x1860
push 0
lea ecx, [ebp - 0x6f8]
call fcn.10019727
mov eax, dword [eax]
imul esi, dword [ebp + eax*4 - 0x1dc]
mov dword [ebp - 0x328], esi
mov esi, dword [ebp - 0x328]
push 4
pop eax
shl eax, 0
push dword [ebp + eax - 0x294]
lea ecx, [ebp - 0x2e8]
call fcn.10019727
mov dword [eax], esi
jmp 0x10050c32
jmp 0x10050b8a
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x6f8]
call fcn.1001970b
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x2e8]
call fcn.1001970b
mov eax, dword [ebp - 0x620]
mov ecx, dword [ebp - 0x34]
add ecx, dword [eax + 0x3c]
mov dword [ebp - 0xe0], ecx
mov eax, dword [ebp - 0xe0]
cmp dword [eax], 0x4550
je 0x10050e49
jmp 0x10055eda
push 8
pop eax
imul eax, eax, 0
mov ecx, dword [ebp - 0xe0]
lea eax, [ecx + eax + 0x78]
mov dword [ebp - 0x64], eax
mov eax, dword [ebp - 0x64]
cmp dword [eax + 4], 0
jne 0x10050e6a
jmp 0x10055eda
mov dword [ebp - 0xd4], 0x8c44
mov dword [ebp - 0xf4], 0x244d513c
mov dword [ebp - 0xdc], 0xfffffff9
mov dword [ebp - 0xec], 0xfffffffa
mov dword [ebp - 0x650], 0xffffffff
mov dword [ebp - 0x2c8], 0xa4b15d3e
mov dword [ebp - 0x37c], 0x86ff5291
mov dword [ebp - 0x780], 4
mov dword [ebp - 0x234], 0
jmp 0x10050ed3
mov eax, dword [ebp - 0x234]
inc eax
mov dword [ebp - 0x234], eax
cmp dword [ebp - 0x234], 1
jge 0x10050eef
mov eax, dword [ebp - 0x234]
mov dword [ebp + eax*4 - 0x38c], 1
jmp 0x10050ec6
mov byte [ebp - 0xad], 0
movzx eax, byte [ebp - 0xad]
test eax, eax
je 0x10050f12
push 0
push 0
push 0x213e
push 0
call dword [sym.imp.KERNEL32.dll_VerifyVersionInfoW]
cmp dword [ebp - 0xf4], 0x9dade661
ja 0x10050f2a
mov dword [ebp - 0x330], 1
jmp 0x10050f31
and dword [ebp - 0x330], 0
cmp dword [ebp - 0x330], 1
je 0x10050f46
mov dword [ebp - 0x628], 1
jmp 0x10050f4d
and dword [ebp - 0x628], 0
mov eax, dword [ebp - 0xf4]
cmp eax, dword [ebp - 0x628]
jne 0x10050f67
mov dword [ebp - 0x338], 1
jmp 0x10050f6e
and dword [ebp - 0x338], 0
mov eax, dword [ebp - 0x338]
mov dword [ebp - 0xdc], eax
cmp dword [ebp - 0xdc], 1
ja 0x10050f8f
mov dword [ebp - 0x630], 1
jmp 0x10050f96
and dword [ebp - 0x630], 0
mov eax, dword [ebp - 0x630]
neg eax
cmp dword [ebp - 0xd4], eax
jl 0x10050fb2
mov dword [ebp - 0x340], 1
jmp 0x10050fb9
and dword [ebp - 0x340], 0
mov eax, dword [ebp - 0x340]
mov dword [ebp - 0xec], eax
cmp dword [ebp - 0xec], 0xc019
jl 0x10050fdd
mov dword [ebp - 0x638], 1
jmp 0x10050fe4
and dword [ebp - 0x638], 0
mov eax, dword [ebp - 0xf4]
add eax, dword [ebp - 0x638]
cmp dword [ebp - 0xd4], eax
jne 0x10051004
mov dword [ebp - 0x348], 1
jmp 0x1005100b
and dword [ebp - 0x348], 0
mov eax, dword [ebp - 0xf4]
cmp dword [ebp - 0x348], eax
jle 0x10051025
mov dword [ebp - 0x640], 1
jmp 0x1005102c
and dword [ebp - 0x640], 0
mov eax, dword [ebp - 0x650]
cmp dword [ebp - 0x640], eax
jne 0x10051046
mov dword [ebp - 0x350], 1
jmp 0x1005104d
and dword [ebp - 0x350], 0
mov eax, dword [ebp - 0x2c8]
cmp dword [ebp - 0x350], eax
jge 0x10051067
mov dword [ebp - 0x648], 1
jmp 0x1005106e
and dword [ebp - 0x648], 0
cmp dword [ebp - 0x648], 0x73063d62
jge 0x10051086
mov dword [ebp - 0x358], 1
jmp 0x1005108d
and dword [ebp - 0x358], 0
mov eax, dword [ebp - 0x358]
mov dword [ebp - 0x2c8], eax
mov eax, dword [ebp - 0xf4]
cmp dword [ebp - 0x2c8], eax
jne 0x100510b3
mov dword [ebp - 0x360], 1
jmp 0x100510ba
and dword [ebp - 0x360], 0
mov eax, dword [ebp - 0x650]
cmp dword [ebp - 0x360], eax
jl 0x10051228
mov dword [ebp - 0x36c], 0xacdd711a
mov dword [ebp - 0xa68], 0x5e13cd4f
mov dword [ebp - 0x9fc], 0x1dd5c0ae
mov dword [ebp - 0xaa0], 2
mov dword [ebp - 0x524], 0x8a57461d
mov dword [ebp - 0x1e4], 0
jmp 0x10051117
mov eax, dword [ebp - 0x1e4]
inc eax
mov dword [ebp - 0x1e4], eax
cmp dword [ebp - 0x1e4], 1
jge 0x10051133
mov eax, dword [ebp - 0x1e4]
mov dword [ebp + eax*4 - 0x658], 0x29b4
jmp 0x1005110a
mov dword [ebp - 0x36c], 0x29a2a67f
mov dword [ebp - 0xd4], 0
jmp 0x10051156
mov eax, dword [ebp - 0xd4]
inc eax
mov dword [ebp - 0xd4], eax
cmp dword [ebp - 0xd4], 0xb
jle 0x10051223
mov dword [ebp - 0xa04], 1
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x658]
inc eax
mov dword [ebp - 0x660], eax
push 4
pop eax
imul eax, eax, 0
mov ecx, dword [ebp - 0x660]
mov dword [ebp + eax - 0x658], ecx
cmp dword [ebp - 0x660], 0
jne 0x100511a9
mov dword [ebp - 0x664], 1
jmp 0x100511b0
and dword [ebp - 0x664], 0
mov eax, dword [ebp - 0x37c]
mov dword [ebp - 0xdc], eax
mov eax, dword [ebp - 0xdc]
sub eax, dword [ebp - 0x36c]
cmp eax, dword [ebp - 0x664]
jg 0x100511dc
mov dword [ebp - 0x778], 1
jmp 0x100511e3
and dword [ebp - 0x778], 0
mov eax, dword [ebp - 0xdc]
add eax, 0x33ec
sub eax, dword [ebp - 0x524]
je 0x1005120b
mov eax, 0x8d5680a2
test eax, eax
je 0x1005120b
mov dword [ebp - 0x374], 1
jmp 0x10051212
and dword [ebp - 0x374], 0
mov eax, dword [ebp - 0x374]
mov dword [ebp - 0x524], eax
jmp 0x10051149
jmp 0x100513fb
mov dword [ebp - 0x15c], 1
mov dword [ebp - 0x21c], 0
jmp 0x1005124b
mov eax, dword [ebp - 0x21c]
inc eax
mov dword [ebp - 0x21c], eax
cmp dword [ebp - 0x21c], 1
jge 0x10051267
mov eax, dword [ebp - 0x21c]
mov dword [ebp + eax*4 - 0x394], 0x3b350b83
jmp 0x1005123e
mov eax, dword [ebp - 0x37c]
add eax, 0xfff8
je 0x10051289
mov eax, 0x3d0ae446
test eax, eax
je 0x10051289
mov dword [ebp - 0x300], 1
jmp 0x10051290
and dword [ebp - 0x300], 0
push 4
pop eax
imul eax, eax, 0
mov ecx, dword [ebp - 0x300]
mov dword [ebp + eax - 0x394], ecx
cmp dword [ebp - 0x300], 0
je 0x100512c1
mov eax, 0x2b4b20f9
test eax, eax
je 0x100512c1
mov dword [ebp - 0x5fc], 1
jmp 0x100512c8
and dword [ebp - 0x5fc], 0
mov eax, dword [ebp - 0x15c]
cmp dword [ebp - 0x5fc], eax
je 0x100512e2
mov dword [ebp - 0x384], 1
jmp 0x100512e9
and dword [ebp - 0x384], 0
mov eax, dword [ebp - 0x15c]
cmp eax, dword [ebp - 0x384]
jge 0x1005130c
cmp dword [ebp - 0x780], 0
je 0x1005130c
mov dword [ebp - 0x52c], 1
jmp 0x10051313
and dword [ebp - 0x52c], 0
mov eax, dword [ebp - 0x15c]
add eax, dword [ebp - 0x52c]
add eax, dword [ebp - 0xf4]
cmp eax, dword [ebp - 0x15c]
jle 0x10051339
mov dword [ebp - 0x678], 1
jmp 0x10051340
and dword [ebp - 0x678], 0
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x38c]
push 4
pop ecx
imul ecx, ecx, 0
mov ecx, dword [ebp + ecx - 0x38c]
imul ecx, dword [ebp - 0x678]
add eax, ecx
jne 0x1005137e
push 4
pop eax
imul eax, eax, 0
cmp dword [ebp + eax - 0x394], 0
jne 0x1005137e
and dword [ebp - 0x534], 0
jmp 0x10051388
mov dword [ebp - 0x534], 1
cmp dword [ebp - 0x534], 0xfffffffb
ja 0x1005139a
cmp dword [ebp - 0x15c], 0
jne 0x100513ad
push 4
pop eax
test eax, eax
je 0x100513ad
mov dword [ebp - 0x39c], 1
jmp 0x100513b4
and dword [ebp - 0x39c], 0
mov eax, dword [ebp - 0x39c]
mov dword [ebp - 0xdc], eax
mov dword [ebp - 0xec], 0xffffffff
jmp 0x100513d9
mov eax, dword [ebp - 0xec]
dec eax
mov dword [ebp - 0xec], eax
cmp dword [ebp - 0xec], 0xfffffffc
jne 0x100513fb
mov byte [ebp - 0x9d], 0
lea eax, [ebp - 0x9d]
push eax
push 1
call fcn.1004e5d8
pop ecx
pop ecx
jmp 0x100513cc
and dword [ebp - 0x2c], 0
mov dword [ebp - 0x1ec], 0
jmp 0x10051418
mov eax, dword [ebp - 0x1ec]
inc eax
mov dword [ebp - 0x1ec], eax
cmp dword [ebp - 0x1ec], 3
jge 0x10051434
mov eax, dword [ebp - 0x1ec]
mov dword [ebp + eax*4 - 0x870], 0x69fdf99f
jmp 0x1005140b
push 4
pop eax
shl eax, 0
mov dword [ebp + eax - 0x870], 0
jmp 0x10051462
push 4
pop eax
shl eax, 0
mov eax, dword [ebp + eax - 0x870]
dec eax
push 4
pop ecx
shl ecx, 0
mov dword [ebp + ecx - 0x870], eax
push 4
pop eax
shl eax, 0
cmp dword [ebp + eax - 0x870], 0xffffffe7
je 0x1005148e
mov byte [ebp - 0xaf], 0
movzx eax, byte [ebp - 0xaf]
test eax, eax
je 0x1005148c
push 1
call fcn.1004e61e
pop ecx
jmp 0x10051447
mov eax, dword [ebp - 0xe0]
movzx eax, word [eax + 0x14]
mov ecx, dword [ebp - 0xe0]
lea eax, [ecx + eax + 0x18]
mov dword [ebp - 0x3e8], eax
mov dword [ebp - 0x2f4], 0x6f37911b
push 2
lea ecx, [ebp - 0x8a0]
call fcn.10019689
mov dword [ebp - 4], 4
mov dword [ebp - 0x3b4], 0x7f95e19f
mov dword [ebp - 0x3bc], 0xaead2214
mov dword [ebp - 0x7e8], 0xfffffffd
mov dword [ebp - 0x44], 0
jmp 0x100514f4
mov eax, dword [ebp - 0x44]
inc eax
mov dword [ebp - 0x44], eax
cmp dword [ebp - 0x44], 1
jge 0x1005150a
mov eax, dword [ebp - 0x44]
mov dword [ebp + eax*4 - 0x94], 0x57fd
jmp 0x100514ed
mov dword [ebp - 0x44], 0
jmp 0x1005151a
mov eax, dword [ebp - 0x44]
inc eax
mov dword [ebp - 0x44], eax
cmp dword [ebp - 0x44], 1
jge 0x1005152d
mov eax, dword [ebp - 0x44]
mov dword [ebp + eax*4 - 0x30], 0xfffffff7
jmp 0x10051513
mov dword [ebp - 0x44], 0
jmp 0x1005153d
mov eax, dword [ebp - 0x44]
inc eax
mov dword [ebp - 0x44], eax
cmp dword [ebp - 0x44], 2
jge 0x10051556
push dword [ebp - 0x44]
lea ecx, [ebp - 0x8a0]
call fcn.10019727
or dword [eax], 0xffffffff
jmp 0x10051536
push 4
pop eax
imul eax, eax, 0
mov dword [ebp + eax - 0x30], 0
jmp 0x1005157b
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x30]
dec eax
push 4
pop ecx
imul ecx, ecx, 0
mov dword [ebp + ecx - 0x30], eax
push 4
pop eax
imul eax, eax, 0
cmp dword [ebp + eax - 0x30], 0
jl 0x10051828
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x30]
mov eax, dword [ebp + eax*4 - 0x94]
mov dword [ebp - 0xa78], eax
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x30]
push 4
pop ecx
imul ecx, ecx, 0
add eax, dword [ebp + ecx - 0x30]
cmp eax, dword [ebp - 0x2f4]
jne 0x100515d8
push 4
pop eax
imul eax, eax, 0
cmp dword [ebp + eax - 0x94], 0
jne 0x100515d8
and dword [ebp - 0x7e0], 0
jmp 0x100515e2
mov dword [ebp - 0x7e0], 1
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x30]
mov eax, dword [ebp + eax*4 - 0x94]
mov dword [ebp - 0xa0c], eax
push 4
pop eax
imul eax, eax, 0
push 4
pop ecx
imul ecx, ecx, 0
mov ecx, dword [ebp + ecx - 0x30]
cmp dword [ebp + eax - 0x94], ecx
jg 0x1005161e
mov dword [ebp - 0x604], 1
jmp 0x10051625
and dword [ebp - 0x604], 0
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x30]
mov eax, dword [ebp + eax*4 - 0x94]
cmp dword [ebp - 0x604], eax
jne 0x1005164a
mov dword [ebp - 0x3a4], 1
jmp 0x10051651
and dword [ebp - 0x3a4], 0
cmp dword [ebp - 0x3a4], 0x4307
jle 0x10051669
mov dword [ebp - 0x53c], 1
jmp 0x10051670
and dword [ebp - 0x53c], 0
push 0
lea ecx, [ebp - 0x8a0]
call fcn.10019727
mov ecx, dword [ebp - 0x53c]
mov dword [eax], ecx
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x30]
mov eax, dword [ebp + eax*4 - 0x94]
mov dword [ebp - 0xac0], eax
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x30]
mov dword [ebp - 0xa18], eax
push 4
pop eax
imul eax, eax, 0
push 4
pop ecx
imul ecx, ecx, 0
mov ecx, dword [ebp + ecx - 0x94]
cmp dword [ebp + eax - 0x94], ecx
je 0x100516d4
mov dword [ebp - 0x3ac], 1
jmp 0x100516db
and dword [ebp - 0x3ac], 0
mov eax, dword [ebp - 0x2f4]
cmp dword [ebp - 0x3ac], eax
jg 0x100516f5
mov dword [ebp - 0x66c], 1
jmp 0x100516fc
and dword [ebp - 0x66c], 0
mov eax, dword [ebp - 0x66c]
mov dword [ebp - 0x3b4], eax
cmp dword [ebp - 0x3b4], 0
je 0x10051726
mov eax, 0x2327
test eax, eax
je 0x10051726
mov dword [ebp - 0x544], 1
jmp 0x1005172d
and dword [ebp - 0x544], 0
mov eax, dword [ebp - 0x544]
mov dword [ebp - 0x3bc], eax
mov eax, dword [ebp - 0x3bc]
push 4
pop ecx
imul ecx, ecx, 0
add eax, dword [ebp + ecx - 0x30]
push 4
pop ecx
imul ecx, ecx, 0
mov ecx, dword [ebp + ecx - 0x30]
cmp eax, dword [ebp + ecx*4 - 0x94]
jl 0x1005177a
push 1
lea ecx, [ebp - 0x8a0]
call fcn.10019727
cmp dword [eax], 0
je 0x1005177a
mov dword [ebp - 0x60c], 1
jmp 0x10051781
and dword [ebp - 0x60c], 0
mov eax, 0xf6fb807c
sub eax, dword [ebp - 0x60c]
push 4
pop ecx
imul ecx, ecx, 0
cmp eax, dword [ebp + ecx - 0x30]
jl 0x100517a4
mov dword [ebp - 0x3c4], 1
jmp 0x100517ab
and dword [ebp - 0x3c4], 0
mov eax, 0xd7865925
sub eax, dword [ebp - 0x3c4]
je 0x100517c8
xor eax, eax
je 0x100517c8
mov dword [ebp - 0x54c], 1
jmp 0x100517cf
and dword [ebp - 0x54c], 0
mov eax, dword [ebp - 0x54c]
add eax, 0x2b29
cmp eax, dword [ebp - 0x2f4]
jle 0x100517ee
mov dword [ebp - 0x3cc], 1
jmp 0x100517f5
and dword [ebp - 0x3cc], 0
mov eax, dword [ebp - 0x3cc]
mov dword [ebp - 0x7e8], eax
mov byte [ebp - 0xa5], 0
push 0x5d1a
push 0xfd8
lea eax, [ebp - 0xa5]
push eax
push 0
call fcn.1004f750
add esp, 0x10
jmp 0x10051566
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x8a0]
call fcn.1001970b
push 0xd16
lea eax, [ebp - 0x2c]
push eax
lea eax, [ebp - 0x64]
push eax
lea eax, [ebp - 0xe0]
push eax
lea eax, [ebp - 0x3e8]
push eax
push 0
call fcn.1005018d
add esp, 0x18
cmp dword [ebp - 0x2c], 0
jne 0x10051867
jmp 0x10055eda
mov eax, dword [ebp - 0x64]
mov ecx, dword [ebp - 0x2c]
add ecx, dword [eax]
add ecx, dword [ebp - 0x34]
mov dword [ebp - 0x14], ecx
push 2
lea ecx, [ebp - 0x318]
call fcn.10019689
mov dword [ebp - 4], 5
mov dword [ebp - 0x80], 0
jmp 0x10051899
mov eax, dword [ebp - 0x80]
inc eax
mov dword [ebp - 0x80], eax
cmp dword [ebp - 0x80], 1
jge 0x100518af
mov eax, dword [ebp - 0x80]
mov dword [ebp + eax*4 - 0xc0], 0xc204e2db
jmp 0x10051892
mov dword [ebp - 0x80], 0
jmp 0x100518bf
mov eax, dword [ebp - 0x80]
inc eax
mov dword [ebp - 0x80], eax
cmp dword [ebp - 0x80], 2
jge 0x100518db
push dword [ebp - 0x80]
lea ecx, [ebp - 0x318]
call fcn.10019727
mov dword [eax], 0x9e57ad95
jmp 0x100518b8
push 0
lea ecx, [ebp - 0x318]
call fcn.10019727
and dword [eax], 0
jmp 0x10051911
push 0
lea ecx, [ebp - 0x318]
call fcn.10019727
mov dword [ebp - 0x67c], eax
mov eax, dword [ebp - 0x67c]
mov eax, dword [eax]
inc eax
mov ecx, dword [ebp - 0x67c]
mov dword [ecx], eax
push 0
lea ecx, [ebp - 0x318]
call fcn.10019727
cmp dword [eax], 0
jg 0x10051b6a
mov dword [ebp - 0x11c], 0xcf687292
push 0
lea ecx, [ebp - 0x318]
call fcn.10019727
mov eax, dword [eax]
cmp dword [ebp + eax*4 - 0xc0], 0
je 0x10051af7
mov dword [ebp - 0xb8], 0
mov dword [ebp - 0x3f4], 0x19d87263
mov dword [ebp - 0xb8], 0
jmp 0x1005197b
mov eax, dword [ebp - 0xb8]
inc eax
mov dword [ebp - 0xb8], eax
cmp dword [ebp - 0xb8], 0
jg 0x10051af5
mov dword [ebp - 0x248], 0
jmp 0x100519a1
mov eax, dword [ebp - 0x248]
inc eax
mov dword [ebp - 0x248], eax
cmp dword [ebp - 0x248], 1
jge 0x100519bd
mov eax, dword [ebp - 0x248]
mov dword [ebp + eax*4 - 0x614], 0xfffffffb
jmp 0x10051994
push 0
lea ecx, [ebp - 0x318]
call fcn.10019727
mov eax, dword [eax]
mov eax, dword [ebp + eax*4 - 0xc0]
mov dword [ebp - 0x3d4], eax
mov eax, dword [ebp - 0xb8]
mov ecx, dword [ebp - 0x3d4]
mov dword [ebp + eax*4 - 0xc0], ecx
cmp dword [ebp - 0x3d4], 0
jne 0x10051a02
xor eax, eax
jne 0x10051a02
and dword [ebp - 0x554], 0
jmp 0x10051a0c
mov dword [ebp - 0x554], 1
push 4
pop eax
imul eax, eax, 0
cmp dword [ebp + eax - 0x614], 0xffffffff
ja 0x10051a28
mov dword [ebp - 0x3dc], 1
jmp 0x10051a2f
and dword [ebp - 0x3dc], 0
mov eax, dword [ebp - 0x554]
add eax, dword [ebp - 0x3dc]
je 0x10051a52
cmp dword [ebp - 0xb8], 0
je 0x10051a52
mov dword [ebp - 0x3e4], 1
jmp 0x10051a59
and dword [ebp - 0x3e4], 0
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x614]
cmp dword [ebp - 0x3e4], eax
jge 0x10051a7a
mov dword [ebp - 0x55c], 1
jmp 0x10051a81
and dword [ebp - 0x55c], 0
cmp dword [ebp - 0x55c], 0x98f0
jle 0x10051a99
mov dword [ebp - 0x3ec], 1
jmp 0x10051aa0
and dword [ebp - 0x3ec], 0
imul eax, dword [ebp - 0x3ec], 0xffffffff
sub eax, 8
cmp eax, 0xcc9105fa
je 0x10051abd
mov dword [ebp - 0x674], 1
jmp 0x10051ac4
and dword [ebp - 0x674], 0
mov eax, dword [ebp - 0x674]
add eax, 0x703c5764
mov dword [ebp - 0x3f4], eax
mov eax, dword [ebp - 0xb8]
mov dword [ebp + eax*4 - 0xc0], 1
mov dword [ebp - 0x3f4], 1
jmp 0x1005196e
jmp 0x10051b30
push 0
lea ecx, [ebp - 0x318]
call fcn.10019727
mov esi, eax
push 0
lea ecx, [ebp - 0x318]
call fcn.10019727
mov eax, dword [eax]
mov ecx, dword [esi]
mov dword [ebp + eax*4 - 0xc0], ecx
push 4
pop eax
imul eax, eax, 0
cmp dword [ebp + eax - 0xc0], 0
je 0x10051b30
jmp 0x10051b6a
mov dword [ebp - 0x11c], 0
jmp 0x10051b49
mov eax, dword [ebp - 0x11c]
inc eax
mov dword [ebp - 0x11c], eax
cmp dword [ebp - 0x11c], 1
jge 0x10051b65
mov eax, dword [ebp - 0x11c]
mov dword [ebp + eax*4 - 0xc0], 1
jmp 0x10051b3c
jmp 0x100518ed
mov byte [ebp - 0xa7], 0
lea eax, [ebp - 0xa7]
push eax
push 0x433b
push 0
push 0x177d
push 0x5295
call fcn.1004fa29
add esp, 0x14
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x318]
call fcn.1001970b
xor ecx, ecx
call fcn.10034d0b
push eax
call fcn.100722a8
pop ecx
mov dword [ebp - 0x8d0], 0xb4ffb871
mov dword [ebp - 0x8cc], 0xb4ffb871
mov dword [ebp - 0x8c8], 0xb4ffb871
mov dword [ebp - 0x8c4], 0xb4ffb871
lea ecx, [ebp - 0x2cd]
call fcn.100093d3
push eax
lea eax, [ebp - 0x8c0]
push eax
lea eax, [ebp - 0x8d0]
push eax
lea ecx, [ebp - 0xaf4]
call fcn.10019736
push dword [eax + 4]
push dword [eax]
lea ecx, [ebp - 0x964]
call fcn.100196e5
mov dword [ebp - 4], 6
push 2
lea ecx, [ebp - 0x894]
call fcn.10019689
mov byte [ebp - 4], 7
mov dword [ebp - 0x110], 1
lea eax, [ebp - 0xa88]
push eax
push 1
lea eax, [ebp - 0x894]
push eax
call fcn.1004e700
add esp, 0xc
push 0x3a41
push 1
lea eax, [ebp - 0x964]
push eax
lea eax, [ebp - 0x110]
push eax
lea eax, [ebp - 0x894]
push eax
call fcn.1004e76d
add esp, 0x14
mov dword [ebp - 0x110], 0xfffffff0
jmp 0x10051c82
mov eax, dword [ebp - 0x110]
inc eax
mov dword [ebp - 0x110], eax
cmp dword [ebp - 0x110], 0xb
je 0x10051d65
mov dword [ebp - 0x124], 0x8f738f58
mov dword [ebp - 0x7f8], 0xfffffff7
mov dword [ebp - 0x800], 0xfffffffc
mov dword [ebp - 0x124], 0
jmp 0x10051cc6
mov eax, dword [ebp - 0x124]
dec eax
mov dword [ebp - 0x124], eax
cmp dword [ebp - 0x124], 0xffffffe3
je 0x10051d30
mov dword [ebp - 0x7f0], 0xed55c59c
mov dword [ebp - 0x564], 1
lea eax, [ebp - 0x124]
push eax
push 0
lea eax, [ebp - 0x894]
push eax
push 0x3b35
lea eax, [ebp - 0x7f0]
push eax
lea eax, [ebp - 0x964]
push eax
lea eax, [ebp - 0x7f8]
push eax
lea eax, [ebp - 0x800]
push eax
lea eax, [ebp - 0x564]
push eax
call fcn.1005067d
add esp, 0x24
cmp dword [ebp - 0x564], 0
je 0x10051d2e
jmp 0x10051d30
jmp 0x10051cb9
mov byte [ebp - 0xab], 0
movzx eax, byte [ebp - 0xab]
test eax, eax
je 0x10051d60
push 0x63a2
push 0x3727
push 0
push 0x3d6d
push 0x77e3
call fcn.1004e901
add esp, 0x14
jmp 0x10051c75
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x894]
call fcn.1001970b
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x964]
call fcn.1001970b
push 3
lea ecx, [ebp - 0x934]
call fcn.10019689
mov dword [ebp - 4], 8
mov dword [ebp - 0x810], 0xb5131d8b
mov dword [ebp - 0x808], 0xffffffff
mov dword [ebp - 0x8f8], 0x8e503485
mov dword [ebp - 0x8f4], 0x8e503485
mov dword [ebp - 0x8f0], 0x8e503485
mov dword [ebp - 0x8ec], 0x8e503485
lea ecx, [ebp - 0x2b5]
call fcn.100093d3
push eax
lea eax, [ebp - 0x8e8]
push eax
lea eax, [ebp - 0x8f8]
push eax
lea ecx, [ebp - 0xb34]
call fcn.10019736
push dword [eax + 4]
push dword [eax]
lea ecx, [ebp - 0xa34]
call fcn.100196e5
mov byte [ebp - 4], 9
mov dword [ebp - 0x1f4], 0
jmp 0x10051e25
mov eax, dword [ebp - 0x1f4]
inc eax
mov dword [ebp - 0x1f4], eax
cmp dword [ebp - 0x1f4], 3
jge 0x10051e47
push dword [ebp - 0x1f4]
lea ecx, [ebp - 0x934]
call fcn.10019727
mov dword [eax], 0x580d416d
jmp 0x10051e18
lea eax, [ebp - 0x808]
push eax
lea eax, [ebp - 0x934]
push eax
push 1
lea eax, [ebp - 0xa34]
push eax
lea eax, [ebp - 0x810]
push eax
call fcn.1004e901
add esp, 0x14
mov byte [ebp - 0xb1], 0
lea eax, [ebp - 0xb1]
push eax
push 0xcac
push 1
call fcn.1004eab8
add esp, 0xc
mov byte [ebp - 4], 8
lea ecx, [ebp - 0xa34]
call fcn.1001970b
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x934]
call fcn.1001970b
mov byte [ebp - 0x198], 2
mov byte [ebp - 0x197], 0x31
mov byte [ebp - 0x196], 7
mov byte [ebp - 0x195], 1
mov byte [ebp - 0x194], 0
mov byte [ebp - 0x193], 7
mov byte [ebp - 0x192], 0x1b
mov byte [ebp - 0x191], 0x24
mov byte [ebp - 0x190], 0x97
mov byte [ebp - 0x18f], 0x45
mov byte [ebp - 0x18e], 0x80
mov byte [ebp - 0x18d], 0x24
mov byte [ebp - 0x18c], 0x18
mov byte [ebp - 0x18b], 0x49
mov byte [ebp - 0x18a], 0x5a
mov byte [ebp - 0x189], 0xa3
mov byte [ebp - 0x188], 0xcc
mov byte [ebp - 0x187], 0x8d
mov byte [ebp - 0x186], 0x6f
mov byte [ebp - 0x185], 3
mov byte [ebp - 0x184], pe_nt_image_headers32
mov byte [ebp - 0x183], 0xb0
mov byte [ebp - 0x182], 0x17
mov byte [ebp - 0x181], 0
mov byte [ebp - 0x180], 0xbb
mov byte [ebp - 0x17f], 6
mov byte [ebp - 0x17e], 0x46
mov byte [ebp - 0x17d], 0x10
mov byte [ebp - 0x17c], 0x8f
mov byte [ebp - 0x17b], 0x53
mov byte [ebp - 0x17a], 0x8a
mov byte [ebp - 0x179], 0xd3
mov byte [ebp - 0x178], 0x7f
mov byte [ebp - 0x177], 0x95
mov byte [ebp - 0x176], 9
mov byte [ebp - 0x175], 1
mov byte [ebp - 0x174], 8
mov byte [ebp - 0x173], 0
mov byte [ebp - 0x172], 1
mov byte [ebp - 0x171], 5
mov byte [ebp - 0x170], 5
mov byte [ebp - 0x16f], 4
mov byte [ebp - 0x16e], 4
mov byte [ebp - 0x16d], 9
mov byte [ebp - 0x16c], 3
mov byte [ebp - 0x16b], 0xf
mov byte [ebp - 0x16a], 6
mov byte [ebp - 0x169], 6
xor eax, eax
inc eax
shl eax, 0
movzx eax, byte [ebp + eax - 0x198]
or eax, 6
xor ecx, ecx
inc ecx
shl ecx, 0
movzx ecx, byte [ebp + ecx - 0x198]
and ecx, 6
sub eax, ecx
xor ecx, ecx
inc ecx
imul ecx, ecx, 0
movzx ecx, byte [ebp + ecx - 0x198]
mov byte [ebp + ecx - 0x6c8], al
mov dword [ebp - 0x38], 2
and dword [ebp - 0x144], 0
jmp 0x10052049
mov eax, dword [ebp - 0x38]
inc eax
inc eax
mov dword [ebp - 0x38], eax
cmp dword [ebp - 0x38], 0x30
jae 0x1005213b
xor eax, eax
inc eax
imul eax, eax, 0
movzx eax, byte [ebp + eax - 0x198]
lea eax, [eax + eax + 2]
cmp dword [ebp - 0x38], eax
jne 0x10052093
mov eax, dword [ebp - 0x38]
movzx eax, byte [ebp + eax - 0x198]
inc eax
mov dword [ebp - 0x144], eax
mov eax, dword [ebp - 0x38]
movzx eax, byte [ebp + eax - 0x198]
mov ecx, dword [ebp - 0x38]
lea eax, [ecx + eax - 1]
mov dword [ebp - 0x38], eax
jmp 0x10052041
mov eax, dword [ebp - 0x38]
movzx eax, byte [ebp + eax - 0x197]
mov ecx, dword [ebp - 0x38]
sub ecx, dword [ebp - 0x144]
movzx ecx, byte [ebp + ecx - 0x19a]
movsx ecx, byte [ebp + ecx - 0x6c8]
add eax, ecx
mov ecx, dword [ebp - 0x38]
movzx ecx, byte [ebp + ecx - 0x197]
mov edx, dword [ebp - 0x38]
sub edx, dword [ebp - 0x144]
movzx edx, byte [ebp + edx - 0x19a]
movsx edx, byte [ebp + edx - 0x6c8]
and ecx, edx
sub eax, ecx
mov ecx, dword [ebp - 0x38]
movzx ecx, byte [ebp + ecx - 0x197]
mov edx, dword [ebp - 0x38]
sub edx, dword [ebp - 0x144]
movzx edx, byte [ebp + edx - 0x19a]
movsx edx, byte [ebp + edx - 0x6c8]
and ecx, edx
sub eax, ecx
mov ecx, dword [ebp - 0x38]
movzx ecx, byte [ebp + ecx - 0x198]
mov byte [ebp + ecx - 0x6c8], al
lea eax, [ebp - 0x144]
push eax
push 1
push 0x5ba3
push 0xe9f
call fcn.1004eb12
add esp, 0x10
jmp 0x10052041
xor eax, eax
inc eax
imul eax, eax, 0xa
mov byte [ebp + eax - 0x6c8], 0
push 3
lea ecx, [ebp - 0x104]
call fcn.10019689
mov dword [ebp - 4], 0xa
push 0x42bd
push 0
push 0x3b3b
lea eax, [ebp - 0xa20]
push eax
lea eax, [ebp - 0x104]
push eax
call fcn.1004f061
add esp, 0x14
push 0xfffffffffffffff7
pop eax
test eax, eax
je 0x1005220a
push 2
lea ecx, [ebp - 0x104]
call fcn.10019727
cmp dword [eax], 0
jne 0x100521fd
push 0
lea ecx, [ebp - 0x104]
call fcn.10019727
cmp dword [eax], 0
jne 0x100521fd
push 0
lea ecx, [ebp - 0x104]
call fcn.10019727
push 2
lea ecx, [ebp - 0x104]
call fcn.10019727
push 2
lea ecx, [ebp - 0x104]
call fcn.10019727
mov esi, eax
push 2
lea ecx, [ebp - 0x104]
call fcn.10019727
mov esi, dword [esi]
imul esi, dword [eax]
push 1
lea ecx, [ebp - 0x104]
call fcn.10019727
imul esi, dword [eax]
test esi, esi
je 0x1005220a
push 0
lea ecx, [ebp - 0x104]
call fcn.10019727
push 2
lea ecx, [ebp - 0x104]
call fcn.10019727
mov esi, eax
push 0
lea ecx, [ebp - 0x104]
call fcn.10019727
mov ecx, dword [esi]
cmp ecx, dword [eax]
jle 0x10052238
mov dword [ebp - 0x3fc], 1
jmp 0x1005223f
and dword [ebp - 0x3fc], 0
push 1
lea ecx, [ebp - 0x104]
call fcn.10019727
mov ecx, dword [ebp - 0x3fc]
cmp ecx, dword [eax]
jl 0x10052262
mov dword [ebp - 0x61c], 1
jmp 0x10052269
and dword [ebp - 0x61c], 0
cmp dword [ebp - 0x61c], 0xffffffff
je 0x1005227e
mov dword [ebp - 0x404], 1
jmp 0x10052285
and dword [ebp - 0x404], 0
cmp dword [ebp - 0x404], 6
ja 0x1005229a
mov dword [ebp - 0x56c], 1
jmp 0x100522a1
and dword [ebp - 0x56c], 0
cmp dword [ebp - 0x56c], 0xf7d9
je 0x100522b9
mov dword [ebp - 0x40c], 1
jmp 0x100522c0
and dword [ebp - 0x40c], 0
cmp dword [ebp - 0x40c], 0x1db6084e
jge 0x100522ea
push 2
lea ecx, [ebp - 0x104]
call fcn.10019727
cmp dword [eax], 0
je 0x100522ea
mov dword [ebp - 0x684], 1
jmp 0x100522f1
and dword [ebp - 0x684], 0
push 2
lea ecx, [ebp - 0x104]
call fcn.10019727
mov ecx, dword [ebp - 0x684]
cmp ecx, dword [eax]
jg 0x100523fa
mov dword [ebp - 0x224], 0x2abf
mov dword [ebp - 0x820], 0x91f199e1
cmp dword [ebp - 0x224], 0
je 0x100523bd
push 2
lea ecx, [ebp - 0x104]
call fcn.10019727
mov ecx, dword [ebp - 0x224]
cmp dword [eax], ecx
jg 0x10052350
mov dword [ebp - 0x414], 1
jmp 0x10052357
and dword [ebp - 0x414], 0
cmp dword [ebp - 0x414], 0xf30385d
jl 0x1005236f
mov dword [ebp - 0x574], 1
jmp 0x10052376
and dword [ebp - 0x574], 0
mov eax, dword [ebp - 0x574]
inc eax
cmp dword [ebp - 0x224], eax
jne 0x10052391
mov dword [ebp - 0x818], 1
jmp 0x10052398
and dword [ebp - 0x818], 0
push 2
lea ecx, [ebp - 0x104]
call fcn.10019727
cmp dword [ebp - 0x224], 0x5807c1a
jg 0x100523bd
mov dword [ebp - 0x2f0], 1
jmp 0x100523c4
and dword [ebp - 0x2f0], 0
push 2
lea ecx, [ebp - 0x104]
call fcn.10019727
mov ecx, dword [ebp - 0x2f0]
mov dword [eax], ecx
mov eax, dword [ebp - 0x2f0]
mov dword [ebp - 0x820], eax
push 2
lea ecx, [ebp - 0x104]
call fcn.10019727
mov dword [eax], 9
jmp 0x1005241a
mov byte [ebp - 0xb3], 0
movzx eax, byte [ebp - 0xb3]
test eax, eax
je 0x1005241a
push 0x1043
push 1
call fcn.1004eb83
pop ecx
pop ecx
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x104]
call fcn.1001970b
lea eax, [ebp - 0x6c8]
push eax
lea ecx, [ebp - 0xb54]
call fcn.10029400
mov dword [ebp - 0x828], eax
mov eax, dword [ebp - 0x828]
mov dword [ebp - 0x860], eax
mov dword [ebp - 4], 0xb
push 0xa
xor edx, edx
mov ecx, dword [ebp - 0x860]
call fcn.10034cd0
pop ecx
mov dword [ebp - 0x82c], eax
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0xb54]
call fcn.100195eb
and dword [ebp - 0x1d0], 0
jmp 0x1005248f
mov eax, dword [ebp - 0x1d0]
inc eax
mov dword [ebp - 0x1d0], eax
cmp dword [ebp - 0x1d0], 0xb
jae 0x100524a8
mov eax, dword [ebp - 0x1d0]
mov byte [ebp + eax - 0x6c8], 0
jmp 0x10052482
mov dword [ebp - 0xcc], 0x68206240
mov dword [ebp - 0x424], 8
mov dword [ebp - 0x624], 0xfffffff8
push 2
lea ecx, [ebp - 0x87c]
call fcn.10019689
mov dword [ebp - 4], 0xc
push 4
lea ecx, [ebp - 0x910]
call fcn.10019689
mov byte [ebp - 4], 0xd
mov dword [ebp - 0x2d4], 0xc29478c9
push 0x379b
lea eax, [ebp - 0x87c]
push eax
push 0
lea eax, [ebp - 0x83c]
push eax
call fcn.1004f1bc
add esp, 0x10
lea eax, [ebp - 0x83c]
push eax
push 0x6047
push 0x6c98
lea eax, [ebp - 0x910]
push eax
push 0x5a3b
push 0x294a
push 0x2747
push 1
call fcn.1004ebc9
add esp, 0x20
mov dword [ebp - 0xcc], 0x1b
jmp 0x1005255c
mov eax, dword [ebp - 0xcc]
dec eax
mov dword [ebp - 0xcc], eax
cmp dword [ebp - 0xcc], 0xfffffffd
jge 0x10052584
mov byte [ebp - 0xb4], 0
push 1
lea eax, [ebp - 0xb4]
push eax
push 0x31ec
call fcn.1004ed25
add esp, 0xc
jmp 0x1005254f
mov eax, dword [ebp - 0xcc]
mov dword [ebp - 0xaa8], eax
push 3
lea ecx, [ebp - 0x910]
call fcn.10019727
mov dword [ebp - 0x2a4], eax
mov eax, dword [ebp - 0x424]
mov dword [ebp - 0x704], eax
mov eax, dword [ebp - 0x2a4]
mov eax, dword [eax]
mov dword [ebp - 0x770], eax
mov eax, dword [ebp - 0x2a4]
mov eax, dword [eax]
dec eax
mov ecx, dword [ebp - 0x2a4]
mov dword [ecx], eax
mov eax, dword [ebp - 0x704]
cmp eax, dword [ebp - 0x770]
jle 0x100525e8
mov dword [ebp - 0x7dc], 1
jmp 0x100525ef
and dword [ebp - 0x7dc], 0
mov eax, dword [ebp - 0x2d4]
cmp dword [ebp - 0x624], eax
jge 0x10052609
mov dword [ebp - 0x41c], 1
jmp 0x10052610
and dword [ebp - 0x41c], 0
mov eax, dword [ebp - 0x2d4]
cmp dword [ebp - 0x41c], eax
jge 0x1005262a
mov dword [ebp - 0x70c], 1
jmp 0x10052631
and dword [ebp - 0x70c], 0
mov eax, dword [ebp - 0x624]
mov dword [ebp - 0xa28], eax
mov eax, dword [ebp - 0x2d4]
cmp dword [ebp - 0xcc], eax
je 0x10052657
mov dword [ebp - 0x824], 1
jmp 0x1005265e
and dword [ebp - 0x824], 0
mov eax, dword [ebp - 0x424]
mov dword [ebp - 0xa90], eax
push 0
lea ecx, [ebp - 0x87c]
call fcn.10019727
cmp dword [eax], 0x441791e6
je 0x1005268b
mov dword [ebp - 0x57c], 1
jmp 0x10052692
and dword [ebp - 0x57c], 0
push 0
lea ecx, [ebp - 0x87c]
call fcn.10019727
mov ecx, dword [ebp - 0x57c]
mov dword [eax], ecx
mov byte [ebp - 4], 0xc
lea ecx, [ebp - 0x910]
call fcn.1001970b
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x87c]
call fcn.1001970b
push 2
lea ecx, [ebp - 0x6ec]
call fcn.10019689
mov dword [ebp - 4], 0xe
mov dword [ebp - 0xc8], 0xffffffff
push 1
lea ecx, [ebp - 0x928]
call fcn.10019689
mov byte [ebp - 4], 0xf
mov dword [ebp - 0x714], 0x45d764ce
mov dword [ebp - 0x12c], 0
jmp 0x10052717
mov eax, dword [ebp - 0x12c]
inc eax
mov dword [ebp - 0x12c], eax
cmp dword [ebp - 0x12c], 2
jge 0x10052736
push dword [ebp - 0x12c]
lea ecx, [ebp - 0x6ec]
call fcn.10019727
and dword [eax], 0
jmp 0x1005270a
lea eax, [ebp - 0x12c]
push eax
push 1
lea eax, [ebp - 0x928]
push eax
call fcn.1004ed8a
add esp, 0xc
push 1
lea ecx, [ebp - 0x6ec]
call fcn.10019727
mov dword [eax], 0xffffffed
jmp 0x10052787
push 1
lea ecx, [ebp - 0x6ec]
call fcn.10019727
mov dword [ebp - 0x42c], eax
mov eax, dword [ebp - 0x42c]
mov eax, dword [eax]
inc eax
mov ecx, dword [ebp - 0x42c]
mov dword [ecx], eax
push 1
lea ecx, [ebp - 0x6ec]
call fcn.10019727
cmp dword [eax], 0xfffffffc
jle 0x1005283e
mov dword [ebp - 0x68c], 0xffffffff
push 1
lea ecx, [ebp - 0x6ec]
call fcn.10019727
mov eax, dword [eax]
mov dword [ebp - 0xc8], eax
mov dword [ebp - 0xc8], 0
jmp 0x100527d5
mov eax, dword [ebp - 0xc8]
dec eax
mov dword [ebp - 0xc8], eax
cmp dword [ebp - 0xc8], 0
jl 0x10052839
mov dword [ebp - 0x7e4], 0x498d
push 0
lea eax, [ebp - 0x68c]
push eax
push 0x1e45
push 0x4531
call fcn.1004f2f3
add esp, 0x10
push 0
lea eax, [ebp - 0xc8]
push eax
lea eax, [ebp - 0x714]
push eax
lea eax, [ebp - 0x928]
push eax
lea eax, [ebp - 0x68c]
push eax
lea eax, [ebp - 0x6ec]
push eax
lea eax, [ebp - 0x7e4]
push eax
call fcn.1004ef05
add esp, 0x1c
jmp 0x100527c8
jmp 0x10052763
mov byte [ebp - 4], 0xe
lea ecx, [ebp - 0x928]
call fcn.1001970b
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x6ec]
call fcn.1001970b
mov byte [ebp - 0x1cc], 4
mov byte [ebp - 0x1cb], 0x21
mov byte [ebp - 0x1ca], 2
mov byte [ebp - 0x1c9], 3
mov byte [ebp - 0x1c8], 1
mov byte [ebp - 0x1c7], 1
mov byte [ebp - 0x1c6], 3
mov byte [ebp - 0x1c5], 4
mov byte [ebp - 0x1c4], 5
mov byte [ebp - 0x1c3], 3
mov byte [ebp - 0x1c2], 0x1e
mov byte [ebp - 0x1c1], 0xf7
mov byte [ebp - 0x1c0], 0x4d
mov byte [ebp - 0x1bf], 0x2b
mov byte [ebp - 0x1be], 0xa1
mov byte [ebp - 0x1bd], 0x59
mov byte [ebp - 0x1bc], 0xb2
mov byte [ebp - 0x1bb], 0x73
mov byte [ebp - 0x1ba], 0xab
mov byte [ebp - 0x1b9], 0xc9
mov byte [ebp - 0x1b8], 0xb5
mov byte [ebp - 0x1b7], 0xb
mov byte [ebp - 0x1b6], 0xb9
mov byte [ebp - 0x1b5], 0x6e
mov byte [ebp - 0x1b4], 0xe9
mov byte [ebp - 0x1b3], 0x62
mov byte [ebp - 0x1b2], 0x42
mov byte [ebp - 0x1b1], 0x5e
mov byte [ebp - 0x1b0], 0xdc
mov byte [ebp - 0x1af], 0x23
mov byte [ebp - 0x1ae], 0x98
mov byte [ebp - 0x1ad], 0xe7
mov byte [ebp - 0x1ac], 0x8a
mov byte [ebp - 0x1ab], 0xd7
mov byte [ebp - 0x1aa], 0xd2
mov byte [ebp - 0x1a9], 0xec
mov byte [ebp - 0x1a8], 0x22
mov byte [ebp - 0x1a7], 0x42
mov byte [ebp - 0x1a6], 0xf
mov byte [ebp - 0x1a5], 0xa7
mov byte [ebp - 0x1a4], 2
mov byte [ebp - 0x1a3], 9
mov byte [ebp - 0x1a2], 1
mov byte [ebp - 0x1a1], 0
mov byte [ebp - 0x1a0], 1
mov byte [ebp - 0x19f], 7
mov byte [ebp - 0x19e], 7
mov byte [ebp - 0x19d], 6
mov byte [ebp - 0x19c], 0xf
mov byte [ebp - 0x19b], 8
mov byte [ebp - 0x19a], 9
xor eax, eax
inc eax
shl eax, 0
movzx eax, byte [ebp + eax - 0x1cc]
or eax, 0x15
xor ecx, ecx
inc ecx
shl ecx, 0
movzx ecx, byte [ebp + ecx - 0x1cc]
and ecx, 0x15
sub eax, ecx
xor ecx, ecx
inc ecx
imul ecx, ecx, 0
movzx ecx, byte [ebp + ecx - 0x1cc]
mov byte [ebp + ecx - 0x6d4], al
mov dword [ebp - 0x20], 2
and dword [ebp - 0x148], 0
jmp 0x10052a12
mov eax, dword [ebp - 0x20]
inc eax
inc eax
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], 0x33
jae 0x10052aff
xor eax, eax
inc eax
imul eax, eax, 0
movzx eax, byte [ebp + eax - 0x1cc]
lea eax, [eax + eax + 2]
cmp dword [ebp - 0x20], eax
jne 0x10052a5c
mov eax, dword [ebp - 0x20]
movzx eax, byte [ebp + eax - 0x1cc]
inc eax
mov dword [ebp - 0x148], eax
mov eax, dword [ebp - 0x20]
movzx eax, byte [ebp + eax - 0x1cc]
mov ecx, dword [ebp - 0x20]
lea eax, [ecx + eax - 1]
mov dword [ebp - 0x20], eax
jmp 0x10052a0a
mov eax, dword [ebp - 0x20]
movzx eax, byte [ebp + eax - 0x1cb]
mov ecx, dword [ebp - 0x20]
sub ecx, dword [ebp - 0x148]
movzx ecx, byte [ebp + ecx - 0x1ce]
movsx ecx, byte [ebp + ecx - 0x6d4]
add eax, ecx
mov ecx, dword [ebp - 0x20]
movzx ecx, byte [ebp + ecx - 0x1cb]
mov edx, dword [ebp - 0x20]
sub edx, dword [ebp - 0x148]
movzx edx, byte [ebp + edx - 0x1ce]
movsx edx, byte [ebp + edx - 0x6d4]
and ecx, edx
sub eax, ecx
mov ecx, dword [ebp - 0x20]
movzx ecx, byte [ebp + ecx - 0x1cb]
mov edx, dword [ebp - 0x20]
sub edx, dword [ebp - 0x148]
movzx edx, byte [ebp + edx - 0x1ce]
movsx edx, byte [ebp + edx - 0x6d4]
and ecx, edx
sub eax, ecx
mov ecx, dword [ebp - 0x20]
movzx ecx, byte [ebp + ecx - 0x1cc]
mov byte [ebp + ecx - 0x6d4], al
push 0x28b1
lea eax, [ebp - 0x148]
push eax
push 0
call fcn.1004f98a
add esp, 0xc
jmp 0x10052a0a
xor eax, eax
inc eax
imul eax, eax, 0xa
mov byte [ebp + eax - 0x6d4], 0
mov dword [ebp - 0x98], 0xa8eac8b
mov dword [ebp - 0x858], 0xffffffff
mov dword [ebp - 0x98], 0
jmp 0x10052b3a
mov eax, dword [ebp - 0x98]
dec eax
mov dword [ebp - 0x98], eax
cmp dword [ebp - 0x98], 0xfffffff1
jne 0x10052ba1
mov dword [ebp - 0x71c], 0
mov dword [ebp - 0x1fc], 0
jmp 0x10052b66
mov eax, dword [ebp - 0x1fc]
inc eax
mov dword [ebp - 0x1fc], eax
cmp dword [ebp - 0x1fc], 2
jge 0x10052b82
mov eax, dword [ebp - 0x1fc]
mov dword [ebp + eax*4 - 0xb14], 0xfffffffd
jmp 0x10052b59
lea eax, [ebp - 0x71c]
push eax
push 0x617b
lea eax, [ebp - 0x858]
push eax
push 1
call fcn.1004edfc
add esp, 0x10
jmp 0x10052b2d
mov dword [ebp - 0x98], 0xffffffe2
jmp 0x10052bba
mov eax, dword [ebp - 0x98]
inc eax
mov dword [ebp - 0x98], eax
cmp dword [ebp - 0x98], 0xfffffff7
jne 0x10052beb
mov byte [ebp - 0xa0], 0
movzx eax, byte [ebp - 0xa0]
test eax, eax
je 0x10052be9
push 0x4e53
push 0x499c
push 1
call fcn.1004ee9b
add esp, 0xc
jmp 0x10052bad
lea eax, [ebp - 0x6d4]
push eax
lea ecx, [ebp - 0xb9c]
call fcn.10029400
mov dword [ebp - 0x724], eax
mov eax, dword [ebp - 0x724]
mov dword [ebp - 0x7ec], eax
mov dword [ebp - 4], 0x10
push 0xa
xor edx, edx
mov ecx, dword [ebp - 0x7ec]
call fcn.10034cd0
pop ecx
mov dword [ebp - 0x72c], eax
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0xb9c]
call fcn.100195eb
and dword [ebp - 0x23c], 0
jmp 0x10052c51
mov eax, dword [ebp - 0x23c]
inc eax
mov dword [ebp - 0x23c], eax
cmp dword [ebp - 0x23c], 0xb
jae 0x10052c6a
mov eax, dword [ebp - 0x23c]
mov byte [ebp + eax - 0x6d4], 0
jmp 0x10052c44
mov dword [ebp - 0x998], 1
mov dword [ebp - 0x99c], 0xfffffffa
mov dword [ebp - 0x9a4], 3
mov dword [ebp - 0x9ac], 0xffffffff
push 4
lea ecx, [ebp - 0x940]
call fcn.10019689
mov dword [ebp - 4], 0x11
mov dword [ebp - 0x6c], 0
jmp 0x10052cb6
mov eax, dword [ebp - 0x6c]
inc eax
mov dword [ebp - 0x6c], eax
cmp dword [ebp - 0x6c], 4
jge 0x10052ccc
mov eax, dword [ebp - 0x6c]
mov dword [ebp + eax*4 - 0xc04], 0xffffffff
jmp 0x10052caf
mov dword [ebp - 0x6c], 0
jmp 0x10052cdc
mov eax, dword [ebp - 0x6c]
inc eax
mov dword [ebp - 0x6c], eax
cmp dword [ebp - 0x6c], 4
jge 0x10052cf8
push dword [ebp - 0x6c]
lea ecx, [ebp - 0x940]
call fcn.10019727
mov dword [eax], 0xbededb5c
jmp 0x10052cd5
push 3
lea ecx, [ebp - 0x940]
call fcn.10019727
mov dword [ebp - 0x434], eax
mov eax, dword [ebp - 0x434]
mov eax, dword [eax]
inc eax
mov ecx, dword [ebp - 0x434]
mov dword [ecx], eax
mov byte [ebp - 0xac], 0
movzx eax, byte [ebp - 0xac]
test eax, eax
je 0x10052d56
push 1
push 0x5fcb
push 0x13c3
push 0x6fd3
push 0x2f80
push 0x675a
push 0x5e76
call fcn.1004ef05
add esp, 0x1c
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x940]
call fcn.1001970b
push dword [ebp - 0x72c]
push dword [ebp - 0x82c]
call fcn.1004b464
pop ecx
pop ecx
mov dword [ebp - 0x484], eax
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x204], 0xefa97f51
mov dword [ebp - 0x2ac], 0x7f668cde
mov dword [ebp - 0x9b4], 6
mov dword [ebp - 0x734], 1
mov dword [ebp - 0xd8], 0xea0f
mov dword [ebp - 0x474], 0
mov dword [ebp - 0x7f4], 1
mov dword [ebp - 0x70], 0
jmp 0x10052ddb
mov eax, dword [ebp - 0x70]
inc eax
mov dword [ebp - 0x70], eax
cmp dword [ebp - 0x70], 1
jge 0x10052dee
mov eax, dword [ebp - 0x70]
mov dword [ebp + eax*4 - 0x3c], 0xfffffff7
jmp 0x10052dd4
mov dword [ebp - 0x70], 0
jmp 0x10052dfe
mov eax, dword [ebp - 0x70]
inc eax
mov dword [ebp - 0x70], eax
cmp dword [ebp - 0x70], 2
jge 0x10052e14
mov eax, dword [ebp - 0x70]
mov dword [ebp + eax*4 - 0xa14], 0xfd024ca9
jmp 0x10052df7
mov dword [ebp - 0x1c], 0
jmp 0x10052e24
mov eax, dword [ebp - 0x1c]
dec eax
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], 0
jl 0x10052fb9
mov dword [ebp - 0x58c], 0x27603859
cmp dword [ebp - 0x1c], 0
je 0x10052f2c
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x3c]
mov dword [ebp - 0x9bc], eax
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp + eax*4 - 0x3c]
mov dword [ebp - 0x9c4], eax
mov eax, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x1c]
mov ecx, dword [ebp + ecx*4 - 0x3c]
cmp dword [ebp + eax*4 - 0x3c], ecx
jne 0x10052e7b
mov dword [ebp - 0x584], 1
jmp 0x10052e82
and dword [ebp - 0x584], 0
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp + eax*4 - 0x3c]
cmp dword [ebp - 0x584], eax
jg 0x10052e9d
mov dword [ebp - 0x43c], 1
jmp 0x10052ea4
and dword [ebp - 0x43c], 0
mov eax, dword [ebp - 0x43c]
add eax, 0xe71b
cmp eax, 0x74edf0eb
jl 0x10052ec2
mov dword [ebp - 0x62c], 1
jmp 0x10052ec9
and dword [ebp - 0x62c], 0
mov eax, dword [ebp - 0x1c]
cmp eax, dword [ebp - 0x62c]
jl 0x10052ee0
mov dword [ebp - 0x444], 1
jmp 0x10052ee7
and dword [ebp - 0x444], 0
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp + eax*4 - 0x3c]
cmp dword [ebp - 0x444], eax
je 0x10052f02
mov dword [ebp - 0x44c], 1
jmp 0x10052f09
and dword [ebp - 0x44c], 0
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x58c], eax
mov eax, dword [ebp - 0x58c]
cmp eax, dword [ebp - 0x44c]
jne 0x10052f2c
mov dword [ebp - 0x680], 1
jmp 0x10052f33
and dword [ebp - 0x680], 0
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp + eax*4 - 0x3c]
cmp dword [ebp - 0x680], eax
jg 0x10052f4e
mov dword [ebp - 0x454], 1
jmp 0x10052f55
and dword [ebp - 0x454], 0
cmp dword [ebp - 0x454], 0x3847d228
jl 0x10052f6d
mov dword [ebp - 0x594], 1
jmp 0x10052f74
and dword [ebp - 0x594], 0
mov eax, dword [ebp - 0x1c]
push 4
pop ecx
imul ecx, ecx, 0
mov edx, dword [ebp - 0x594]
sub edx, dword [ebp + ecx - 0x3c]
mov ecx, dword [ebp - 0x1c]
imul edx, dword [ebp + ecx*4 - 0x3c]
cmp dword [ebp + eax*4 - 0x3c], edx
jge 0x10052fa1
mov dword [ebp - 0x45c], 1
jmp 0x10052fa8
and dword [ebp - 0x45c], 0
mov eax, dword [ebp - 0x45c]
mov dword [ebp - 0x204], eax
jmp 0x10052e1d
push 4
pop eax
imul eax, eax, 0
cmp dword [ebp + eax - 0x3c], 1
jle 0x10052fd2
mov dword [ebp - 0x634], 1
jmp 0x10052fd9
and dword [ebp - 0x634], 0
imul eax, dword [ebp - 0x634], 0xfffffff7
sub eax, dword [ebp - 0xd8]
push 4
pop ecx
imul ecx, ecx, 0
imul eax, dword [ebp + ecx - 0x3c]
test eax, eax
jne 0x10053007
cmp dword [ebp - 0x2ac], 0
jne 0x10053007
and dword [ebp - 0x464], 0
jmp 0x10053011
mov dword [ebp - 0x464], 1
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x3c]
push 0xfffffffffffffff6
pop eax
cmp eax, 0xca2a
jg 0x10053031
mov dword [ebp - 0x59c], 1
jmp 0x10053038
and dword [ebp - 0x59c], 0
mov eax, dword [ebp - 0xd8]
cmp dword [ebp - 0x59c], eax
jle 0x10053052
mov dword [ebp - 0x46c], 1
jmp 0x10053059
and dword [ebp - 0x46c], 0
mov eax, dword [ebp - 0xd8]
cmp dword [ebp - 0x46c], eax
je 0x10053073
mov dword [ebp - 0x6a0], 1
jmp 0x1005307a
and dword [ebp - 0x6a0], 0
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x3c]
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp - 0x1c]
add eax, dword [ebp - 0x204]
mov dword [ebp - 0x204], eax
mov eax, dword [ebp - 0x204]
imul eax, dword [ebp - 0x6a0]
mov dword [ebp - 0x474], eax
cmp dword [ebp - 0x474], 0
je 0x100530b9
cmp dword [ebp - 0x2ac], 0
xor eax, eax
inc eax
jne 0x100530d0
cmp dword [ebp - 0x2ac], 0
jne 0x100530d0
and dword [ebp - 0x5a4], 0
jmp 0x100530da
mov dword [ebp - 0x5a4], 1
imul eax, dword [ebp - 0x5a4], 0x7a53
cmp eax, dword [ebp - 0xd8]
je 0x100530f8
mov dword [ebp - 0x47c], 1
jmp 0x100530ff
and dword [ebp - 0x47c], 0
mov eax, dword [ebp - 0xd8]
mov ecx, dword [ebp - 0x47c]
lea eax, [ecx + eax - 1]
cmp eax, dword [ebp - 0xd8]
jl 0x10053120
cmp dword [ebp - 0x734], 0
jne 0x1005313f
cmp dword [ebp - 0x7f4], 0
jne 0x1005313f
push 4
pop eax
imul eax, eax, 0
cmp dword [ebp + eax - 0x3c], 0
jne 0x1005313f
and dword [ebp - 0x63c], 0
jmp 0x10053149
mov dword [ebp - 0x63c], 1
push 4
pop eax
shl eax, 0
mov ecx, dword [ebp - 0x63c]
mov dword [ebp + eax - 0xa14], ecx
lea eax, [ebp - 0x484]
push eax
push 1
lea eax, [ebp - 0xe0]
push eax
push 0x346d
push 0x720a
call fcn.1004f061
add esp, 0x14
push 3
lea ecx, [ebp - 0x958]
call fcn.10019689
mov dword [ebp - 4], 0x12
mov dword [ebp - 0x850], 0xd8a87013
mov dword [ebp - 0x73c], 0xc8490231
mov dword [ebp - 0x744], 0xfffffffe
mov dword [ebp - 0x9cc], 0xe2b79dc8
push 0x135d
lea eax, [ebp - 0x9d4]
push eax
push 0x292f
lea eax, [ebp - 0x958]
push eax
push 1
call fcn.1004f0e5
add esp, 0x14
lea eax, [ebp - 0x73c]
push eax
push 0
lea eax, [ebp - 0x850]
push eax
lea eax, [ebp - 0x744]
push eax
lea eax, [ebp - 0x958]
push eax
call fcn.1004fa96
add esp, 0x14
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x958]
call fcn.1001970b
lea eax, [ebp - 0x14]
push eax
push 0x5eba
push 0
lea eax, [ebp - 0x484]
push eax
push 0x4fea
call fcn.1004ff45
add esp, 0x14
and dword [ebp - 0x114], 0
mov dword [ebp - 0x58], 0xfffffffb
mov dword [ebp - 0x2f8], 0xb5ea
mov dword [ebp - 0x644], 0
mov dword [ebp - 0x64c], 0
mov dword [ebp - 0x5c4], 0
mov dword [ebp - 0x5d4], 0x2df
mov dword [ebp - 0x794], 9
mov eax, dword [ebp - 0x58]
mov dword [ebp - 0x994], eax
mov eax, dword [ebp - 0x58]
mov dword [ebp - 0x9e4], eax
mov eax, dword [ebp - 0x58]
cmp dword [ebp - 0x58], eax
je 0x100532a0
mov dword [ebp - 0x5ac], 1
jmp 0x100532a7
and dword [ebp - 0x5ac], 0
mov eax, dword [ebp - 0x5ac]
sub eax, 0x2b8ea2c3
cmp eax, 0xfffffff8
jne 0x100532c3
mov dword [ebp - 0x48c], 1
jmp 0x100532ca
and dword [ebp - 0x48c], 0
mov eax, dword [ebp - 0x48c]
mov dword [ebp - 0x2f8], eax
cmp dword [ebp - 0x2f8], 0x15fb26c
je 0x100532ee
mov dword [ebp - 0x688], 1
jmp 0x100532f5
and dword [ebp - 0x688], 0
mov eax, dword [ebp - 0x58]
cmp dword [ebp - 0x688], eax
jg 0x1005330c
mov dword [ebp - 0x494], 1
jmp 0x10053313
and dword [ebp - 0x494], 0
imul eax, dword [ebp - 0x494], 0xcdf8
cmp eax, dword [ebp - 0x58]
jle 0x1005332e
mov dword [ebp - 0x5b4], 1
jmp 0x10053335
and dword [ebp - 0x5b4], 0
mov eax, dword [ebp - 0x58]
cmp dword [ebp - 0x5b4], eax
jge 0x1005334c
mov dword [ebp - 0x49c], 1
jmp 0x10053353
and dword [ebp - 0x49c], 0
mov eax, dword [ebp - 0x49c]
add eax, 3
mov dword [ebp - 0x644], eax
je 0x10053380
mov eax, dword [ebp + 0xc]
mov dword [ebp - 0x718], eax
mov eax, dword [ebp + 0x18]
mov dword [ebp - 0x720], eax
mov eax, dword [ebp + 0x10]
mov dword [ebp - 0x728], eax
mov eax, dword [ebp + 8]
mov dword [ebp - 0x730], eax
mov eax, dword [ebp + 0x14]
mov dword [ebp - 0x738], eax
mov eax, dword [ebp + 0x20]
mov dword [ebp - 0x740], eax
mov eax, dword [ebp + 0x28]
mov dword [ebp - 0x748], eax
mov eax, dword [ebp - 0x718]
mov dword [ebp - 0x768], eax
mov eax, dword [ebp - 0x720]
mov dword [ebp - 0x2b0], eax
mov eax, dword [ebp - 0x728]
mov dword [ebp - 0x758], eax
mov eax, dword [ebp - 0x730]
mov dword [ebp - 0x34c], eax
mov eax, dword [ebp - 0x738]
mov dword [ebp - 0x750], eax
mov eax, dword [ebp - 0x740]
mov dword [ebp - 0x2a0], eax
mov eax, dword [ebp - 0x748]
mov dword [ebp - 0x760], eax
mov eax, dword [ebp - 0x34c]
cmp dword [eax], 0
je 0x10055e75
mov eax, dword [ebp - 0x34c]
mov eax, dword [eax]
mov dword [ebp - 0x9d8], eax
push 1
mov ecx, dword [ebp - 0x750]
call fcn.10019727
mov esi, eax
push 1
mov ecx, dword [ebp - 0x2a0]
call fcn.10019727
mov ecx, dword [esi]
cmp ecx, dword [eax]
jne 0x10055e3c
mov dword [ebp - 0x354], 1
jmp 0x10055e43
and dword [ebp - 0x354], 0
push 0
mov ecx, dword [ebp - 0x2a0]
call fcn.10019727
mov esi, dword [ebp - 0x354]
add esi, dword [eax]
push 1
mov ecx, dword [ebp - 0x2a0]
call fcn.10019727
add esi, dword [eax]
je 0x10055e75
mov dword [ebp - 0x2a8], 1
jmp 0x10055e7c
and dword [ebp - 0x2a8], 0
mov eax, dword [ebp - 0x758]
mov ecx, dword [ebp - 0x2a8]
mov dword [eax], ecx
mov ecx, dword [ebp - 0x2b0]
imul ecx, dword [ecx], 0x2f74
mov eax, dword [ebp - 0x2b0]
mov eax, dword [eax]
mov ecx, dword [ebp - 0x760]
imul eax, dword [ecx]
or ecx, 0xffffffff
sub ecx, eax
je 0x10055ec5
mov eax, dword [ebp - 0x2b0]
cmp dword [eax], 0
je 0x10055ec5
mov dword [ebp - 0x35c], 1
jmp 0x10055ecc
and dword [ebp - 0x35c], 0
mov eax, dword [ebp - 0x768]
mov ecx, dword [ebp - 0x35c]
mov dword [eax], ecx
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop esi
mov esp, ebp
pop ebp
ret