Function at 0x10042a9d
Capabilities:
Contain obfuscated stackstrings
Enumerate pe sections
Parse pe header
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x10081481
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0xa6c
push esi
and dword [ebp - 0x18], 0
movzx eax, byte [ebp + 0x18]
test eax, eax
je 0x100473af
mov eax, dword [ebp + 0xc]
mov dword [ebp - 0x2c], eax
mov dword [ebp - 0x70], 1
mov dword [ebp - 0xdc], 0
mov dword [ebp - 0xb0], 0x50db8561
mov dword [ebp - 0x658], 0xffff
mov dword [ebp - 0x64], 0
jmp 0x10042b07
mov eax, dword [ebp - 0x64]
inc eax
mov dword [ebp - 0x64], eax
cmp dword [ebp - 0x64], 2
jge 0x10042b1d
mov eax, dword [ebp - 0x64]
mov dword [ebp + eax*4 - 0x674], 0xc443
jmp 0x10042b00
mov dword [ebp - 0x64], 0
jmp 0x10042b2d
mov eax, dword [ebp - 0x64]
inc eax
mov dword [ebp - 0x64], eax
cmp dword [ebp - 0x64], 3
jge 0x10042b43
mov eax, dword [ebp - 0x64]
mov dword [ebp + eax*4 - 0x900], 0x4b83
jmp 0x10042b26
mov eax, 0x9f42
test eax, eax
je 0x10042b73
mov eax, dword [ebp - 0x70]
mov dword [ebp - 0x8ac], eax
mov eax, dword [ebp - 0x70]
mov dword [ebp - 0x7f8], eax
mov eax, 0xfffc
test eax, eax
je 0x10042b73
mov dword [ebp - 0x360], 1
jmp 0x10042b7a
and dword [ebp - 0x360], 0
imul eax, dword [ebp - 0x70], 6
cmp dword [ebp - 0x360], eax
jge 0x10042b92
mov dword [ebp - 0x520], 1
jmp 0x10042b99
and dword [ebp - 0x520], 0
mov eax, dword [ebp - 0x520]
mov dword [ebp - 0xdc], eax
mov eax, dword [ebp - 0x70]
cmp dword [ebp - 0xdc], eax
jg 0x10042bbc
mov dword [ebp - 0x568], 1
jmp 0x10042bc3
and dword [ebp - 0x568], 0
mov eax, dword [ebp - 0x568]
mov dword [ebp - 0xb0], eax
cmp dword [ebp - 0x70], 0
jne 0x10042be9
mov eax, dword [ebp - 0x70]
add eax, dword [ebp - 0xb0]
jne 0x10042be9
and dword [ebp - 0x580], 0
jmp 0x10042bf3
mov dword [ebp - 0x580], 1
imul eax, dword [ebp - 0xdc], 3
imul eax, eax, 5
sub eax, dword [ebp - 0xb0]
cmp eax, dword [ebp - 0x70]
jg 0x10042c14
mov dword [ebp - 0x570], 1
jmp 0x10042c1b
and dword [ebp - 0x570], 0
cmp dword [ebp - 0x570], 0xf3e1
jl 0x10042c39
cmp dword [ebp - 0xdc], 0
jne 0x10042c39
and dword [ebp - 0x578], 0
jmp 0x10042c43
mov dword [ebp - 0x578], 1
mov eax, dword [ebp - 0x70]
add eax, dword [ebp - 0x578]
cmp dword [ebp - 0x580], eax
je 0x10042c60
mov dword [ebp - 0x5a8], 1
jmp 0x10042c67
and dword [ebp - 0x5a8], 0
mov eax, dword [ebp - 0x5a8]
mov dword [ebp - 0xdc], eax
mov eax, dword [ebp - 0xb0]
cmp dword [ebp - 0xdc], eax
jge 0x10042c8d
mov dword [ebp - 0x544], 1
jmp 0x10042c94
and dword [ebp - 0x544], 0
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x674]
cmp dword [ebp - 0x544], eax
jl 0x10042cb5
mov dword [ebp - 0x710], 1
jmp 0x10042cbc
and dword [ebp - 0x710], 0
mov eax, dword [ebp - 0x70]
mov dword [ebp - 0x7fc], eax
push 4
pop eax
shl eax, 1
mov eax, dword [ebp + eax - 0x900]
mov dword [ebp - 0x804], eax
push 4
pop eax
shl eax, 1
mov eax, dword [ebp + eax - 0x900]
mov dword [ebp - 0x80c], eax
mov eax, dword [ebp - 0xb0]
mov dword [ebp - 0x814], eax
cmp dword [ebp - 0x658], 0
je 0x10042d1a
push 4
pop eax
imul eax, eax, 0
cmp dword [ebp + eax - 0x674], 0
je 0x10042d1a
mov dword [ebp - 0x4f4], 1
jmp 0x10042d21
and dword [ebp - 0x4f4], 0
cmp dword [ebp - 0x4f4], 0xb017
jne 0x10042d39
mov dword [ebp - 0x518], 1
jmp 0x10042d40
and dword [ebp - 0x518], 0
mov eax, dword [ebp - 0xb0]
cmp dword [ebp - 0x518], eax
jg 0x10042d5a
mov dword [ebp - 0x2c4], 1
jmp 0x10042d61
and dword [ebp - 0x2c4], 0
imul eax, dword [ebp - 0x2c4], 0x851f
test eax, eax
je 0x10042d7b
mov dword [ebp - 0x43c], 1
jmp 0x10042d82
and dword [ebp - 0x43c], 0
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x674]
cmp dword [ebp - 0x43c], eax
je 0x10042da3
mov dword [ebp - 0x2cc], 1
jmp 0x10042daa
and dword [ebp - 0x2cc], 0
cmp dword [ebp - 0x2cc], 1
jle 0x10042dbf
mov dword [ebp - 0x55c], 1
jmp 0x10042dc6
and dword [ebp - 0x55c], 0
mov eax, dword [ebp - 0x55c]
mov dword [ebp - 0xb0], eax
mov eax, dword [ebp - 0x2c]
mov dword [ebp - 0x314], eax
mov dword [ebp - 0x84], 1
mov dword [ebp - 0x84], 0x204e2db5
mov dword [ebp - 0x84], 0xc
jmp 0x10042e08
mov eax, dword [ebp - 0x84]
inc eax
mov dword [ebp - 0x84], eax
cmp dword [ebp - 0x84], 0x13
je 0x10043002
mov dword [ebp - 0x170], 0
push 2
lea ecx, [ebp - 0x608]
call fcn.10016499
and dword [ebp - 4], 0
mov dword [ebp - 0xec], 0x34111d01
mov dword [ebp - 0xd4], 0xfffffffc
push 0x8d6
lea eax, [ebp - 0x608]
push eax
push 1
lea eax, [ebp - 0x838]
push eax
call fcn.10040caf
add esp, 0x10
mov eax, dword [ebp - 0x84]
mov dword [ebp - 0x840], eax
mov eax, dword [ebp - 0x170]
mov dword [ebp - 0x2d4], eax
push 1
lea ecx, [ebp - 0x608]
call fcn.10016537
mov ecx, dword [ebp - 0x2d4]
mov dword [eax], ecx
mov eax, dword [ebp - 0x170]
add eax, dword [ebp - 0x2d4]
jne 0x10042eae
cmp dword [ebp - 0x84], 0
jne 0x10042eae
and dword [ebp - 0x444], 0
jmp 0x10042eb8
mov dword [ebp - 0x444], 1
mov eax, dword [ebp - 0x444]
mov dword [ebp - 0xec], eax
mov eax, dword [ebp - 0xec]
sub eax, dword [ebp - 0x84]
add eax, 0x4e828d47
cmp eax, 1
jb 0x10042ee6
mov dword [ebp - 0x2dc], 1
jmp 0x10042eed
and dword [ebp - 0x2dc], 0
mov eax, dword [ebp - 0x2dc]
mov dword [ebp - 0xd4], eax
mov eax, dword [ebp - 0xd4]
mov dword [ebp - 0xec], eax
mov eax, dword [ebp - 0xec]
mov dword [ebp - 0x4fc], eax
push 1
lea ecx, [ebp - 0x608]
call fcn.10016537
mov ecx, dword [ebp - 0x4fc]
mov dword [eax], ecx
cmp dword [ebp - 0x4fc], 0
jne 0x10042fb7
push 1
lea ecx, [ebp - 0x608]
call fcn.10016537
mov eax, dword [ebp - 0xd4]
cmp dword [ebp - 0xec], eax
jne 0x10042f5a
mov dword [ebp - 0x2e4], 1
jmp 0x10042f61
and dword [ebp - 0x2e4], 0
mov eax, dword [ebp - 0x2e4]
neg eax
jne 0x10042f72
cmp dword [ebp - 0xd4], 0
cmp dword [ebp - 0x170], 0
je 0x10042f90
cmp dword [ebp - 0xd4], 0
je 0x10042f90
mov dword [ebp - 0x44c], 1
jmp 0x10042f97
and dword [ebp - 0x44c], 0
push 1
lea ecx, [ebp - 0x608]
call fcn.10016537
mov ecx, dword [ebp - 0x44c]
cmp ecx, dword [eax]
jl 0x10042fb7
and dword [ebp - 0x2ec], 0
jmp 0x10042fc1
mov dword [ebp - 0x2ec], 1
mov eax, dword [ebp - 0x170]
cmp dword [ebp - 0x2ec], eax
jle 0x10042fdb
mov dword [ebp - 0x57c], 1
jmp 0x10042fe2
and dword [ebp - 0x57c], 0
mov eax, dword [ebp - 0x57c]
mov dword [ebp - 0xd4], eax
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x608]
call fcn.1001651b
jmp 0x10042dfb
mov eax, dword [ebp - 0x314]
movzx eax, word [eax]
cmp eax, 0x5a4d
je 0x10043017
jmp 0x10047426
mov dword [ebp - 0x80], 0
jmp 0x10043027
mov eax, dword [ebp - 0x80]
inc eax
mov dword [ebp - 0x80], eax
cmp dword [ebp - 0x80], 3
jge 0x1004303d
mov eax, dword [ebp - 0x80]
mov dword [ebp + eax*4 - 0x2b4], 0x31713b91
jmp 0x10043020
mov dword [ebp - 0x80], 0
jmp 0x1004304d
mov eax, dword [ebp - 0x80]
inc eax
mov dword [ebp - 0x80], eax
cmp dword [ebp - 0x80], 3
jge 0x10043063
mov eax, dword [ebp - 0x80]
mov dword [ebp + eax*4 - 0x970], 7
jmp 0x10043046
push 4
pop eax
imul eax, eax, 0
mov dword [ebp + eax - 0x2b4], 0x17
jmp 0x10043091
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x2b4]
dec eax
push 4
pop ecx
imul ecx, ecx, 0
mov dword [ebp + ecx - 0x2b4], eax
push 4
pop eax
imul eax, eax, 0
cmp dword [ebp + eax - 0x2b4], 0xfffffffa
je 0x1004325d
mov dword [ebp - 0x54], 0xaa43b2b
mov dword [ebp - 0x230], 0
mov dword [ebp - 0x668], 0x300d
push 4
pop eax
shl eax, 1
mov eax, dword [ebp + eax - 0x2b4]
mov dword [ebp - 0x848], eax
push 4
pop eax
shl eax, 1
cmp dword [ebp + eax - 0x2b4], 0xfffffffc
jle 0x100430ed
mov dword [ebp - 0x2f4], 1
jmp 0x100430f4
and dword [ebp - 0x2f4], 0
imul eax, dword [ebp - 0x2f4], 0xffff
imul eax, dword [ebp - 0x54]
cmp eax, 0x48abb75d
je 0x10043115
mov dword [ebp - 0x454], 1
jmp 0x1004311c
and dword [ebp - 0x454], 0
imul eax, dword [ebp - 0x54], 0xbec0
imul eax, dword [ebp - 0x454]
push 4
pop ecx
imul ecx, ecx, 0
mov dword [ebp + ecx - 0x970], eax
or eax, 0xffffffff
sub eax, dword [ebp - 0x54]
mov dword [ebp - 0x230], eax
mov eax, dword [ebp - 0x54]
cmp dword [ebp - 0x230], eax
jle 0x1004315a
mov dword [ebp - 0x2fc], 1
jmp 0x10043161
and dword [ebp - 0x2fc], 0
mov eax, dword [ebp - 0x54]
cmp dword [ebp - 0x2fc], eax
jne 0x10043178
mov dword [ebp - 0x504], 1
jmp 0x1004317f
and dword [ebp - 0x504], 0
mov eax, dword [ebp - 0x54]
cmp eax, dword [ebp - 0x504]
jne 0x10043196
mov dword [ebp - 0x304], 1
jmp 0x1004319d
and dword [ebp - 0x304], 0
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x2b4]
cmp dword [ebp - 0x304], eax
jge 0x100431be
mov dword [ebp - 0x45c], 1
jmp 0x100431c5
and dword [ebp - 0x45c], 0
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x2b4]
cmp dword [ebp - 0x45c], eax
jl 0x100431e6
mov dword [ebp - 0x30c], 1
jmp 0x100431ed
and dword [ebp - 0x30c], 0
mov eax, dword [ebp - 0x54]
cmp dword [ebp - 0x30c], eax
jg 0x10043204
mov dword [ebp - 0x564], 1
jmp 0x1004320b
and dword [ebp - 0x564], 0
mov eax, dword [ebp - 0x54]
add eax, dword [ebp - 0x564]
push 4
pop ecx
imul ecx, ecx, 0
add eax, dword [ebp + ecx - 0x2b4]
cmp eax, dword [ebp - 0x54]
jg 0x1004324d
cmp dword [ebp - 0x54], 0
je 0x1004324d
mov dword [ebp - 0x660], 0x28464d91
mov dword [ebp - 0x660], 0x76522452
cmp dword [ebp - 0x230], 0
je 0x1004324b
jmp 0x1004325d
jmp 0x10043258
cmp dword [ebp - 0x668], 0
je 0x10043258
jmp 0x1004325d
jmp 0x10043076
mov eax, dword [ebp - 0x314]
mov ecx, dword [ebp - 0x2c]
add ecx, dword [eax + 0x3c]
mov dword [ebp - 0xc0], ecx
mov eax, dword [ebp - 0xc0]
cmp dword [eax], 0x4550
je 0x10043282
jmp 0x10047426
mov dword [ebp - 0x160], 0x91a049fe
mov byte [ebp - 0xa1], 0
push 1
lea eax, [ebp - 0xa1]
push eax
call fcn.10040d1d
pop ecx
pop ecx
mov dword [ebp - 0x160], 0xa
jmp 0x100432bc
mov eax, dword [ebp - 0x160]
inc eax
mov dword [ebp - 0x160], eax
cmp dword [ebp - 0x160], 0x1d
jl 0x1004341b
mov dword [ebp - 0x78], 0
jmp 0x100432d9
mov eax, dword [ebp - 0x78]
inc eax
mov dword [ebp - 0x78], eax
cmp dword [ebp - 0x78], 4
jge 0x100432ef
mov eax, dword [ebp - 0x78]
mov dword [ebp + eax*4 - 0x944], 0xfffffffc
jmp 0x100432d2
mov dword [ebp - 0x78], 0
jmp 0x100432ff
mov eax, dword [ebp - 0x78]
inc eax
mov dword [ebp - 0x78], eax
cmp dword [ebp - 0x78], 2
jge 0x10043315
mov eax, dword [ebp - 0x78]
mov dword [ebp + eax*4 - 0x52c], 0x4768c0aa
jmp 0x100432f8
push 4
pop eax
imul eax, eax, 0
mov dword [ebp + eax - 0x52c], 0
jmp 0x10043343
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x52c]
inc eax
push 4
pop ecx
imul ecx, ecx, 0
mov dword [ebp + ecx - 0x52c], eax
push 4
pop eax
imul eax, eax, 0
cmp dword [ebp + eax - 0x52c], 3
jg 0x10043416
mov dword [ebp - 0x7c], 0
mov dword [ebp - 0x7c], 3
jmp 0x1004336e
mov eax, dword [ebp - 0x7c]
dec eax
mov dword [ebp - 0x7c], eax
cmp dword [ebp - 0x7c], 0
jl 0x100433b5
mov dword [ebp - 0x10c], 0x1b055cc2
mov dword [ebp - 0x10c], 0
jmp 0x10043397
mov eax, dword [ebp - 0x10c]
inc eax
mov dword [ebp - 0x10c], eax
cmp dword [ebp - 0x10c], 4
jge 0x100433b3
mov eax, dword [ebp - 0x10c]
mov dword [ebp + eax*4 - 0x944], 0xfc88
jmp 0x1004338a
jmp 0x10043367
mov dword [ebp - 0x7c], 3
jmp 0x100433c5
mov eax, dword [ebp - 0x7c]
dec eax
mov dword [ebp - 0x7c], eax
cmp dword [ebp - 0x7c], 0
jl 0x10043411
mov byte [ebp - 0x96], 0
movzx eax, byte [ebp - 0x96]
test eax, eax
je 0x100433f1
push 0
push 0x7efd
push 0x214d
call fcn.10042a41
add esp, 0xc
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x52c]
mov ecx, dword [ebp - 0x7c]
mov eax, dword [ebp + eax*4 - 0x944]
mov dword [ebp + ecx*4 - 0x944], eax
jmp 0x100433be
jmp 0x10043328
jmp 0x100432af
push 8
pop eax
imul eax, eax, 0
mov ecx, dword [ebp - 0xc0]
lea eax, [ecx + eax + 0x78]
mov dword [ebp - 0x48], eax
push 4
lea ecx, [ebp - 0x744]
call fcn.10016499
mov dword [ebp - 4], 1
mov dword [ebp - 0xc8], 0xa32b1cec
push 0x1008
lea eax, [ebp - 0x744]
push eax
push 0x125f
push 1
lea eax, [ebp - 0x850]
push eax
push 0x14f4
call fcn.10040d78
add esp, 0x18
mov dword [ebp - 0xc8], 3
jmp 0x1004348c
mov eax, dword [ebp - 0xc8]
dec eax
mov dword [ebp - 0xc8], eax
cmp dword [ebp - 0xc8], 0
jl 0x1004357b
mov dword [ebp - 0x68], 0x9f7fd1e8
mov dword [ebp - 0x6a8], 0xd46758e3
mov byte [ebp - 0x97], 0
movzx eax, byte [ebp - 0x97]
test eax, eax
je 0x100434e5
push 0x21da
push 0
push 0
push 0x1a56
push 0x9a0
push 0
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.USER32.dll_GetDC]
push eax
call dword [sym.imp.GDI32.dll_GetDIBits]
mov dword [ebp - 0x68], 3
jmp 0x100434f5
mov eax, dword [ebp - 0x68]
dec eax
mov dword [ebp - 0x68], eax
cmp dword [ebp - 0x68], 0
jl 0x10043544
lea eax, [ebp - 0x744]
push eax
lea eax, [ebp - 0xc8]
push eax
push 1
push 0x278e
lea eax, [ebp - 0x68]
push eax
push 0x6e10
lea eax, [ebp - 0x6a8]
push eax
call fcn.10040e1e
add esp, 0x1c
mov byte [ebp - 0x99], 0
movzx eax, byte [ebp - 0x99]
test eax, eax
je 0x10043542
push 0
call fcn.100414c9
pop ecx
jmp 0x100434ee
mov dword [ebp - 0x68], 3
jmp 0x10043554
mov eax, dword [ebp - 0x68]
dec eax
mov dword [ebp - 0x68], eax
cmp dword [ebp - 0x68], 0
jl 0x10043576
mov byte [ebp - 0x9b], 0
movzx eax, byte [ebp - 0x9b]
test eax, eax
je 0x10043574
push 0
call fcn.10041ace
pop ecx
jmp 0x1004354d
jmp 0x1004347f
push 1
lea eax, [ebp - 0xc8]
push eax
push 0x6352
lea eax, [ebp - 0x744]
push eax
push 0x60ce
call fcn.10040f6b
add esp, 0x14
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x744]
call fcn.1001651b
mov eax, dword [ebp - 0x48]
cmp dword [eax + 4], 0
jne 0x100435ba
jmp 0x10047426
push 1
lea ecx, [ebp - 0x768]
call fcn.10016499
mov dword [ebp - 4], 2
mov dword [ebp - 0xd0], 0xfffffff6
push 0x7dbb
lea eax, [ebp - 0x858]
push eax
lea eax, [ebp - 0x768]
push eax
push 0x265
push 0x27e2
push 0x133a
push 0
push 0x27ea
push 0x696
push 0x7262
push 0x3c0a
call fcn.1004120c
add esp, 0x2c
mov dword [ebp - 0xd0], 0
jmp 0x10043631
mov eax, dword [ebp - 0xd0]
dec eax
mov dword [ebp - 0xd0], eax
cmp dword [ebp - 0xd0], 0
jl 0x10043706
mov dword [ebp - 0xf4], 0xd13034d0
push dword [ebp - 0xd0]
lea ecx, [ebp - 0x768]
call fcn.10016537
mov esi, eax
push dword [ebp - 0xd0]
lea ecx, [ebp - 0x768]
call fcn.10016537
mov ecx, dword [esi]
cmp ecx, dword [eax]
je 0x1004367e
mov dword [ebp - 0x464], 1
jmp 0x10043685
and dword [ebp - 0x464], 0
mov eax, dword [ebp - 0x464]
mov dword [ebp - 0xf4], eax
mov dword [ebp - 0xf4], 0
jmp 0x100436aa
mov eax, dword [ebp - 0xf4]
dec eax
mov dword [ebp - 0xf4], eax
cmp dword [ebp - 0xf4], 0
jl 0x10043701
mov byte [ebp - 0x9d], 0
movzx eax, byte [ebp - 0x9d]
test eax, eax
je 0x100436d9
push 0
push 0x32f0
push 0x34da
call fcn.10040ff6
add esp, 0xc
mov byte [ebp - 0x9f], 0
movzx eax, byte [ebp - 0x9f]
test eax, eax
je 0x100436ff
push 0x1710
push 0x7d00
push 0
call fcn.10041199
add esp, 0xc
jmp 0x1004369d
jmp 0x10043624
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x768]
call fcn.1001651b
and dword [ebp - 0x30], 0
push 2
lea ecx, [ebp - 0x2a8]
call fcn.10016499
mov dword [ebp - 4], 3
mov dword [ebp - 0x4c], 0
mov dword [ebp - 0x50c], 0xcb8ce3e
mov dword [ebp - 0x6b8], 0xffffffff
mov dword [ebp - 0x6c0], 0xcefd
mov dword [ebp - 0x1bc], 0
jmp 0x1004376b
mov eax, dword [ebp - 0x1bc]
inc eax
mov dword [ebp - 0x1bc], eax
cmp dword [ebp - 0x1bc], 2
jge 0x1004378d
push dword [ebp - 0x1bc]
lea ecx, [ebp - 0x2a8]
call fcn.10016537
mov dword [eax], 0xfffffff6
jmp 0x1004375e
mov dword [ebp - 0x4c], 0
jmp 0x1004379d
mov eax, dword [ebp - 0x4c]
inc eax
mov dword [ebp - 0x4c], eax
cmp dword [ebp - 0x4c], 1
jg 0x10043902
push dword [ebp - 0x4c]
lea ecx, [ebp - 0x2a8]
call fcn.10016537
mov esi, eax
push dword [ebp - 0x4c]
lea ecx, [ebp - 0x2a8]
call fcn.10016537
mov ecx, dword [esi]
cmp ecx, dword [eax]
jne 0x100437d7
mov dword [ebp - 0x31c], 1
jmp 0x100437de
and dword [ebp - 0x31c], 0
mov eax, dword [ebp - 0x31c]
mov dword [ebp - 0x50c], eax
push dword [ebp - 0x4c]
lea ecx, [ebp - 0x2a8]
call fcn.10016537
cmp dword [ebp - 0x50c], 0xffffffff
je 0x1004380d
mov dword [ebp - 0x324], 1
jmp 0x10043814
and dword [ebp - 0x324], 0
mov eax, dword [ebp - 0x324]
sub eax, 0x3e13
jne 0x1004383d
push dword [ebp - 0x4c]
lea ecx, [ebp - 0x2a8]
call fcn.10016537
cmp dword [eax], 0
jne 0x1004383d
and dword [ebp - 0x46c], 0
jmp 0x10043847
mov dword [ebp - 0x46c], 1
cmp dword [ebp - 0x46c], 0xfffffff6
jge 0x1004385c
mov dword [ebp - 0x32c], 1
jmp 0x10043863
and dword [ebp - 0x32c], 0
mov eax, dword [ebp - 0x32c]
neg eax
cmp eax, 1
je 0x1004387c
mov dword [ebp - 0x594], 1
jmp 0x10043883
and dword [ebp - 0x594], 0
push dword [ebp - 0x4c]
lea ecx, [ebp - 0x2a8]
call fcn.10016537
mov ecx, dword [ebp - 0x594]
cmp ecx, dword [eax]
jne 0x100438a7
mov dword [ebp - 0x6b0], 1
jmp 0x100438ae
and dword [ebp - 0x6b0], 0
push dword [ebp - 0x4c]
lea ecx, [ebp - 0x2a8]
call fcn.10016537
mov ecx, dword [ebp - 0x6b8]
cmp dword [eax], ecx
jl 0x100438d2
mov dword [ebp - 0x334], 1
jmp 0x100438d9
and dword [ebp - 0x334], 0
mov eax, dword [ebp - 0x334]
mov dword [ebp - 0x6c0], eax
push dword [ebp - 0x4c]
lea ecx, [ebp - 0x2a8]
call fcn.10016537
cmp dword [eax], 0
je 0x100438fd
jmp 0x10043796
jmp 0x10043796
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x2a8]
call fcn.1001651b
mov eax, dword [ebp - 0xc0]
movzx eax, word [eax + 0x14]
mov ecx, dword [ebp - 0xc0]
lea eax, [ecx + eax + 0x18]
mov dword [ebp - 0x88], eax
mov dword [ebp - 0x784], 3
mov dword [ebp - 0x780], 3
mov dword [ebp - 0x77c], 3
mov dword [ebp - 0x778], 3
lea ecx, [ebp - 0x281]
call fcn.100092a3
push eax
lea eax, [ebp - 0x774]
push eax
lea eax, [ebp - 0x784]
push eax
lea ecx, [ebp - 0x984]
call fcn.10016546
push dword [eax + 4]
push dword [eax]
lea ecx, [ebp - 0x290]
call fcn.100164f5
mov dword [ebp - 4], 4
mov dword [ebp - 0x44], 0xfffffffe
mov dword [ebp - 0x270], 0x8f4727c
mov dword [ebp - 0x268], 0xffffffff
mov dword [ebp - 0x238], 0xfffffff7
mov dword [ebp - 0x44], 3
jmp 0x100439c4
mov eax, dword [ebp - 0x44]
dec eax
mov dword [ebp - 0x44], eax
cmp dword [ebp - 0x44], 0
jl 0x10043cb7
push 2
lea ecx, [ebp - 0x590]
call fcn.10016499
mov byte [ebp - 4], 5
mov dword [ebp - 0x364], 0xffffffff
mov dword [ebp - 0x168], 0
jmp 0x10043a02
mov eax, dword [ebp - 0x168]
inc eax
mov dword [ebp - 0x168], eax
cmp dword [ebp - 0x168], 2
jge 0x10043a24
push dword [ebp - 0x168]
lea ecx, [ebp - 0x590]
call fcn.10016537
mov dword [eax], 0x8b42
jmp 0x100439f5
push 2
lea ecx, [ebp - 0x290]
call fcn.10016537
mov eax, dword [eax]
mov dword [ebp - 0x270], eax
mov esi, dword [ebp - 0x270]
push dword [ebp - 0x44]
lea ecx, [ebp - 0x290]
call fcn.10016537
mov eax, dword [eax]
sub eax, 0xcacf
cmp esi, eax
jne 0x10043a64
mov dword [ebp - 0x34c], 1
jmp 0x10043a6b
and dword [ebp - 0x34c], 0
push 0
lea ecx, [ebp - 0x590]
call fcn.10016537
mov esi, eax
push 0
lea ecx, [ebp - 0x590]
call fcn.10016537
mov ecx, dword [esi]
cmp ecx, dword [eax]
je 0x10043aab
push 0
lea ecx, [ebp - 0x590]
call fcn.10016537
cmp dword [eax], 0
je 0x10043aab
mov dword [ebp - 0x474], 1
jmp 0x10043ab2
and dword [ebp - 0x474], 0
mov eax, dword [ebp - 0x44]
cmp dword [ebp - 0x474], eax
jge 0x10043ac9
mov dword [ebp - 0x33c], 1
jmp 0x10043ad0
and dword [ebp - 0x33c], 0
mov eax, dword [ebp - 0x33c]
mov dword [ebp - 0x268], eax
mov esi, dword [ebp - 0x268]
push 3
lea ecx, [ebp - 0x290]
call fcn.10016537
add esi, dword [eax]
push 0
lea ecx, [ebp - 0x590]
call fcn.10016537
imul esi, dword [eax]
push dword [ebp - 0x44]
lea ecx, [ebp - 0x290]
call fcn.10016537
cmp esi, dword [eax]
jne 0x10043b1f
mov dword [ebp - 0x514], 1
jmp 0x10043b26
and dword [ebp - 0x514], 0
cmp dword [ebp - 0x514], 0xe85ec415
ja 0x10043b3e
mov dword [ebp - 0x344], 1
jmp 0x10043b45
and dword [ebp - 0x344], 0
cmp dword [ebp - 0x344], 1
jbe 0x10043b5a
mov dword [ebp - 0x47c], 1
jmp 0x10043b61
and dword [ebp - 0x47c], 0
push dword [ebp - 0x44]
lea ecx, [ebp - 0x290]
call fcn.10016537
mov ecx, dword [ebp - 0x47c]
cmp ecx, dword [eax]
jge 0x10043b85
mov dword [ebp - 0x56c], 1
jmp 0x10043b8c
and dword [ebp - 0x56c], 0
mov eax, dword [ebp - 0x34c]
cmp eax, dword [ebp - 0x56c]
je 0x10043ba6
mov dword [ebp - 0x354], 1
jmp 0x10043bad
and dword [ebp - 0x354], 0
mov eax, dword [ebp - 0x354]
mov dword [ebp - 0x238], eax
mov esi, dword [ebp - 0x238]
push dword [ebp - 0x44]
lea ecx, [ebp - 0x290]
call fcn.10016537
mov eax, dword [eax]
sub eax, esi
je 0x10043bf1
push 1
lea ecx, [ebp - 0x590]
call fcn.10016537
cmp dword [eax], 0
je 0x10043bf1
mov dword [ebp - 0x484], 1
jmp 0x10043bf8
and dword [ebp - 0x484], 0
push 0
lea ecx, [ebp - 0x290]
call fcn.10016537
mov ecx, dword [ebp - 0x484]
cmp ecx, dword [eax]
jne 0x10043c1b
mov dword [ebp - 0x35c], 1
jmp 0x10043c22
and dword [ebp - 0x35c], 0
push 2
lea ecx, [ebp - 0x290]
call fcn.10016537
mov ecx, dword [ebp - 0x35c]
cmp ecx, dword [eax]
jge 0x10043c45
mov dword [ebp - 0x51c], 1
jmp 0x10043c4c
and dword [ebp - 0x51c], 0
mov eax, dword [ebp - 0x44]
imul eax, dword [ebp - 0x51c]
mov dword [ebp - 0x364], eax
lea eax, [ebp - 0x270]
push eax
push 0
push 0x7928
lea eax, [ebp - 0x238]
push eax
lea eax, [ebp - 0x268]
push eax
lea eax, [ebp - 0x44]
push eax
lea eax, [ebp - 0x290]
push eax
lea eax, [ebp - 0x590]
push eax
lea eax, [ebp - 0x364]
push eax
push 0x2b47
push 0x270f
call fcn.10042544
add esp, 0x2c
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x590]
call fcn.1001651b
jmp 0x100439bd
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x290]
call fcn.1001651b
and dword [ebp - 0x240], 0
jmp 0x10043ceb
mov eax, dword [ebp - 0x240]
inc eax
mov dword [ebp - 0x240], eax
mov eax, dword [ebp - 0x88]
add eax, 0x28
mov dword [ebp - 0x88], eax
mov eax, dword [ebp - 0xc0]
movzx eax, word [eax + 6]
cmp dword [ebp - 0x240], eax
jge 0x10043d67
mov eax, dword [ebp - 0x88]
mov eax, dword [eax + 0xc]
mov dword [ebp - 0x48c], eax
mov eax, dword [ebp - 0x48]
mov eax, dword [eax]
cmp eax, dword [ebp - 0x48c]
jb 0x10043d62
mov eax, dword [ebp - 0xc0]
push dword [eax + 0x38]
mov eax, dword [ebp - 0x88]
push dword [eax + 8]
call fcn.10040c80
pop ecx
pop ecx
add eax, dword [ebp - 0x48c]
mov dword [ebp - 0x6c8], eax
mov eax, dword [ebp - 0x48]
mov eax, dword [eax]
cmp eax, dword [ebp - 0x6c8]
jae 0x10043d62
push 1
lea eax, [ebp - 0x88]
push eax
lea eax, [ebp - 0x30]
push eax
call fcn.10040ff6
add esp, 0xc
jmp 0x10043d67
jmp 0x10043ccf
mov dword [ebp - 0x274], 0xfffffff7
mov dword [ebp - 0xd8], 9
mov dword [ebp - 0x37c], 0x89a9b8fa
mov dword [ebp - 0x384], 4
push 3
lea ecx, [ebp - 0x75c]
call fcn.10016499
mov dword [ebp - 4], 6
mov dword [ebp - 0x6e0], 0x91920b24
lea eax, [ebp - 0x75c]
push eax
lea eax, [ebp - 0x860]
push eax
push 0
call fcn.100423c8
add esp, 0xc
mov eax, dword [ebp - 0xd8]
cmp dword [ebp - 0xd8], eax
jne 0x10043de5
mov eax, 0xfffc
test eax, eax
jne 0x10043de5
and dword [ebp - 0x6d0], 0
jmp 0x10043def
mov dword [ebp - 0x6d0], 1
mov eax, dword [ebp - 0xd8]
mov dword [ebp - 0x868], eax
push 9
pop eax
cmp eax, 0xfffffffc
jle 0x10043e0f
mov dword [ebp - 0x6d8], 1
jmp 0x10043e16
and dword [ebp - 0x6d8], 0
cmp dword [ebp - 0xd8], 0x10e5
jge 0x10043e2e
mov dword [ebp - 0x36c], 1
jmp 0x10043e35
and dword [ebp - 0x36c], 0
mov dword [ebp - 0x274], 0xad9b
mov eax, dword [ebp - 0x274]
cmp eax, dword [ebp - 0x36c]
jge 0x10043e59
mov dword [ebp - 0x540], 1
jmp 0x10043e60
and dword [ebp - 0x540], 0
mov eax, dword [ebp - 0xd8]
cmp dword [ebp - 0x540], eax
jge 0x10043e7a
mov dword [ebp - 0x374], 1
jmp 0x10043e81
and dword [ebp - 0x374], 0
mov eax, dword [ebp - 0xd8]
imul eax, dword [ebp - 0x374]
cmp eax, dword [ebp - 0x37c]
jge 0x10043ea2
mov dword [ebp - 0x494], 1
jmp 0x10043ea9
and dword [ebp - 0x494], 0
cmp dword [ebp - 0x494], 1
jne 0x10043ebe
mov dword [ebp - 0x524], 1
jmp 0x10043ec5
and dword [ebp - 0x524], 0
mov eax, dword [ebp - 0x37c]
add eax, dword [ebp - 0x524]
mov dword [ebp - 0x384], eax
je 0x10043eee
cmp dword [ebp - 0x274], 0
je 0x10043eee
mov dword [ebp - 0x49c], 1
jmp 0x10043ef5
and dword [ebp - 0x49c], 0
push 0
lea ecx, [ebp - 0x75c]
call fcn.10016537
mov ecx, dword [ebp - 0x49c]
cmp ecx, dword [eax]
jne 0x10043f1c
push 3
pop eax
test eax, eax
jne 0x10043f1c
and dword [ebp - 0x38c], 0
jmp 0x10043f26
mov dword [ebp - 0x38c], 1
push 0
lea ecx, [ebp - 0x75c]
call fcn.10016537
mov ecx, dword [ebp - 0x38c]
cmp ecx, dword [eax]
jge 0x10043f49
mov dword [ebp - 0x548], 1
jmp 0x10043f50
and dword [ebp - 0x548], 0
mov eax, dword [ebp - 0x548]
mov dword [ebp - 0x6e0], eax
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x75c]
call fcn.1001651b
cmp dword [ebp - 0x30], 0
jne 0x10043f76
jmp 0x10047426
push 4
lea ecx, [ebp - 0x5cc]
call fcn.10016499
mov dword [ebp - 4], 7
mov dword [ebp - 0x28], 1
mov dword [ebp - 0x58], 5
mov dword [ebp - 0xe0], 0x8b35edad
mov dword [ebp - 0x1cc], 0x1d102278
mov dword [ebp - 0x3ac], 7
mov dword [ebp - 0x248], 0x6729694d
mov dword [ebp - 0x27c], 0xdb821342
mov dword [ebp - 0x6e8], 0xfffffffd
mov dword [ebp - 0x4b4], 0
mov dword [ebp - 0x1c4], 0
jmp 0x10043ff7
mov eax, dword [ebp - 0x1c4]
inc eax
mov dword [ebp - 0x1c4], eax
cmp dword [ebp - 0x1c4], 4
jge 0x10044019
push dword [ebp - 0x1c4]
lea ecx, [ebp - 0x5cc]
call fcn.10016537
mov dword [eax], 0xe48d327c
jmp 0x10043fea
mov dword [ebp - 0x28], 3
jmp 0x10044029
mov eax, dword [ebp - 0x28]
dec eax
mov dword [ebp - 0x28], eax
cmp dword [ebp - 0x28], 0
jl 0x10044113
mov eax, dword [ebp - 0x28]
mov dword [ebp - 0x870], eax
push dword [ebp - 0x28]
lea ecx, [ebp - 0x5cc]
call fcn.10016537
mov esi, eax
push dword [ebp - 0x28]
lea ecx, [ebp - 0x5cc]
call fcn.10016537
mov ecx, dword [esi]
imul ecx, dword [eax]
cmp ecx, dword [ebp - 0x28]
jne 0x10044070
mov dword [ebp - 0x394], 1
jmp 0x10044077
and dword [ebp - 0x394], 0
push dword [ebp - 0x28]
lea ecx, [ebp - 0x5cc]
call fcn.10016537
mov eax, dword [eax]
cmp eax, dword [ebp - 0x394]
jne 0x1004409b
mov dword [ebp - 0x4a4], 1
jmp 0x100440a2
and dword [ebp - 0x4a4], 0
push dword [ebp - 0x28]
lea ecx, [ebp - 0x5cc]
call fcn.10016537
mov eax, dword [eax]
cmp eax, dword [ebp - 0x4a4]
je 0x100440c6
mov dword [ebp - 0x39c], 1
jmp 0x100440cd
and dword [ebp - 0x39c], 0
mov eax, dword [ebp - 0x39c]
mov dword [ebp - 0x58], eax
mov dword [ebp - 0x58], 0
jmp 0x100440e6
mov eax, dword [ebp - 0x58]
inc eax
mov dword [ebp - 0x58], eax
cmp dword [ebp - 0x58], 3
jg 0x1004410e
mov byte [ebp - 0xa7], 0
movzx eax, byte [ebp - 0xa7]
test eax, eax
je 0x1004410c
push 1
push 0x3422
call fcn.1004104d
pop ecx
pop ecx
jmp 0x100440df
jmp 0x10044022
cmp dword [ebp - 0x28], 0
je 0x10044240
mov eax, dword [ebp - 0x58]
mov dword [ebp - 0x878], eax
mov eax, dword [ebp - 0x248]
mov dword [ebp - 0x880], eax
mov eax, dword [ebp - 0xe0]
mov dword [ebp - 0x888], eax
mov eax, dword [ebp - 0x1cc]
mov dword [ebp - 0x248], eax
mov eax, dword [ebp - 0x248]
mov dword [ebp - 0x890], eax
mov eax, dword [ebp - 0xe0]
mov dword [ebp - 0x898], eax
mov eax, dword [ebp - 0x3ac]
mov dword [ebp - 0x8a0], eax
mov eax, dword [ebp - 0x1cc]
cmp dword [ebp - 0x58], eax
jne 0x10044188
cmp dword [ebp - 0x28], 0
jne 0x10044188
and dword [ebp - 0x530], 0
jmp 0x10044192
mov dword [ebp - 0x530], 1
mov eax, dword [ebp - 0x28]
add eax, dword [ebp - 0x530]
jmp 0x100441a9
and dword [ebp - 0x3a4], 0
mov eax, dword [ebp - 0x6e8]
cmp dword [ebp - 0x3a4], eax
jne 0x100441ca
mov dword [ebp - 0x4ac], 1
jmp 0x100441d1
and dword [ebp - 0x4ac], 0
mov eax, dword [ebp - 0x1cc]
cmp dword [ebp - 0x4ac], eax
je 0x100441eb
mov dword [ebp - 0x550], 1
jmp 0x100441f2
and dword [ebp - 0x550], 0
mov eax, dword [ebp - 0x3ac]
cmp dword [ebp - 0x550], eax
jne 0x1004420f
cmp dword [ebp - 0x28], 0
jne 0x1004420f
and dword [ebp - 0x3b4], 0
jmp 0x10044219
mov dword [ebp - 0x3b4], 1
mov eax, dword [ebp - 0x3b4]
mov dword [ebp - 0x58], eax
mov eax, dword [ebp - 0x58]
mov dword [ebp - 0x4b4], eax
cmp dword [ebp - 0x4b4], 0
je 0x10044240
mov dword [ebp - 0x3bc], 1
jmp 0x10044247
and dword [ebp - 0x3bc], 0
mov eax, dword [ebp - 0xe0]
cmp dword [ebp - 0x3bc], eax
jge 0x10044264
cmp dword [ebp - 0x58], 0
jne 0x10044264
and dword [ebp - 0x53c], 0
jmp 0x1004426e
mov dword [ebp - 0x53c], 1
mov eax, dword [ebp - 0xe0]
cmp dword [ebp - 0x53c], eax
je 0x10044288
mov dword [ebp - 0x6f0], 1
jmp 0x1004428f
and dword [ebp - 0x6f0], 0
mov eax, dword [ebp - 0x27c]
dec eax
mov dword [ebp - 0x27c], eax
mov eax, dword [ebp - 0x27c]
mov dword [ebp - 0x8a8], eax
mov eax, dword [ebp - 0xe0]
mov dword [ebp - 0x8b0], eax
push 2
lea ecx, [ebp - 0x5cc]
call fcn.10016537
mov ecx, dword [ebp - 0xe0]
cmp dword [eax], ecx
jl 0x100442d7
mov dword [ebp - 0x3c4], 1
jmp 0x100442de
and dword [ebp - 0x3c4], 0
mov eax, dword [ebp - 0x3c4]
mov dword [ebp - 0x1cc], eax
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x5cc]
call fcn.1001651b
mov eax, dword [ebp - 0x48]
mov ecx, dword [ebp - 0x30]
add ecx, dword [eax]
add ecx, dword [ebp - 0x2c]
mov dword [ebp - 0x14], ecx
xor ecx, ecx
call fcn.1002d0d8
push eax
call fcn.10066da8
pop ecx
mov dword [ebp - 0x8b8], 0xde0bcd8c
mov byte [ebp - 0xa3], 0
push 1
lea eax, [ebp - 0xa3]
push eax
push 0x498c
push 0x40cd
call fcn.100410a4
add esp, 0x10
mov byte [ebp - 0xa5], 0
lea eax, [ebp - 0xa5]
push eax
push 1
call fcn.1004111c
pop ecx
pop ecx
mov byte [ebp - 0x22c], 0
mov byte [ebp - 0x22b], 0x99
mov byte [ebp - 0x22a], 0x46
mov byte [ebp - 0x229], 0xee
mov byte [ebp - 0x228], 0x1f
mov byte [ebp - 0x227], 0xee
mov byte [ebp - 0x226], 0xea
mov byte [ebp - 0x225], 0x43
mov byte [ebp - 0x224], 0x65
mov byte [ebp - 0x223], 0x12
mov byte [ebp - 0x222], 0xcb
mov byte [ebp - 0x221], 0x3f
mov byte [ebp - 0x220], 0xae
mov byte [ebp - 0x21f], 0xbd
mov byte [ebp - 0x21e], 0x7c
mov byte [ebp - 0x21d], 0x97
mov byte [ebp - 0x21c], 0x41
mov byte [ebp - 0x21b], 0x25
mov byte [ebp - 0x21a], 0x24
mov byte [ebp - 0x219], 0xe6
mov byte [ebp - 0x218], 0x5c
mov byte [ebp - 0x217], 0x98
mov byte [ebp - 0x216], 0x59
mov byte [ebp - 0x215], 0x94
mov byte [ebp - 0x214], 0x8f
mov byte [ebp - 0x213], 0x5d
mov byte [ebp - 0x212], 0xab
mov byte [ebp - 0x211], 2
mov byte [ebp - 0x210], 0xc1
mov byte [ebp - 0x20f], 0xe4
mov byte [ebp - 0x20e], 0x1b
mov byte [ebp - 0x20d], 0xfc
mov byte [ebp - 0x20c], 0x64
mov byte [ebp - 0x20b], 0x80
mov byte [ebp - 0x20a], 0x83
mov byte [ebp - 0x209], 0xc1
mov byte [ebp - 0x208], 0x86
mov byte [ebp - 0x207], 0xf9
mov byte [ebp - 0x206], 0x63
mov byte [ebp - 0x205], 0x88
mov byte [ebp - 0x204], 0xb7
mov byte [ebp - 0x203], 0xb8
mov byte [ebp - 0x202], 0xf8
mov byte [ebp - 0x201], 0xe7
mov byte [ebp - 0x200], 0x73
mov byte [ebp - 0x1ff], 0xd4
mov byte [ebp - 0x1fe], 0x25
mov byte [ebp - 0x1fd], 0xb
mov byte [ebp - 0x1fc], 0x86
mov byte [ebp - 0x1fb], 0xb5
mov byte [ebp - 0x1fa], 0x14
mov byte [ebp - 0x1f9], 0xc
mov byte [ebp - 0x1f8], 0x1c
mov byte [ebp - 0x1f7], 0xab
mov byte [ebp - 0x1f6], 0x82
mov byte [ebp - 0x1f5], 0xe1
mov byte [ebp - 0x1f4], 0x7b
mov byte [ebp - 0x1f3], 0x21
mov byte [ebp - 0x1f2], 0x3f
mov byte [ebp - 0x1f1], 0xb8
mov byte [ebp - 0x1f0], 0xf
mov byte [ebp - 0x1ef], 0xc6
mov byte [ebp - 0x1ee], 0xb1
mov byte [ebp - 0x1ed], 0x33
mov byte [ebp - 0x1ec], 0x37
mov byte [ebp - 0x1eb], 0x64
mov byte [ebp - 0x1ea], 0xf7
mov byte [ebp - 0x1e9], 0xcf
mov byte [ebp - 0x1e8], 0x23
mov byte [ebp - 0x1e7], 0xae
mov byte [ebp - 0x1e6], 0xfc
mov byte [ebp - 0x1e5], 0x83
mov byte [ebp - 0x1e4], 0x94
mov byte [ebp - 0x1e3], 9
mov byte [ebp - 0x1e2], 1
mov byte [ebp - 0x1e1], 3
mov byte [ebp - 0x1e0], 7
mov byte [ebp - 0x1df], 6
mov byte [ebp - 0x1de], 6
mov byte [ebp - 0x1dd], 2
mov byte [ebp - 0x1dc], 6
mov byte [ebp - 0x1db], 8
mov byte [ebp - 0x1da], 7
mov byte [ebp - 0x1d9], 5
mov byte [ebp - 0x1d8], 1
mov byte [ebp - 0x1d7], 1
mov byte [ebp - 0x1d6], 4
mov byte [ebp - 0x1d5], 4
mov byte [ebp - 0x1d4], 0xd
mov byte [ebp - 0x1d3], 7
mov byte [ebp - 0x1d2], 0xe
xor eax, eax
inc eax
shl eax, 0
movzx eax, byte [ebp + eax - 0x22c]
or eax, 0xa8
xor ecx, ecx
inc ecx
shl ecx, 0
movzx ecx, byte [ebp + ecx - 0x22c]
and ecx, 0xa8
sub eax, ecx
xor ecx, ecx
inc ecx
imul ecx, ecx, 0
movzx ecx, byte [ebp + ecx - 0x22c]
mov byte [ebp + ecx - 0x5b4], al
mov dword [ebp - 0x24], 2
and dword [ebp - 0xe4], 0
jmp 0x1004462b
mov eax, dword [ebp - 0x24]
inc eax
inc eax
mov dword [ebp - 0x24], eax
cmp dword [ebp - 0x24], 0x5b
jae 0x10044712
xor eax, eax
inc eax
imul eax, eax, 0
movzx eax, byte [ebp + eax - 0x22c]
lea eax, [eax + eax + 2]
cmp dword [ebp - 0x24], eax
jne 0x10044675
mov eax, dword [ebp - 0x24]
movzx eax, byte [ebp + eax - 0x22c]
inc eax
mov dword [ebp - 0xe4], eax
mov eax, dword [ebp - 0x24]
movzx eax, byte [ebp + eax - 0x22c]
mov ecx, dword [ebp - 0x24]
lea eax, [ecx + eax - 1]
mov dword [ebp - 0x24], eax
jmp 0x10044623
mov eax, dword [ebp - 0x24]
movzx eax, byte [ebp + eax - 0x22b]
mov ecx, dword [ebp - 0x24]
sub ecx, dword [ebp - 0xe4]
movzx ecx, byte [ebp + ecx - 0x22e]
movsx ecx, byte [ebp + ecx - 0x5b4]
add eax, ecx
mov ecx, dword [ebp - 0x24]
movzx ecx, byte [ebp + ecx - 0x22b]
mov edx, dword [ebp - 0x24]
sub edx, dword [ebp - 0xe4]
movzx edx, byte [ebp + edx - 0x22e]
movsx edx, byte [ebp + edx - 0x5b4]
and ecx, edx
sub eax, ecx
mov ecx, dword [ebp - 0x24]
movzx ecx, byte [ebp + ecx - 0x22b]
mov edx, dword [ebp - 0x24]
sub edx, dword [ebp - 0xe4]
movzx edx, byte [ebp + edx - 0x22e]
movsx edx, byte [ebp + edx - 0x5b4]
and ecx, edx
sub eax, ecx
mov ecx, dword [ebp - 0x24]
movzx ecx, byte [ebp + ecx - 0x22c]
mov byte [ebp + ecx - 0x5b4], al
lea eax, [ebp - 0xe4]
push eax
push 0
call fcn.10041c7d
pop ecx
pop ecx
jmp 0x10044623
xor eax, eax
inc eax
imul eax, eax, 0xa
mov byte [ebp + eax - 0x5b4], 0
mov dword [ebp - 0x6f8], 1
mov dword [ebp - 0x700], 0x2a90
mov dword [ebp - 0x734], 5
mov dword [ebp - 0x708], 0x19b8
mov dword [ebp - 0x72c], 1
mov dword [ebp - 0x614], 0xfffffffa
mov dword [ebp - 0x60c], 0x8afb1cad
push 2
lea ecx, [ebp - 0x7d0]
call fcn.10016499
mov dword [ebp - 4], 8
lea eax, [ebp - 0x7d0]
push eax
lea eax, [ebp - 0x8c0]
push eax
push 1
call fcn.10041199
add esp, 0xc
lea eax, [ebp - 0x6f8]
push eax
push 0x3e68
push 0x6cf7
lea eax, [ebp - 0x7d0]
push eax
lea eax, [ebp - 0x700]
push eax
lea eax, [ebp - 0x708]
push eax
push 1
lea eax, [ebp - 0x60c]
push eax
lea eax, [ebp - 0x72c]
push eax
lea eax, [ebp - 0x734]
push eax
lea eax, [ebp - 0x614]
push eax
call fcn.1004120c
add esp, 0x2c
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x7d0]
call fcn.1001651b
lea eax, [ebp - 0x5b4]
push eax
lea ecx, [ebp - 0xa78]
call fcn.10023a1c
mov dword [ebp - 0x650], eax
mov eax, dword [ebp - 0x650]
mov dword [ebp - 0x730], eax
mov dword [ebp - 4], 9
push 0xa
xor edx, edx
mov ecx, dword [ebp - 0x730]
call fcn.1002d09d
pop ecx
mov dword [ebp - 0x644], eax
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0xa78]
call fcn.100163fb
and dword [ebp - 0x1c8], 0
jmp 0x10044853
mov eax, dword [ebp - 0x1c8]
inc eax
mov dword [ebp - 0x1c8], eax
cmp dword [ebp - 0x1c8], 0xb
jae 0x1004486c
mov eax, dword [ebp - 0x1c8]
mov byte [ebp + eax - 0x5b4], 0
jmp 0x10044846
mov dword [ebp - 0xb8], 0
mov dword [ebp - 0x250], 0xfffffff8
mov dword [ebp - 0x50], 0xd1d8
mov dword [ebp - 0x1a8], 0xfffffff9
mov dword [ebp - 0x3f4], 0xbcae26e1
push 4
lea ecx, [ebp - 0x720]
call fcn.10016499
mov dword [ebp - 4], 0xa
mov dword [ebp - 0x3fc], 3
mov dword [ebp - 0x8c8], 0x95c8f381
mov dword [ebp - 0x404], 0
mov dword [ebp - 0x178], 0
jmp 0x100448e6
mov eax, dword [ebp - 0x178]
inc eax
mov dword [ebp - 0x178], eax
cmp dword [ebp - 0x178], 4
jge 0x10044908
push dword [ebp - 0x178]
lea ecx, [ebp - 0x720]
call fcn.10016537
mov dword [eax], 0x5c5395f8
jmp 0x100448d9
mov eax, dword [ebp - 0xb8]
mov dword [ebp - 0x8d0], eax
mov eax, dword [ebp - 0xb8]
cmp dword [ebp - 0xb8], eax
jl 0x1004492e
mov dword [ebp - 0x4bc], 1
jmp 0x10044935
and dword [ebp - 0x4bc], 0
mov eax, dword [ebp - 0xb8]
cmp dword [ebp - 0xb8], eax
jg 0x1004494f
mov dword [ebp - 0x3cc], 1
jmp 0x10044956
and dword [ebp - 0x3cc], 0
mov eax, dword [ebp - 0x4bc]
cmp eax, dword [ebp - 0x3cc]
jne 0x10044970
mov dword [ebp - 0x558], 1
jmp 0x10044977
and dword [ebp - 0x558], 0
mov eax, dword [ebp - 0x558]
mov dword [ebp - 0x250], eax
mov eax, dword [ebp - 0x250]
imul eax, dword [ebp - 0x50]
cmp eax, 9
ja 0x100449a4
cmp dword [ebp - 0x50], 0
je 0x100449a4
mov dword [ebp - 0x3d4], 1
jmp 0x100449ab
and dword [ebp - 0x3d4], 0
mov eax, dword [ebp - 0x3d4]
add eax, 0xd64d
cmp eax, dword [ebp - 0x50]
jle 0x100449c7
mov dword [ebp - 0x4c4], 1
jmp 0x100449ce
and dword [ebp - 0x4c4], 0
mov eax, dword [ebp - 0x50]
imul eax, dword [ebp - 0x4c4]
cmp eax, 0x89d38951
jbe 0x100449eb
mov dword [ebp - 0x3dc], 1
jmp 0x100449f2
and dword [ebp - 0x3dc], 0
mov eax, dword [ebp - 0x50]
imul eax, dword [ebp - 0x3dc]
cmp eax, 9
jle 0x10044a0d
mov dword [ebp - 0x61c], 1
jmp 0x10044a14
and dword [ebp - 0x61c], 0
mov eax, dword [ebp - 0x50]
mov dword [ebp - 0x8d8], eax
mov eax, dword [ebp - 0x50]
mov dword [ebp - 0x8e0], eax
mov eax, dword [ebp - 0x1a8]
mov dword [ebp - 0x8e8], eax
mov eax, dword [ebp - 0xb8]
mov dword [ebp - 0x8f0], eax
mov eax, dword [ebp - 0x50]
mov dword [ebp - 0x94c], eax
mov eax, dword [ebp - 0x1a8]
mov dword [ebp - 0x954], eax
mov eax, 0x705be734
add eax, 0x4b71808a
cmp eax, dword [ebp - 0x50]
jge 0x10044a6e
mov dword [ebp - 0x560], 1
jmp 0x10044a75
and dword [ebp - 0x560], 0
cmp dword [ebp - 0x560], 0x69dd
jge 0x10044a8d
mov dword [ebp - 0x3e4], 1
jmp 0x10044a94
and dword [ebp - 0x3e4], 0
mov eax, dword [ebp - 0x3e4]
mov dword [ebp - 0xb8], eax
xor eax, eax
cmp eax, 9
je 0x10044ab3
mov dword [ebp - 0x4cc], 1
jmp 0x10044aba
and dword [ebp - 0x4cc], 0
mov eax, dword [ebp - 0x1a8]
cmp dword [ebp - 0x4cc], eax
jle 0x10044ad4
mov dword [ebp - 0x3ec], 1
jmp 0x10044adb
and dword [ebp - 0x3ec], 0
cmp dword [ebp - 0x3ec], 1
ja 0x10044af0
mov dword [ebp - 0x584], 1
jmp 0x10044af7
and dword [ebp - 0x584], 0
mov eax, dword [ebp - 0x584]
mov dword [ebp - 0x3f4], eax
mov eax, dword [ebp - 0x3f4]
mov dword [ebp - 0x4d4], eax
push 1
lea ecx, [ebp - 0x720]
call fcn.10016537
mov ecx, dword [ebp - 0x4d4]
mov dword [eax], ecx
mov eax, dword [ebp - 0x1a8]
imul eax, dword [ebp - 0x4d4]
test eax, eax
je 0x10044b4a
cmp dword [ebp - 0x250], 0
je 0x10044b4a
mov dword [ebp - 0x6c4], 1
jmp 0x10044b51
and dword [ebp - 0x6c4], 0
mov eax, dword [ebp - 0x50]
mov dword [ebp - 0x95c], eax
push 3
lea ecx, [ebp - 0x720]
call fcn.10016537
mov eax, dword [eax]
mov dword [ebp - 0x3fc], eax
cmp dword [ebp - 0x3fc], 0
jne 0x10044b93
push 1
lea ecx, [ebp - 0x720]
call fcn.10016537
cmp dword [eax], 0
jne 0x10044b93
and dword [ebp - 0x54c], 0
jmp 0x10044b9d
mov dword [ebp - 0x54c], 1
mov eax, dword [ebp - 0x50]
cmp dword [ebp - 0x54c], eax
jg 0x10044ca3
mov dword [ebp - 0x964], 1
mov dword [ebp - 0x92c], 0xfffffffc
mov dword [ebp - 0x798], 0x6845d487
mov dword [ebp - 0x794], 0x6845d487
mov dword [ebp - 0x790], 0x6845d487
mov dword [ebp - 0x78c], 0x6845d487
lea ecx, [ebp - 0x259]
call fcn.100092a3
push eax
lea eax, [ebp - 0x788]
push eax
lea eax, [ebp - 0x798]
push eax
lea ecx, [ebp - 0x9dc]
call fcn.10016546
push dword [eax + 4]
push dword [eax]
lea ecx, [ebp - 0x97c]
call fcn.100164f5
mov byte [ebp - 4], 0xb
mov dword [ebp - 0x624], 0xbb416c01
mov byte [ebp - 0x95], 0
movzx eax, byte [ebp - 0x95]
test eax, eax
je 0x10044c45
push 1
call fcn.100414c9
pop ecx
push 0x7d2a
push 0x6ab6
push 0x1274
lea eax, [ebp - 0x624]
push eax
push 0x2336
push 0x1c0b
push 0x58e1
push 0x1dbf
push 0x4b1c
push 0x4bce
push 1
push 0xb87
push 0x4438
push 0x45ed
call fcn.100414f6
add esp, 0x38
mov byte [ebp - 4], 0xa
lea ecx, [ebp - 0x97c]
call fcn.1001651b
jmp 0x10044cbd
mov byte [ebp - 0xb1], 0
movzx eax, byte [ebp - 0xb1]
test eax, eax
je 0x10044cbd
push 1
call fcn.10041703
pop ecx
mov eax, dword [ebp - 0x404]
inc eax
mov dword [ebp - 0x404], eax
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x720]
call fcn.1001651b
mov byte [ebp - 0x14c], 8
mov byte [ebp - 0x14b], 0xae
mov byte [ebp - 0x14a], 0
mov byte [ebp - 0x149], 1
mov byte [ebp - 0x148], 6
mov byte [ebp - 0x147], 8
mov byte [ebp - 0x146], 9
mov byte [ebp - 0x145], 9
mov byte [ebp - 0x144], 3
mov byte [ebp - 0x143], 2
mov byte [ebp - 0x142], 4
mov byte [ebp - 0x141], 6
mov byte [ebp - 0x140], 7
mov byte [ebp - 0x13f], 2
mov byte [ebp - 0x13e], 2
mov byte [ebp - 0x13d], 1
mov byte [ebp - 0x13c], 5
mov byte [ebp - 0x13b], 6
mov byte [ebp - 0x13a], 5
mov byte [ebp - 0x139], 0x94
mov byte [ebp - 0x138], 0xd7
mov byte [ebp - 0x137], 0xf9
mov byte [ebp - 0x136], 0x76
mov byte [ebp - 0x135], 0xb3
mov byte [ebp - 0x134], 1
mov byte [ebp - 0x133], 7
xor eax, eax
inc eax
shl eax, 0
movzx eax, byte [ebp + eax - 0x14c]
or eax, 0x9e
xor ecx, ecx
inc ecx
shl ecx, 0
movzx ecx, byte [ebp + ecx - 0x14c]
and ecx, 0x9e
sub eax, ecx
xor ecx, ecx
inc ecx
imul ecx, ecx, 0
movzx ecx, byte [ebp + ecx - 0x14c]
mov byte [ebp + ecx - 0x5d8], al
mov dword [ebp - 0x34], 2
and dword [ebp - 0x180], 0
jmp 0x10044de5
mov eax, dword [ebp - 0x34]
inc eax
inc eax
mov dword [ebp - 0x34], eax
cmp dword [ebp - 0x34], 0x1a
jae 0x10044e9b
xor eax, eax
inc eax
imul eax, eax, 0
movzx eax, byte [ebp + eax - 0x14c]
lea eax, [eax + eax + 2]
cmp dword [ebp - 0x34], eax
jne 0x10044e2f
mov eax, dword [ebp - 0x34]
movzx eax, byte [ebp + eax - 0x14c]
inc eax
mov dword [ebp - 0x180], eax
mov eax, dword [ebp - 0x34]
movzx eax, byte [ebp + eax - 0x14c]
mov ecx, dword [ebp - 0x34]
lea eax, [ecx + eax - 1]
mov dword [ebp - 0x34], eax
jmp 0x10044ddd
mov eax, dword [ebp - 0x34]
movzx eax, byte [ebp + eax - 0x14b]
mov ecx, dword [ebp - 0x34]
sub ecx, dword [ebp - 0x180]
movzx ecx, byte [ebp + ecx - 0x14e]
movsx ecx, byte [ebp + ecx - 0x5d8]
or eax, ecx
mov ecx, dword [ebp - 0x34]
movzx ecx, byte [ebp + ecx - 0x14b]
mov edx, dword [ebp - 0x34]
sub edx, dword [ebp - 0x180]
movzx edx, byte [ebp + edx - 0x14e]
movsx edx, byte [ebp + edx - 0x5d8]
and ecx, edx
sub eax, ecx
mov ecx, dword [ebp - 0x34]
movzx ecx, byte [ebp + ecx - 0x14c]
mov byte [ebp + ecx - 0x5d8], al
and dword [ebp - 0x180], 0
jmp 0x10044ddd
xor eax, eax
inc eax
imul eax, eax, 0xa
mov byte [ebp + eax - 0x5d8], 0
mov dword [ebp - 0xfc], 3
mov dword [ebp - 0x4ec], 0xdfe4d9ed
mov dword [ebp - 0x40], 0xfaa32f3f
mov dword [ebp - 0x3c], 0x32d7af2c
mov dword [ebp - 0x62c], 0xebe340c
mov dword [ebp - 0x1c0], 0
jmp 0x10044eee
mov eax, dword [ebp - 0x1c0]
inc eax
mov dword [ebp - 0x1c0], eax
cmp dword [ebp - 0x1c0], 3
jge 0x10044f0a
mov eax, dword [ebp - 0x1c0]
mov dword [ebp + eax*4 - 0xa48], 0xc348fb8a
jmp 0x10044ee1
push 0
push 0x59d5
push 0x2654
lea eax, [ebp - 0xfc]
push eax
push 0x291c
push 0x3eac
push 0x7a79
call fcn.10042952
add esp, 0x1c
cmp dword [ebp - 0xfc], 0xae77ab39
jbe 0x10044f4c
mov dword [ebp - 0x554], 1
jmp 0x10044f53
and dword [ebp - 0x554], 0
mov eax, dword [ebp - 0x40]
sub eax, dword [ebp - 0x40]
mov dword [ebp - 0x3c], eax
mov eax, dword [ebp - 0x40]
cmp dword [ebp - 0x3c], eax
jge 0x10044f70
mov dword [ebp - 0x4dc], 1
jmp 0x10044f77
and dword [ebp - 0x4dc], 0
mov eax, dword [ebp - 0x40]
cmp dword [ebp - 0x4dc], eax
jle 0x10044f8e
mov dword [ebp - 0x40c], 1
jmp 0x10044f95
and dword [ebp - 0x40c], 0
mov eax, dword [ebp - 0x40]
cmp eax, dword [ebp - 0x40c]
jg 0x10044fac
mov dword [ebp - 0x574], 1
jmp 0x10044fb3
and dword [ebp - 0x574], 0
mov eax, dword [ebp - 0x40]
cmp dword [ebp - 0x574], eax
jle 0x10044fc2
cmp dword [ebp - 0x3c], 0
mov eax, dword [ebp - 0x40]
mov dword [ebp - 0x8a4], eax
cmp dword [ebp - 0x40], 0x814b
jl 0x10044fe0
mov dword [ebp - 0x414], 1
jmp 0x10044fe7
and dword [ebp - 0x414], 0
cmp dword [ebp - 0x414], 0xf58a
jg 0x10044fff
mov dword [ebp - 0x4e4], 1
jmp 0x10045006
and dword [ebp - 0x4e4], 0
mov eax, dword [ebp - 0x40]
imul eax, dword [ebp - 0x4e4]
cmp eax, dword [ebp - 0x40]
jg 0x10045021
mov dword [ebp - 0x41c], 1
jmp 0x10045028
and dword [ebp - 0x41c], 0
cmp dword [ebp - 0x41c], 0x40c3f30b
jle 0x10045040
mov dword [ebp - 0x424], 1
jmp 0x10045047
and dword [ebp - 0x424], 0
mov eax, dword [ebp - 0xfc]
add eax, dword [ebp - 0x554]
mov dword [ebp - 0xfc], eax
mov eax, dword [ebp - 0xfc]
mov dword [ebp - 0x4ec], eax
mov eax, dword [ebp - 0x424]
sub eax, dword [ebp - 0x40]
cmp dword [ebp - 0x4ec], eax
jl 0x10045082
mov dword [ebp - 0x42c], 1
jmp 0x10045089
and dword [ebp - 0x42c], 0
cmp dword [ebp - 0x42c], 0
je 0x1004550c
mov dword [ebp - 0x60], 0xfffffffb
mov dword [ebp - 0x2f0], 0
mov dword [ebp - 0x188], 0
jmp 0x100450c0
mov eax, dword [ebp - 0x188]
inc eax
mov dword [ebp - 0x188], eax
cmp dword [ebp - 0x188], 2
jge 0x100450dc
mov eax, dword [ebp - 0x188]
mov dword [ebp + eax*4 - 0x770], 0x77c19c50
jmp 0x100450b3
mov byte [ebp - 0xa9], 0
movzx eax, byte [ebp - 0xa9]
test eax, eax
je 0x100450f6
push 1
call fcn.1004174e
pop ecx
mov dword [ebp - 0x3c], 0
jmp 0x10045106
mov eax, dword [ebp - 0x3c]
dec eax
mov dword [ebp - 0x3c], eax
cmp dword [ebp - 0x3c], 0xfffffff2
jge 0x10045507
push 2
lea ecx, [ebp - 0x29c]
call fcn.10016499
mov dword [ebp - 4], 0xc
mov dword [ebp - 0x310], 0x9cc1
mov dword [ebp - 0x1b0], 0
jmp 0x10045147
mov eax, dword [ebp - 0x1b0]
inc eax
mov dword [ebp - 0x1b0], eax
cmp dword [ebp - 0x1b0], 2
jge 0x10045169
push dword [ebp - 0x1b0]
lea ecx, [ebp - 0x29c]
call fcn.10016537
mov dword [eax], 0xf93f8de9
jmp 0x1004513a
mov dword [ebp - 0x60], 0x31ea0627
cmp dword [ebp - 0x60], 0
je 0x1004528e
cmp dword [ebp - 0x60], 0
jne 0x1004525e
push 1
lea ecx, [ebp - 0x29c]
call fcn.10016537
xor eax, eax
cmp eax, 0x97e65fb
jle 0x100451a6
mov dword [ebp - 0x5a4], 1
jmp 0x100451ad
and dword [ebp - 0x5a4], 0
push 1
lea ecx, [ebp - 0x29c]
call fcn.10016537
mov ecx, dword [ebp - 0x5a4]
cmp ecx, dword [eax]
jl 0x100451d0
mov dword [ebp - 0x434], 1
jmp 0x100451d7
and dword [ebp - 0x434], 0
cmp dword [ebp - 0x434], 0x121f
jle 0x100451ef
mov dword [ebp - 0x2bc], 1
jmp 0x100451f6
and dword [ebp - 0x2bc], 0
push 1
lea ecx, [ebp - 0x29c]
call fcn.10016537
mov ecx, dword [ebp - 0x2bc]
cmp ecx, dword [eax]
jg 0x10045219
mov dword [ebp - 0x2c0], 1
jmp 0x10045220
and dword [ebp - 0x2c0], 0
mov eax, dword [ebp - 0x2c0]
sub eax, dword [ebp - 0x60]
je 0x1004523d
push 1
lea ecx, [ebp - 0x29c]
call fcn.10016537
cmp dword [eax], 0
jne 0x10045241
cmp dword [ebp - 0x3c], 0
mov esi, dword [ebp - 0x60]
push 1
lea ecx, [ebp - 0x29c]
call fcn.10016537
add esi, dword [eax]
jne 0x1004525e
and dword [ebp - 0x2c8], 0
jmp 0x10045268
mov dword [ebp - 0x2c8], 1
push 1
lea ecx, [ebp - 0x29c]
call fcn.10016537
mov ecx, dword [ebp - 0x2c8]
imul ecx, dword [eax]
test ecx, ecx
je 0x1004528e
mov dword [ebp - 0x2d0], 1
jmp 0x10045295
and dword [ebp - 0x2d0], 0
mov eax, dword [ebp - 0x2d0]
mov dword [ebp - 0x2f0], eax
mov dword [ebp - 0x60], 0xffffffe9
jmp 0x100452b1
mov eax, dword [ebp - 0x60]
inc eax
mov dword [ebp - 0x60], eax
cmp dword [ebp - 0x60], 8
jle 0x100454f3
mov dword [ebp - 0x190], 0
jmp 0x100452d4
mov eax, dword [ebp - 0x190]
inc eax
mov dword [ebp - 0x190], eax
cmp dword [ebp - 0x190], 2
jge 0x100452f0
mov eax, dword [ebp - 0x190]
mov dword [ebp + eax*4 - 0x538], 0x60039c1d
jmp 0x100452c7
mov byte [ebp - 0x98], 0
lea eax, [ebp - 0x98]
push eax
push 1
push 0x7731
call fcn.1004178b
add esp, 0xc
mov eax, dword [ebp - 0x3c]
mov dword [ebp - 0x828], eax
mov eax, dword [ebp - 0x60]
mov dword [ebp - 0x830], eax
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x538]
cmp dword [ebp - 0x3c], eax
jle 0x1004533d
mov dword [ebp - 0x2d8], 1
jmp 0x10045344
and dword [ebp - 0x2d8], 0
mov eax, dword [ebp - 0x310]
cmp dword [ebp - 0x2d8], eax
jle 0x1004535e
mov dword [ebp - 0x2e0], 1
jmp 0x10045365
and dword [ebp - 0x2e0], 0
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x538]
imul eax, dword [ebp - 0x2e0]
test eax, eax
je 0x1004538d
push 4
pop eax
imul eax, eax, 0
cmp dword [ebp + eax - 0x538], 0
jne 0x100453a8
push 1
lea ecx, [ebp - 0x29c]
call fcn.10016537
cmp dword [eax], 0
jne 0x100453a8
and dword [ebp - 0x2e8], 0
jmp 0x100453b2
mov dword [ebp - 0x2e8], 1
mov eax, dword [ebp - 0x3c]
cmp dword [ebp - 0x2e8], eax
jg 0x100453c9
mov dword [ebp - 0x2f8], 1
jmp 0x100453d0
and dword [ebp - 0x2f8], 0
mov eax, dword [ebp - 0x2f0]
cmp eax, dword [ebp - 0x2f8]
je 0x100453ea
mov dword [ebp - 0x300], 1
jmp 0x100453f1
and dword [ebp - 0x300], 0
cmp dword [ebp - 0x300], 0x7c1471c2
jl 0x10045409
mov dword [ebp - 0x308], 1
jmp 0x10045410
and dword [ebp - 0x308], 0
mov eax, dword [ebp - 0x3c]
cmp dword [ebp - 0x308], eax
jl 0x10045427
mov dword [ebp - 0x704], 1
jmp 0x1004542e
and dword [ebp - 0x704], 0
push 0
lea ecx, [ebp - 0x29c]
call fcn.10016537
cmp dword [ebp - 0x310], 0
jne 0x10045454
push 4
pop eax
imul eax, eax, 0
cmp dword [ebp + eax - 0x770], 0
je 0x10045470
push 4
pop eax
imul eax, eax, 0
cmp dword [ebp + eax - 0x770], 0
je 0x10045470
mov dword [ebp - 0x318], 1
jmp 0x10045477
and dword [ebp - 0x318], 0
mov eax, dword [ebp - 0x3c]
cmp dword [ebp - 0x318], eax
jg 0x1004548e
mov dword [ebp - 0x320], 1
jmp 0x10045495
and dword [ebp - 0x320], 0
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x538]
cmp eax, dword [ebp - 0x320]
jg 0x100454b6
mov dword [ebp - 0x328], 1
jmp 0x100454bd
and dword [ebp - 0x328], 0
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x538]
cmp dword [ebp - 0x328], eax
jle 0x100454de
mov dword [ebp - 0x330], 1
jmp 0x100454e5
and dword [ebp - 0x330], 0
mov eax, dword [ebp - 0x330]
mov dword [ebp - 0x40], eax
jmp 0x100452aa
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x29c]
call fcn.1001651b
jmp 0x100450ff
jmp 0x1004558f
mov dword [ebp - 0x800], 0xd65bdf54
mov dword [ebp - 0x960], 0
mov dword [ebp - 0x808], 0x1bd9f019
push 3
lea ecx, [ebp - 0x910]
call fcn.10016499
mov dword [ebp - 4], 0xd
mov dword [ebp - 0x7ec], 0x9e6d
push 0x9dc
push 0x2cb0
push 0
lea eax, [ebp - 0x810]
push eax
lea eax, [ebp - 0x910]
push eax
call fcn.10041822
add esp, 0x14
push 0x3333
lea eax, [ebp - 0x62c]
push eax
push 0
call fcn.1004215a
add esp, 0xc
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x910]
call fcn.1001651b
lea eax, [ebp - 0x5d8]
push eax
lea ecx, [ebp - 0xa24]
call fcn.10023a1c
mov dword [ebp - 0x6cc], eax
mov eax, dword [ebp - 0x6cc]
mov dword [ebp - 0x634], eax
mov dword [ebp - 4], 0xe
push 0xa
xor edx, edx
mov ecx, dword [ebp - 0x634]
call fcn.1002d09d
pop ecx
mov dword [ebp - 0x6d4], eax
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0xa24]
call fcn.100163fb
push 2
lea ecx, [ebp - 0x7e8]
call fcn.10016499
mov dword [ebp - 4], 0xf
mov dword [ebp - 0x63c], 0xc36544d1
mov dword [ebp - 0x20], 0
jmp 0x1004560d
mov eax, dword [ebp - 0x20]
inc eax
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], 2
jge 0x10045623
mov eax, dword [ebp - 0x20]
mov dword [ebp + eax*4 - 0x820], 0x5c184c50
jmp 0x10045606
mov dword [ebp - 0x20], 0
jmp 0x10045633
mov eax, dword [ebp - 0x20]
inc eax
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], 1
jge 0x10045649
mov eax, dword [ebp - 0x20]
mov dword [ebp + eax*4 - 0x338], 0xb1c2a2c7
jmp 0x1004562c
push 0
lea eax, [ebp - 0x7e8]
push eax
lea eax, [ebp - 0x20]
push eax
call fcn.10041c17
add esp, 0xc
mov dword [ebp - 0x20], 0
jmp 0x1004566e
mov eax, dword [ebp - 0x20]
inc eax
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], 1
jge 0x10045684
mov eax, dword [ebp - 0x20]
mov dword [ebp + eax*4 - 0x738], 0xfa5fef9d
jmp 0x10045667
push 4
pop eax
imul eax, eax, 0
push 4
pop ecx
imul ecx, ecx, 0
mov eax, dword [ebp + eax - 0x820]
mov dword [ebp + ecx - 0x338], eax
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x338]
mov dword [ebp - 0x280], eax
push 1
lea ecx, [ebp - 0x7e8]
call fcn.10016537
mov ecx, dword [ebp - 0x280]
mov dword [eax], ecx
push 4
pop eax
imul eax, eax, 0
mov ecx, dword [ebp - 0x280]
mov dword [ebp + eax - 0x738], ecx
mov eax, dword [ebp - 0x280]
mov dword [ebp - 0x63c], eax
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x7e8]
call fcn.1001651b
and dword [ebp - 0x1d0], 0
jmp 0x1004570a
mov eax, dword [ebp - 0x1d0]
inc eax
mov dword [ebp - 0x1d0], eax
cmp dword [ebp - 0x1d0], 0xb
jae 0x10045723
mov eax, dword [ebp - 0x1d0]
mov byte [ebp + eax - 0x5d8], 0
jmp 0x100456fd
push dword [ebp - 0x6d4]
push dword [ebp - 0x644]
call fcn.1003e459
pop ecx
pop ecx
mov dword [ebp - 0x340], eax
mov dword [ebp - 0x904], 0x1bab5934
mov dword [ebp - 0x818], 1
mov dword [ebp - 0x8b4], 5
mov dword [ebp - 0x824], 0xfffffffb
mov dword [ebp - 0x948], 0xb74c38b6
mov dword [ebp - 0x82c], 0xb552bf33
mov dword [ebp - 0x8bc], 0xc2251554
mov dword [ebp - 0x198], 0
jmp 0x1004579b
mov eax, dword [ebp - 0x198]
inc eax
mov dword [ebp - 0x198], eax
cmp dword [ebp - 0x198], 1
jge 0x100457b7
mov eax, dword [ebp - 0x198]
mov dword [ebp + eax*4 - 0x1b8], 0x831713b9
jmp 0x1004578e
push 4
pop eax
imul eax, eax, 0
mov dword [ebp + eax - 0x1b8], 0xfffffffb
jmp 0x100457e5
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x1b8]
inc eax
push 4
pop ecx
imul ecx, ecx, 0
mov dword [ebp + ecx - 0x1b8], eax
push 4
pop eax
imul eax, eax, 0
cmp dword [ebp + eax - 0x1b8], 5
jl 0x10045863
mov dword [ebp - 0x834], 0xd7be7e55
mov dword [ebp - 0x914], 0xfffffffb
mov dword [ebp - 0x70c], 0xccde6bc0
mov dword [ebp - 0x158], 0
jmp 0x1004582c
mov eax, dword [ebp - 0x158]
inc eax
mov dword [ebp - 0x158], eax
cmp dword [ebp - 0x158], 1
jge 0x10045848
mov eax, dword [ebp - 0x158]
mov dword [ebp + eax*4 - 0x83c], 0
jmp 0x1004581f
push 0x516f
lea eax, [ebp - 0x70c]
push eax
push 1
call fcn.100417d2
add esp, 0xc
jmp 0x100457ca
mov eax, dword [ebp - 0xc0]
mov ecx, dword [ebp - 0x340]
mov dword [eax + 8], ecx
push 3
lea ecx, [ebp - 0x7c4]
call fcn.10016499
mov dword [ebp - 4], 0x10
mov dword [ebp - 0x110], 1
mov dword [ebp - 0x1a0], 0
jmp 0x100458a9
mov eax, dword [ebp - 0x1a0]
inc eax
mov dword [ebp - 0x1a0], eax
cmp dword [ebp - 0x1a0], 3
jge 0x100458cb
push dword [ebp - 0x1a0]
lea ecx, [ebp - 0x7c4]
call fcn.10016537
mov dword [eax], 0x4778
jmp 0x1004589c
lea eax, [ebp - 0x110]
push eax
lea eax, [ebp - 0x7c4]
push eax
push 1
push 0x19a
push 0x658a
call fcn.10041822
add esp, 0x14
mov dword [ebp - 0x110], 0xffffffed
jmp 0x10045906
mov eax, dword [ebp - 0x110]
inc eax
mov dword [ebp - 0x110], eax
cmp dword [ebp - 0x110], 0x16
jne 0x1004592b
mov byte [ebp - 0xa4], 0
movzx eax, byte [ebp - 0xa4]
test eax, eax
je 0x10045929
push 1
call fcn.100418cd
pop ecx
jmp 0x100458f9
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x7c4]
call fcn.1001651b
push 0x4779
lea eax, [ebp - 0x340]
push eax
push 0
lea eax, [ebp - 0x14]
push eax
push 0x106f
call fcn.1004203d
add esp, 0x14
push 1
push 0x39e6
call fcn.10041a2e
pop ecx
pop ecx
and dword [ebp - 0xf8], 0
mov dword [ebp - 0x65c], 1
mov dword [ebp - 0x64c], 0xfadacd7d
mov dword [ebp - 0x67c], 0xa017779a
mov dword [ebp - 0x6dc], 0xfffffffc
mov dword [ebp - 0x654], 0x943e2f7c
push 0
lea eax, [ebp - 0x64c]
push eax
lea eax, [ebp - 0x6dc]
push eax
push 0x5640
push 0x7e74
push 0x37f4
lea eax, [ebp - 0x654]
push eax
lea eax, [ebp - 0x67c]
push eax
lea eax, [ebp - 0x65c]
push eax
call fcn.10042218
add esp, 0x24
mov byte [ebp - 0x9a], 0
movzx eax, byte [ebp - 0x9a]
test eax, eax
je 0x100459f6
push 1
call fcn.10041ace
pop ecx
mov eax, dword [ebp - 0x14]
cmp dword [eax + 0x18], 0
jbe 0x10045a14
lea eax, [ebp - 0x14]
push eax
lea eax, [ebp - 0xf8]
push eax
push 1
call fcn.10041b02
add esp, 0xc
mov dword [ebp - 0x104], 0xac64a684
mov dword [ebp - 0x8c4], 0x288586fd
mov dword [ebp - 0x844], 0xa4ccfd66
mov dword [ebp - 0x958], 0xfce6bb2f
mov dword [ebp - 0x84c], 1
mov dword [ebp - 0x8cc], 6
mov dword [ebp - 0x854], 8
mov dword [ebp - 0x924], 0xbdae4f9d
mov dword [ebp - 0x368], 0xffffffff
mov dword [ebp - 0x85c], 0x91d0b6bd
mov dword [ebp - 0x8d4], 0
mov dword [ebp - 0x864], 0xdabac8ef
mov dword [ebp - 0x928], 0x5c82f744
mov dword [ebp - 0x86c], 0xffffffff
push 1
lea ecx, [ebp - 0x920]
call fcn.10016499
mov dword [ebp - 4], 0x11
mov dword [ebp - 0x688], 0xa687
mov dword [ebp - 0x8dc], 0xfffffff8
mov dword [ebp - 0x258], 0xc531364f
lea eax, [ebp - 0x874]
push eax
push 0
lea eax, [ebp - 0x920]
push eax
push 0x1017
call fcn.10041b4c
add esp, 0x10
mov byte [ebp - 0xaa], 0
push 0x16f
push 1
push 0x13fd
lea eax, [ebp - 0xaa]
push eax
call fcn.10041b4c
add esp, 0x10
mov dword [ebp - 0x104], 7
jmp 0x10045b2a
mov eax, dword [ebp - 0x104]
dec eax
mov dword [ebp - 0x104], eax
cmp dword [ebp - 0x104], 0xfffffff1
jle 0x10045d54
push 1
lea ecx, [ebp - 0x5c0]
call fcn.10016499
mov byte [ebp - 4], 0x12
mov dword [ebp - 0x370], 0
mov dword [ebp - 0x6c], 0
jmp 0x10045b62
mov eax, dword [ebp - 0x6c]
inc eax
mov dword [ebp - 0x6c], eax
cmp dword [ebp - 0x6c], 1
jge 0x10045b78
mov eax, dword [ebp - 0x6c]
mov dword [ebp + eax*4 - 0x680], 0x39924432
jmp 0x10045b5b
mov dword [ebp - 0x6c], 0
jmp 0x10045b88
mov eax, dword [ebp - 0x6c]
inc eax
mov dword [ebp - 0x6c], eax
cmp dword [ebp - 0x6c], 1
jge 0x10045ba4
push dword [ebp - 0x6c]
lea ecx, [ebp - 0x5c0]
call fcn.10016537
mov dword [eax], 0x43c4ab2
jmp 0x10045b81
push 0
lea ecx, [ebp - 0x5c0]
call fcn.10016537
and dword [eax], 0
jmp 0x10045bda
push 0
lea ecx, [ebp - 0x5c0]
call fcn.10016537
cmp dword [eax], 0
jg 0x10045d40
mov dword [ebp - 0x690], 7
mov dword [ebp - 0x664], 1
mov dword [ebp - 0x16c], 0
jmp 0x10045c1d
cmp dword [ebp - 0x16c], 2
jge 0x10045c39
mov byte [ebp - 4], 0x11
lea ecx, [ebp - 0x5c0]
call fcn.1001651b
jmp 0x10045b1d
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x920]
call fcn.1001651b
mov eax, dword [ebp - 0x14]
mov eax, dword [eax + 0x1c]
mov dword [ebp - 0x10], eax
mov dword [ebp - 0x930], 1
mov byte [ebp - 0xa6], 0
movzx eax, byte [ebp - 0xa6]
test eax, eax
je 0x10045d9c
push 1
push 0x2eef
push 0x5449
call fcn.10041c17
add esp, 0xc
mov byte [ebp - 0x9e], 0
movzx eax, byte [ebp - 0x9e]
test eax, eax
je 0x10045dbc
push 0x6598
push 1
call fcn.10041c7d
pop ecx
pop ecx
mov eax, dword [ebp - 0x14]
mov eax, dword [eax + 0x14]
sub eax, dword [ebp - 0xf8]
mov dword [ebp - 0xc4], eax
mov dword [ebp - 0x174], 1
mov dword [ebp - 0x174], 0x1a
jmp 0x10045df1
mov eax, dword [ebp - 0x174]
dec eax
mov dword [ebp - 0x174], eax
cmp dword [ebp - 0x174], 0x16
jle 0x10045e57
mov byte [ebp - 0xb9], 0
movzx eax, byte [ebp - 0xb9]
test eax, eax
je 0x10045e20
push 0
push 0x32a5
push 0x4d82
call fcn.100420cc
add esp, 0xc
mov byte [ebp - 0xa0], 0
movzx eax, byte [ebp - 0xa0]
test eax, eax
je 0x10045e55
push 0x2cc0
push 0x27d6
push 0x2f5c
push 0x2b7a
push 0x2243
push 0
call fcn.10042433
add esp, 0x18
jmp 0x10045de4
mov byte [ebp - 0xa8], 0
push 0x63a3
push 0x7e28
push 0x27b5
push 0x5c9
push 1
lea eax, [ebp - 0xa8]
push eax
push 0x2cc1
push 0x1734
push 0x4bd8
push 0x68c9
push 0x4cdb
push 0x6d2c
push 0x7d1c
call fcn.10041cae
add esp, 0x34
and dword [ebp - 0xe8], 0
jmp 0x10045ebc
mov eax, dword [ebp - 0xe8]
cmp eax, dword [ebp - 0xc4]
jge 0x10045f66
mov eax, dword [ebp - 0x14]
mov ecx, dword [ebp - 0x14]
mov eax, dword [eax + 0x14]
sub eax, dword [ecx + 0x18]
cmp dword [ebp - 0xe8], eax
jae 0x10045f0d
lea eax, [ebp - 0x30]
push eax
lea eax, [ebp - 0x14]
push eax
push 1
push 0x7d80
lea eax, [ebp - 0x2c]
push eax
lea eax, [ebp - 0x378]
push eax
lea eax, [ebp - 0xe8]
push eax
call fcn.10041fb4
add esp, 0x1c
jmp 0x10045f36
mov eax, dword [ebp - 0x88]
mov eax, dword [eax + 0x14]
mov ecx, dword [ebp - 0x88]
add eax, dword [ecx + 0x10]
push eax
mov eax, dword [ebp - 0x88]
push dword [eax + 0x14]
call fcn.1003e459
pop ecx
pop ecx
mov dword [ebp - 0x378], eax
lea eax, [ebp - 0x2c]
push eax
push 0
lea eax, [ebp - 0x10]
push eax
lea eax, [ebp - 0x30]
push eax
push 0x4786
lea eax, [ebp - 0x378]
push eax
call fcn.10042a9d
add esp, 0x18
mov eax, dword [ebp - 0x10]
add eax, 4
mov dword [ebp - 0x10], eax
jmp 0x10045eaf
mov eax, dword [ebp - 0x14]
mov eax, dword [eax + 0x14]
sub eax, dword [ebp - 0xf8]
mov ecx, dword [ebp - 0x14]
mov dword [ecx + 0x14], eax
mov dword [ebp - 0x8c], 0x2a43
mov dword [ebp - 0x94], 0x46e3
mov dword [ebp - 0x278], 7
mov dword [ebp - 0x6a0], 0xfffffff7
mov dword [ebp - 0x684], 0xdfcc86f8
mov dword [ebp - 0x17c], 0
jmp 0x10045fc3
cmp dword [ebp - 0x17c], 1
jge 0x10045fdf
mov eax, dword [ebp + 0x1c]
mov dword [ebp - 0x610], eax
mov eax, dword [ebp + 0x10]
mov dword [ebp - 0x618], eax
mov eax, dword [ebp + 0x14]
mov dword [ebp - 0x620], eax
mov eax, dword [ebp + 8]
mov dword [ebp - 0x628], eax
mov eax, dword [ebp - 0x610]
mov dword [ebp - 0x640], eax
mov eax, dword [ebp - 0x618]
mov dword [ebp - 0x630], eax
mov eax, dword [ebp - 0x620]
mov dword [ebp - 0x638], eax
mov eax, dword [ebp - 0x628]
mov dword [ebp - 0x648], eax
mov eax, dword [ebp - 0x630]
mov eax, dword [eax]
mov ecx, dword [ebp - 0x638]
add eax, dword [ecx]
mov ecx, dword [ebp - 0x640]
mov ecx, dword [ecx]
mov edx, dword [ebp - 0x648]
mov edx, dword [edx]
mov dword [ecx + eax], edx
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop esi
mov esp, ebp
pop ebp
ret