Function at 0x10043f8a
Capabilities:
Contain obfuscated stackstrings
Parse pe header

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x100718f1
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x530
push esi
push 2
lea ecx, [ebp - 0x33c]
call fcn.100100aa
and dword [ebp - 4], 0
mov dword [ebp - 0x3a4], 0x5457d670
push 1
push 0x2459
push 0x2728
lea eax, [ebp - 0x33c]
push eax
push 1
push 0x3357
lea eax, [ebp - 0xb4]
push eax
call fcn.1003e37a
add esp, 0x1c
mov dword [ebp - 0xb4], 0
jmp 0x10044006
mov eax, dword [ebp - 0xb4]
inc eax
mov dword [ebp - 0xb4], eax
cmp dword [ebp - 0xb4], 3
jge 0x10044022
mov eax, dword [ebp - 0xb4]
mov dword [ebp + eax*4 - 0x420], 0x7865925e
jmp 0x10043ff9
push 0
lea ecx, [ebp - 0x33c]
call fcn.10010148
mov dword [eax], 0x1d
jmp 0x1004405b
push 0
lea ecx, [ebp - 0x33c]
call fcn.10010148
mov dword [ebp - 0x190], eax
mov eax, dword [ebp - 0x190]
mov eax, dword [eax]
dec eax
mov ecx, dword [ebp - 0x190]
mov dword [ecx], eax
push 0
lea ecx, [ebp - 0x33c]
call fcn.10010148
cmp dword [eax], 0xfffffff3
jl 0x10044543
mov dword [ebp - 0x34], 0xbd7b1c2a
mov dword [ebp - 0x2e0], 0x4ec7e318
mov byte [ebp - 0x59], 0
push 1
push 0x6712
push 0x4aa1
push 0x1def
push 1
push 0x4dee
push 0x2534
push 0x3a54
lea eax, [ebp - 0x59]
push eax
push 0x5f86
push 1
push 0x4313
call fcn.1003e71e
add esp, 0x30
mov dword [ebp - 0x34], 0x16
jmp 0x100440d0
mov eax, dword [ebp - 0x34]
dec eax
mov dword [ebp - 0x34], eax
cmp dword [ebp - 0x34], 9
jge 0x1004453e
mov dword [ebp - 0x3ac], 0xffffffff
mov dword [ebp - 0x2c8], 0xd92426f3
mov dword [ebp - 0x354], 0x1647
cmp dword [ebp - 0x354], 0xcb5
jge 0x10044378
lea eax, [ebp - 0x12c]
push eax
lea eax, [ebp - 0xf8]
push eax
lea eax, [ebp - 0x118]
push eax
lea eax, [ebp - 0x134]
push eax
lea eax, [ebp - 0xec]
push eax
lea eax, [ebp - 0x124]
push eax
lea eax, [ebp - 0x2f8]
push eax
push 0x100096b8
call fcn.10057beb
add esp, 0x20
and dword [ebp - 0x39c], 0
lea eax, [ebp - 0x39c]
push eax
push dword [ebp - 0x2f8]
lea ecx, [ebp - 0xa8]
call fcn.10046ee9
mov byte [ebp - 4], 1
and dword [ebp - 0x10], 0
jmp 0x10044176
mov eax, dword [ebp - 0x10]
inc eax
mov dword [ebp - 0x10], eax
mov eax, dword [ebp - 0x10]
cmp eax, dword [ebp - 0x2f8]
jge 0x1004433d
mov eax, dword [ebp - 0x10]
cmp eax, dword [ebp - 0x124]
jl 0x10044216
push dword [ebp - 0x10]
lea ecx, [ebp - 0xa8]
call fcn.10010148
mov esi, eax
mov eax, dword [ebp - 0x10]
sub eax, dword [ebp - 0x124]
push eax
lea ecx, [ebp - 0xa8]
call fcn.10010148
mov eax, dword [eax]
add eax, dword [ebp - 0x118]
cmp dword [esi], eax
jle 0x100441dd
push dword [ebp - 0x10]
lea ecx, [ebp - 0xa8]
call fcn.10010148
mov eax, dword [eax]
mov dword [ebp - 0x318], eax
jmp 0x10044200
mov eax, dword [ebp - 0x10]
sub eax, dword [ebp - 0x124]
push eax
lea ecx, [ebp - 0xa8]
call fcn.10010148
mov eax, dword [eax]
add eax, dword [ebp - 0x118]
mov dword [ebp - 0x318], eax
push dword [ebp - 0x10]
lea ecx, [ebp - 0xa8]
call fcn.10010148
mov ecx, dword [ebp - 0x318]
mov dword [eax], ecx
mov eax, dword [ebp - 0x10]
cmp eax, dword [ebp - 0xec]
jl 0x100442a7
push dword [ebp - 0x10]
lea ecx, [ebp - 0xa8]
call fcn.10010148
mov esi, eax
mov eax, dword [ebp - 0x10]
sub eax, dword [ebp - 0xec]
push eax
lea ecx, [ebp - 0xa8]
call fcn.10010148
mov eax, dword [eax]
add eax, dword [ebp - 0xf8]
cmp dword [esi], eax
jle 0x1004426e
push dword [ebp - 0x10]
lea ecx, [ebp - 0xa8]
call fcn.10010148
mov eax, dword [eax]
mov dword [ebp - 0x320], eax
jmp 0x10044291
mov eax, dword [ebp - 0x10]
sub eax, dword [ebp - 0xec]
push eax
lea ecx, [ebp - 0xa8]
call fcn.10010148
mov eax, dword [eax]
add eax, dword [ebp - 0xf8]
mov dword [ebp - 0x320], eax
push dword [ebp - 0x10]
lea ecx, [ebp - 0xa8]
call fcn.10010148
mov ecx, dword [ebp - 0x320]
mov dword [eax], ecx
mov eax, dword [ebp - 0x10]
cmp eax, dword [ebp - 0x134]
jl 0x10044338
push dword [ebp - 0x10]
lea ecx, [ebp - 0xa8]
call fcn.10010148
mov esi, eax
mov eax, dword [ebp - 0x10]
sub eax, dword [ebp - 0x134]
push eax
lea ecx, [ebp - 0xa8]
call fcn.10010148
mov eax, dword [eax]
add eax, dword [ebp - 0x12c]
cmp dword [esi], eax
jle 0x100442ff
push dword [ebp - 0x10]
lea ecx, [ebp - 0xa8]
call fcn.10010148
mov eax, dword [eax]
mov dword [ebp - 0x328], eax
jmp 0x10044322
mov eax, dword [ebp - 0x10]
sub eax, dword [ebp - 0x134]
push eax
lea ecx, [ebp - 0xa8]
call fcn.10010148
mov eax, dword [eax]
add eax, dword [ebp - 0x12c]
mov dword [ebp - 0x328], eax
push dword [ebp - 0x10]
lea ecx, [ebp - 0xa8]
call fcn.10010148
mov ecx, dword [ebp - 0x328]
mov dword [eax], ecx
jmp 0x1004416f
lea ecx, [ebp - 0xa8]
call fcn.10046f0b
mov eax, dword [eax]
add eax, dword [ebp - 0x118]
add eax, dword [ebp - 0xf8]
add eax, dword [ebp - 0x12c]
push eax
push 0x10009160
call fcn.10057ed1
pop ecx
pop ecx
mov byte [ebp - 4], 0
lea ecx, [ebp - 0xa8]
call fcn.1001012c
mov dword [ebp - 0x2d8], 0x650dfa01
mov dword [ebp - 0xc4], 0
jmp 0x1004439b
mov eax, dword [ebp - 0xc4]
inc eax
mov dword [ebp - 0xc4], eax
cmp dword [ebp - 0xc4], 1
jge 0x100443b7
mov eax, dword [ebp - 0xc4]
mov dword [ebp + eax*4 - 0x3b4], 0xffffffff
jmp 0x1004438e
push 4
pop eax
shl eax, 1
lea eax, [ebp + eax - 0x420]
mov dword [ebp - 0x330], eax
push 0
lea ecx, [ebp - 0x33c]
call fcn.10010148
mov ecx, dword [ebp - 0x330]
mov eax, dword [eax]
mov dword [ecx], eax
mov eax, dword [ebp - 0x330]
cmp dword [eax], 0
jne 0x100444e8
push 0
lea ecx, [ebp - 0x33c]
call fcn.10010148
cmp dword [eax], 0
jne 0x100444a0
mov eax, dword [ebp - 0x3a4]
mov dword [ebp - 0x4a0], eax
mov eax, dword [ebp - 0x34]
mov dword [ebp - 0x4f0], eax
mov eax, dword [ebp - 0x34]
mov dword [ebp - 0x4a4], eax
mov eax, dword [ebp - 0x34]
mov dword [ebp - 0x4e0], eax
mov eax, dword [ebp - 0x3ac]
cmp dword [ebp - 0x34], eax
jle 0x10044443
mov dword [ebp - 0x158], 1
jmp 0x1004444a
and dword [ebp - 0x158], 0
mov eax, dword [ebp - 0x34]
cmp dword [ebp - 0x158], eax
je 0x10044461
mov dword [ebp - 0x100], 1
jmp 0x10044468
and dword [ebp - 0x100], 0
push 4
pop eax
imul eax, eax, 0
mov ecx, dword [ebp - 0x100]
mov dword [ebp + eax - 0x3b4], ecx
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x420]
imul eax, dword [ebp - 0x100]
cmp eax, dword [ebp - 0x2c8]
jge 0x100444a0
and dword [ebp - 0x160], 0
jmp 0x100444aa
mov dword [ebp - 0x160], 1
mov eax, dword [ebp - 0x2c8]
add eax, dword [ebp - 0x160]
cmp eax, dword [ebp - 0x2d8]
je 0x100444ca
mov dword [ebp - 0x2d0], 1
jmp 0x100444d1
and dword [ebp - 0x2d0], 0
mov eax, dword [ebp - 0x2e0]
cmp dword [ebp - 0x2d0], eax
jg 0x100444e8
and dword [ebp - 0x168], 0
jmp 0x100444f2
mov dword [ebp - 0x168], 1
mov eax, dword [ebp - 0x168]
mov dword [ebp - 0x2d8], eax
push 4
pop eax
imul eax, eax, 0
push 4
pop ecx
shl ecx, 0
mov ecx, dword [ebp + ecx - 0x420]
cmp dword [ebp + eax - 0x420], ecx
jl 0x10044526
mov dword [ebp - 0x170], 1
jmp 0x1004452d
and dword [ebp - 0x170], 0
mov eax, dword [ebp - 0x170]
mov dword [ebp - 0x2e0], eax
jmp 0x100440c9
jmp 0x10044037
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x33c]
call fcn.1001012c
and dword [ebp - 0x28], 0
mov dword [ebp - 0x3cc], 0x5d16df25
mov dword [ebp - 0x3bc], 0xfffd
mov dword [ebp - 0x3c4], 1
mov dword [ebp - 0x3d4], 0xffffffff
mov dword [ebp - 0x4ac], 0xaa810d21
lea eax, [ebp - 0x3bc]
push eax
lea eax, [ebp - 0x3c4]
push eax
lea eax, [ebp - 0x3cc]
push eax
lea eax, [ebp - 0x3d4]
push eax
call fcn.100432b8
add esp, 0x10
mov byte [ebp - 0x5b], 0
lea eax, [ebp - 0x5b]
push eax
call fcn.100432f4
pop ecx
mov dword [ebp - 0x30], 0x8ade19d2
mov dword [ebp - 0xd8], 0
jmp 0x100445da
mov eax, dword [ebp - 0xd8]
inc eax
mov dword [ebp - 0xd8], eax
cmp dword [ebp - 0xd8], 1
jge 0x100445f6
mov eax, dword [ebp - 0xd8]
mov dword [ebp + eax*4 - 0x3dc], 1
jmp 0x100445cd
mov dword [ebp - 0x30], 0
jmp 0x10044606
mov eax, dword [ebp - 0x30]
inc eax
mov dword [ebp - 0x30], eax
cmp dword [ebp - 0x30], 0
jg 0x1004461d
mov eax, dword [ebp - 0x30]
cmp dword [ebp + eax*4 - 0x3dc], 0
je 0x1004461b
jmp 0x1004461d
jmp 0x100445ff
mov dword [ebp - 0x30], 0
jmp 0x1004462d
mov eax, dword [ebp - 0x30]
inc eax
mov dword [ebp - 0x30], eax
cmp dword [ebp - 0x30], 0
jg 0x10044657
mov byte [ebp - 0x5a], 0
movzx eax, byte [ebp - 0x5a]
test eax, eax
je 0x10044655
push 1
push 0x5bd9
push 1
push 0x35fd
call fcn.1003ed4d
add esp, 0x10
jmp 0x10044626
mov dword [ebp - 0x120], 1
push 1
lea ecx, [ebp - 0x470]
call fcn.100100aa
mov dword [ebp - 4], 2
mov dword [ebp - 0xac], 4
mov dword [ebp - 0x184], 0xe07ea4c5
mov dword [ebp - 0x254], 7
mov dword [ebp - 0x18c], 0xffffffff
mov dword [ebp - 0x3ec], 0x4cff15cc
mov dword [ebp - 0x394], 1
mov dword [ebp - 0x38], 0
jmp 0x100446c1
mov eax, dword [ebp - 0x38]
inc eax
mov dword [ebp - 0x38], eax
cmp dword [ebp - 0x38], 2
jge 0x100446d7
mov eax, dword [ebp - 0x38]
mov dword [ebp + eax*4 - 0x304], 0xdfe4d9ed
jmp 0x100446ba
mov dword [ebp - 0x38], 0
jmp 0x100446e7
mov eax, dword [ebp - 0x38]
inc eax
mov dword [ebp - 0x38], eax
cmp dword [ebp - 0x38], 1
jge 0x10044700
push dword [ebp - 0x38]
lea ecx, [ebp - 0x470]
call fcn.10010148
or dword [eax], 0xffffffff
jmp 0x100446e0
push 4
pop eax
shl eax, 0
mov ecx, dword [ebp - 0x120]
cmp dword [ebp + eax - 0x304], ecx
je 0x10044721
mov dword [ebp - 0x2e8], 1
jmp 0x10044728
and dword [ebp - 0x2e8], 0
mov eax, dword [ebp - 0x120]
imul eax, dword [ebp - 0x2e8]
add eax, 0x733582f8
cmp eax, dword [ebp - 0x120]
jg 0x1004474e
mov dword [ebp - 0x178], 1
jmp 0x10044755
and dword [ebp - 0x178], 0
push 4
pop eax
shl eax, 0
mov eax, dword [ebp + eax - 0x304]
push 4
pop ecx
shl ecx, 0
add eax, dword [ebp + ecx - 0x304]
cmp eax, dword [ebp - 0x178]
jle 0x10044783
mov dword [ebp - 0x108], 1
jmp 0x1004478a
and dword [ebp - 0x108], 0
push 0
lea ecx, [ebp - 0x470]
call fcn.10010148
mov ecx, dword [ebp - 0x108]
mov dword [eax], ecx
imul eax, dword [ebp - 0x108], 0xffffffff
push 4
pop ecx
imul ecx, ecx, 0
cmp eax, dword [ebp + ecx - 0x304]
jg 0x100447c1
mov dword [ebp - 0x180], 1
jmp 0x100447c8
and dword [ebp - 0x180], 0
mov eax, dword [ebp - 0x180]
mov dword [ebp - 0xac], eax
cmp dword [ebp - 0xac], 0xc9a130df
jae 0x100447ec
mov dword [ebp - 0x3e4], 1
jmp 0x100447f3
and dword [ebp - 0x3e4], 0
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x304]
mov dword [ebp - 0x4e8], eax
mov eax, dword [ebp - 0xac]
mov dword [ebp - 0x184], eax
mov eax, dword [ebp - 0x184]
mov dword [ebp - 0x254], eax
mov eax, dword [ebp - 0x254]
mov dword [ebp - 0x18c], eax
mov eax, dword [ebp - 0x18c]
mov dword [ebp - 0x3ec], eax
mov dword [ebp - 0xac], 0xffffffff
mov eax, dword [ebp - 0xac]
mov dword [ebp - 0x394], eax
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x470]
call fcn.1001012c
mov dword [ebp - 0x458], 0x6a756a33
mov dword [ebp - 0x454], 0x6a756a33
mov dword [ebp - 0x450], 0x6a756a33
mov dword [ebp - 0x44c], 0x6a756a33
lea ecx, [ebp - 0x119]
call fcn.10010157
push eax
lea eax, [ebp - 0x448]
push eax
lea eax, [ebp - 0x458]
push eax
lea ecx, [ebp - 0x528]
call fcn.1001015a
push dword [eax + 4]
push dword [eax]
lea ecx, [ebp - 0x464]
call fcn.10010106
mov dword [ebp - 4], 3
mov dword [ebp - 0x2bc], 1
mov dword [ebp - 0x194], 1
mov dword [ebp - 0x3c8], 9
mov dword [ebp - 0x368], 0
mov dword [ebp - 0x40c], 0xffffffff
mov dword [ebp - 0x360], 0x3829
push 0x4c35
push 1
lea eax, [ebp - 0x464]
push eax
lea eax, [ebp - 0x2bc]
push eax
lea eax, [ebp - 0x194]
push eax
push 1
push 0x4817
push 1
call fcn.1003ee14
add esp, 0x20
push 1
lea eax, [ebp - 0x2bc]
push eax
lea eax, [ebp - 0x360]
push eax
push 0x608f
lea eax, [ebp - 0x3c8]
push eax
push 0x2b20
push 0x315b
push 1
lea eax, [ebp - 0x464]
push eax
lea eax, [ebp - 0x368]
push eax
lea eax, [ebp - 0x40c]
push eax
lea eax, [ebp - 0x194]
push eax
call fcn.1003efa0
add esp, 0x30
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x464]
call fcn.1001012c
mov dword [ebp - 0x6c], 0x5c68ec0a
mov dword [ebp - 0x130], 1
mov dword [ebp - 0x324], 0xfffffffa
mov dword [ebp - 0x6c], 0
jmp 0x100449ae
mov eax, dword [ebp - 0x6c]
dec eax
mov dword [ebp - 0x6c], eax
cmp dword [ebp - 0x6c], 0xffffffff
jg 0x10044a5f
mov dword [ebp - 0x25c], 0x6951ad38
mov dword [ebp - 0x19c], 1
mov dword [ebp - 0x80], 0xfffffff8
lea eax, [ebp - 0x19c]
push eax
lea eax, [ebp - 0x6c]
push eax
lea eax, [ebp - 0x130]
push eax
lea eax, [ebp - 0x80]
push eax
lea eax, [ebp - 0x25c]
push eax
call fcn.1004334c
add esp, 0x14
mov dword [ebp - 0x80], 0
jmp 0x10044a08
mov eax, dword [ebp - 0x80]
dec eax
mov dword [ebp - 0x80], eax
cmp dword [ebp - 0x80], 0xfffffff0
jne 0x10044a5a
mov dword [ebp - 0x3d0], 0
mov dword [ebp - 0x370], 0xbeb927ee
lea eax, [ebp - 0x130]
push eax
lea eax, [ebp - 0x80]
push eax
lea eax, [ebp - 0x370]
push eax
lea eax, [ebp - 0x25c]
push eax
lea eax, [ebp - 0x19c]
push eax
lea eax, [ebp - 0x324]
push eax
lea eax, [ebp - 0x3d0]
push eax
call fcn.100433ce
add esp, 0x1c
jmp 0x10044a01
jmp 0x100449a7
push 0x21e8
lea eax, [ebp - 0x324]
push eax
push 1
push 1
push 0x623c
lea eax, [ebp - 0x130]
push eax
push 0xae
lea eax, [ebp - 0x6c]
push eax
call fcn.1003f312
add esp, 0x20
mov eax, dword [ebp + 8]
mov dword [ebp - 0xfc], eax
mov eax, dword [ebp - 0xfc]
movzx eax, word [eax]
cmp eax, 0x5a4d
je 0x10044cab
mov dword [ebp - 0x58], 0xffffffff
push 1
lea ecx, [ebp - 0x3fc]
call fcn.100100aa
mov dword [ebp - 4], 4
mov dword [ebp - 0x110], 0xdbc1c234
push 2
lea ecx, [ebp - 0x42c]
call fcn.100100aa
mov byte [ebp - 4], 5
mov dword [ebp - 0x484], 0xfffffffa
mov dword [ebp - 0x380], 0xffff
lea eax, [ebp - 0x3fc]
push eax
lea eax, [ebp - 0x378]
push eax
call fcn.100434df
pop ecx
pop ecx
lea eax, [ebp - 0x42c]
push eax
lea eax, [ebp - 0x378]
push eax
call fcn.10043524
pop ecx
pop ecx
mov eax, dword [ebp - 0x58]
mov dword [ebp - 0x488], eax
cmp dword [ebp - 0x58], 9
jb 0x10044b38
mov dword [ebp - 0x1a4], 1
jmp 0x10044b3f
and dword [ebp - 0x1a4], 0
cmp dword [ebp - 0x1a4], 0x1615e82a
jle 0x10044b57
mov dword [ebp - 0x408], 1
jmp 0x10044b5e
and dword [ebp - 0x408], 0
mov eax, dword [ebp - 0x58]
mov dword [ebp - 0x490], eax
mov eax, 0xbc9f
imul eax, eax, 0xdade
mov dword [ebp - 0x264], eax
push 0
lea ecx, [ebp - 0x3fc]
call fcn.10010148
mov ecx, dword [ebp - 0x264]
mov dword [eax], ecx
mov eax, dword [ebp - 0x58]
imul eax, dword [ebp - 0x264]
add eax, 0x4562
cmp eax, 0xfffffffa
jae 0x10044bbc
push 0
lea ecx, [ebp - 0x3fc]
call fcn.10010148
cmp dword [eax], 0
jne 0x10044bbc
and dword [ebp - 0x1ac], 0
jmp 0x10044bc6
mov dword [ebp - 0x1ac], 1
mov eax, dword [ebp - 0x1ac]
mov dword [ebp - 0x110], eax
cmp dword [ebp - 0x110], 0xb79a
jle 0x10044bea
mov dword [ebp - 0x2c4], 1
jmp 0x10044bf1
and dword [ebp - 0x2c4], 0
mov eax, dword [ebp - 0x58]
cmp dword [ebp - 0x2c4], eax
jle 0x10044c08
mov dword [ebp - 0x1b4], 1
jmp 0x10044c0f
and dword [ebp - 0x1b4], 0
mov eax, dword [ebp - 0x58]
cmp dword [ebp - 0x1b4], eax
je 0x10044c26
mov dword [ebp - 0x26c], 1
jmp 0x10044c2d
and dword [ebp - 0x26c], 0
cmp dword [ebp - 0x26c], 0xfffffffe
jge 0x10044c42
mov dword [ebp - 0x1bc], 1
jmp 0x10044c49
and dword [ebp - 0x1bc], 0
push 1
lea ecx, [ebp - 0x42c]
call fcn.10010148
mov ecx, dword [ebp - 0x1bc]
mov dword [eax], ecx
lea eax, [ebp - 0x58]
push eax
lea eax, [ebp - 0x380]
push eax
lea eax, [ebp - 0x3fc]
push eax
lea eax, [ebp - 0x42c]
push eax
lea eax, [ebp - 0x110]
push eax
call fcn.1004356c
add esp, 0x14
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x42c]
call fcn.1001012c
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x3fc]
call fcn.1001012c
xor eax, eax
jmp 0x10046851
push 3
lea ecx, [ebp - 0x2f4]
call fcn.100100aa
mov dword [ebp - 4], 6
mov dword [ebp - 0x44], 4
mov dword [ebp - 0x1d4], 0xfffffffd
lea eax, [ebp - 0x2f4]
push eax
lea eax, [ebp - 0x90]
push eax
call fcn.1004382b
pop ecx
pop ecx
mov dword [ebp - 0x90], 0
jmp 0x10044cfe
mov eax, dword [ebp - 0x90]
inc eax
mov dword [ebp - 0x90], eax
cmp dword [ebp - 0x90], 1
jge 0x10044d1a
mov eax, dword [ebp - 0x90]
mov dword [ebp + eax*4 - 0x31c], 1
jmp 0x10044cf1
lea eax, [ebp - 0x2f4]
push eax
lea eax, [ebp - 0x44]
push eax
push 1
push 0x633
push 1
push 0x4119
call fcn.1003f500
add esp, 0x18
push 1
lea ecx, [ebp - 0x2f4]
call fcn.10010148
cmp dword [eax], 0
je 0x10044db1
cmp dword [ebp - 0x44], 0
je 0x10044d65
cmp dword [ebp - 0x44], 0
je 0x10044d65
mov dword [ebp - 0x2fc], 1
jmp 0x10044d6c
and dword [ebp - 0x2fc], 0
mov eax, dword [ebp - 0x44]
imul eax, dword [ebp - 0x2fc]
cmp eax, 0xffffffff
jl 0x10044d87
mov dword [ebp - 0x1c4], 1
jmp 0x10044d8e
and dword [ebp - 0x1c4], 0
push 2
lea ecx, [ebp - 0x2f4]
call fcn.10010148
mov eax, dword [eax]
cmp eax, dword [ebp - 0x1c4]
jge 0x10044db1
mov dword [ebp - 0x274], 1
jmp 0x10044db8
and dword [ebp - 0x274], 0
mov eax, dword [ebp - 0x44]
cmp dword [ebp - 0x274], eax
je 0x10044e25
push 2
lea ecx, [ebp - 0x2f4]
call fcn.10010148
cmp dword [eax], 0
je 0x10044e25
mov dword [ebp - 0x3d8], 9
push 0x169c
lea eax, [ebp - 0x3d8]
push eax
push 1
push 0x1587
push 0x17eb
push 0x2d94
push 0x32c4
push 1
lea eax, [ebp - 0x44]
push eax
push 0x3b1b
push 0x3a4c
push 1
push 0x7ebb
call fcn.1003f891
add esp, 0x34
jmp 0x10044fa2
push 3
lea ecx, [ebp - 0x350]
call fcn.100100aa
mov byte [ebp - 4], 7
mov dword [ebp - 0x388], 1
mov dword [ebp - 0xe0], 0
jmp 0x10044e59
mov eax, dword [ebp - 0xe0]
inc eax
mov dword [ebp - 0xe0], eax
cmp dword [ebp - 0xe0], 3
jge 0x10044e7b
push dword [ebp - 0xe0]
lea ecx, [ebp - 0x350]
call fcn.10010148
mov dword [eax], 0xfffffffa
jmp 0x10044e4c
push 1
lea ecx, [ebp - 0x350]
call fcn.10010148
push 1
lea ecx, [ebp - 0x350]
call fcn.10010148
push 1
lea ecx, [ebp - 0x2f4]
call fcn.10010148
cmp dword [eax], 0
je 0x10044eb3
mov dword [ebp - 0x1cc], 1
jmp 0x10044eba
and dword [ebp - 0x1cc], 0
push 1
lea ecx, [ebp - 0x350]
call fcn.10010148
mov eax, dword [eax]
sub eax, dword [ebp - 0x1cc]
mov dword [ebp - 0x44], eax
cmp dword [ebp - 0x44], 0xffffffff
jae 0x10044ee4
mov dword [ebp - 0x2cc], 1
jmp 0x10044eeb
and dword [ebp - 0x2cc], 0
mov eax, dword [ebp - 0x2cc]
sub eax, dword [ebp - 0x1d4]
cmp eax, dword [ebp - 0x1d4]
je 0x10044f0b
mov dword [ebp - 0x27c], 1
jmp 0x10044f12
and dword [ebp - 0x27c], 0
push 0
lea ecx, [ebp - 0x350]
call fcn.10010148
mov ecx, dword [ebp - 0x27c]
cmp ecx, dword [eax]
jl 0x10044f47
push 2
lea ecx, [ebp - 0x2f4]
call fcn.10010148
cmp dword [eax], 0
je 0x10044f47
mov dword [ebp - 0x1dc], 1
jmp 0x10044f4e
and dword [ebp - 0x1dc], 0
push 4
pop eax
imul eax, eax, 0
mov ecx, dword [ebp - 0x1dc]
mov dword [ebp + eax - 0x31c], ecx
push 4
pop eax
imul eax, eax, 0
cmp dword [ebp + eax - 0x31c], 0xb96f
jge 0x10044f80
mov dword [ebp - 0x1e4], 1
jmp 0x10044f87
and dword [ebp - 0x1e4], 0
mov eax, dword [ebp - 0x1e4]
mov dword [ebp - 0x388], eax
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x350]
call fcn.1001012c
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x2f4]
call fcn.1001012c
mov eax, dword [ebp - 0xfc]
mov ecx, dword [ebp + 8]
add ecx, dword [eax + 0x3c]
mov dword [ebp - 0x88], ecx
call fcn.10043873
mov eax, dword [ebp - 0x88]
cmp dword [eax], 0x4550
je 0x10045a10
push 2
lea ecx, [ebp - 0x9c]
call fcn.100100aa
mov dword [ebp - 4], 8
mov dword [ebp - 0x18], 8
push 1
push 1
lea eax, [ebp - 0x498]
push eax
push 0x14fb
push 0x378b
lea eax, [ebp - 0x9c]
push eax
call fcn.10040056
add esp, 0x18
push 1
push 1
push 0x13ff
call fcn.10040127
add esp, 0xc
mov dword [ebp - 0x18], 0
jmp 0x1004503a
mov eax, dword [ebp - 0x18]
inc eax
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], 1
jg 0x10045346
mov dword [ebp - 0x20], 0x66de6b93
mov dword [ebp - 0x390], 0xdcff
mov dword [ebp - 0xe8], 0
jmp 0x1004506e
mov eax, dword [ebp - 0xe8]
inc eax
mov dword [ebp - 0xe8], eax
cmp dword [ebp - 0xe8], 2
jge 0x1004508a
mov eax, dword [ebp - 0xe8]
mov dword [ebp + eax*4 - 0x310], 0xef3cf687
jmp 0x10045061
push dword [ebp - 0x18]
lea ecx, [ebp - 0x9c]
call fcn.10010148
cmp dword [eax], 0
je 0x100452e0
push 0
lea ecx, [ebp - 0x9c]
call fcn.10010148
mov esi, eax
push dword [ebp - 0x18]
lea ecx, [ebp - 0x9c]
call fcn.10010148
mov ecx, dword [esi]
cmp ecx, dword [eax]
jge 0x100450d0
mov dword [ebp - 0x28c], 1
jmp 0x100450d7
and dword [ebp - 0x28c], 0
push 1
lea ecx, [ebp - 0x9c]
call fcn.10010148
push dword [ebp - 0x18]
lea ecx, [ebp - 0x9c]
call fcn.10010148
mov esi, eax
push dword [ebp - 0x18]
lea ecx, [ebp - 0x9c]
call fcn.10010148
mov ecx, dword [esi]
imul ecx, dword [eax]
cmp ecx, 0x61a6b719
jge 0x1004511b
mov dword [ebp - 0x284], 1
jmp 0x10045122
and dword [ebp - 0x284], 0
push 0
lea ecx, [ebp - 0x9c]
call fcn.10010148
mov ecx, dword [ebp - 0x284]
cmp ecx, dword [eax]
jg 0x10045145
mov dword [ebp - 0x1ec], 1
jmp 0x1004514c
and dword [ebp - 0x1ec], 0
mov eax, dword [ebp - 0x18]
cmp dword [ebp - 0x1ec], eax
je 0x10045163
mov dword [ebp - 0x414], 1
jmp 0x1004516a
and dword [ebp - 0x414], 0
push 0
lea ecx, [ebp - 0x9c]
call fcn.10010148
cmp dword [eax], 0
je 0x10045191
mov eax, 0xb1b0
test eax, eax
je 0x10045191
mov dword [ebp - 0x2d4], 1
jmp 0x10045198
and dword [ebp - 0x2d4], 0
push dword [ebp - 0x18]
lea ecx, [ebp - 0x9c]
call fcn.10010148
mov ecx, dword [ebp - 0x2d4]
sub ecx, dword [eax]
mov dword [ebp - 0x20], ecx
mov esi, dword [ebp - 0x20]
push dword [ebp - 0x18]
lea ecx, [ebp - 0x9c]
call fcn.10010148
cmp dword [eax], esi
jl 0x100451d8
push 0
lea ecx, [ebp - 0x9c]
call fcn.10010148
cmp dword [eax], 0
je 0x100451f4
push 4
pop eax
shl eax, 0
cmp dword [ebp + eax - 0x310], 0
je 0x100451f4
mov dword [ebp - 0x1f4], 1
jmp 0x100451fb
and dword [ebp - 0x1f4], 0
push 4
pop eax
imul eax, eax, 0
mov ecx, dword [ebp - 0x1f4]
sub ecx, dword [ebp + eax - 0x310]
mov eax, dword [ebp - 0x28c]
sub eax, ecx
jne 0x10045224
mov dword [ebp - 0x1fc], 1
jmp 0x1004522b
and dword [ebp - 0x1fc], 0
mov eax, dword [ebp - 0x1fc]
add eax, 0x5b5c
je 0x10045257
push dword [ebp - 0x18]
lea ecx, [ebp - 0x9c]
call fcn.10010148
cmp dword [eax], 0
je 0x10045257
mov dword [ebp - 0x308], 1
jmp 0x1004525e
and dword [ebp - 0x308], 0
push dword [ebp - 0x18]
lea ecx, [ebp - 0x9c]
call fcn.10010148
mov ecx, dword [ebp - 0x308]
cmp ecx, dword [eax]
jle 0x10045282
mov dword [ebp - 0x204], 1
jmp 0x10045289
and dword [ebp - 0x204], 0
mov esi, dword [ebp - 0x18]
imul esi, dword [ebp - 0x204]
push 4
pop eax
shl eax, 0
add esi, dword [ebp + eax - 0x310]
push dword [ebp - 0x18]
lea ecx, [ebp - 0x9c]
call fcn.10010148
imul esi, dword [eax]
push 4
pop eax
shl eax, 0
cmp esi, dword [ebp + eax - 0x310]
jge 0x100452cc
mov dword [ebp - 0x294], 1
jmp 0x100452d3
and dword [ebp - 0x294], 0
push 0
lea ecx, [ebp - 0x9c]
call fcn.10010148
mov eax, 0x4ccb090a
test eax, eax
je 0x10045319
mov dword [ebp - 0x20], 1
jmp 0x100452f9
mov eax, dword [ebp - 0x20]
dec eax
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], 0
jl 0x10045317
push 1
push 1
push 0x1815
push 0x3b25
call fcn.100401a9
add esp, 0x10
jmp 0x100452f2
jmp 0x10045341
mov dword [ebp - 0x20], 1
jmp 0x10045329
mov eax, dword [ebp - 0x20]
dec eax
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], 0
jl 0x10045341
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp + eax*4 - 0x310]
mov dword [ebp - 0x390], eax
jmp 0x10045322
jmp 0x10045033
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x9c]
call fcn.1001012c
mov dword [ebp - 0x14], 0x9e57ad95
mov dword [ebp - 0x150], 0xadd7081d
mov dword [ebp - 0x1b0], 0xf82eddaa
mov dword [ebp - 0x1c0], 0xfffffffb
mov dword [ebp - 0x1c], 0
jmp 0x1004538a
mov eax, dword [ebp - 0x1c]
inc eax
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], 1
jge 0x1004539d
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0x48], 0xc204e2db
jmp 0x10045383
mov dword [ebp - 0x1c], 0
jmp 0x100453ad
mov eax, dword [ebp - 0x1c]
inc eax
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], 3
jge 0x100453c3
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0x140], 0xdcff2fd6
jmp 0x100453a6
mov dword [ebp - 0x1c], 0
jmp 0x100453d3
mov eax, dword [ebp - 0x1c]
inc eax
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], 2
jge 0x100453e9
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0x510], 3
jmp 0x100453cc
mov dword [ebp - 0x14], 0
jmp 0x100453f9
mov eax, dword [ebp - 0x14]
inc eax
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], 0
jg 0x100457ce
mov dword [ebp - 0x4c], 1
mov dword [ebp - 0x410], 6
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x48]
mov dword [ebp - 0x480], eax
cmp dword [ebp - 0x14], 0
jae 0x10045436
mov dword [ebp - 0x20c], 1
jmp 0x1004543d
and dword [ebp - 0x20c], 0
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp + eax*4 - 0x48]
cmp eax, dword [ebp - 0x20c]
je 0x10045458
mov dword [ebp - 0x128], 1
jmp 0x1004545f
and dword [ebp - 0x128], 0
mov eax, dword [ebp - 0x14]
mov ecx, dword [ebp - 0x128]
mov dword [ebp + eax*4 - 0x48], ecx
cmp dword [ebp - 0x128], 0
jne 0x10045487
mov eax, 0xf9986e3e
test eax, eax
jne 0x10045487
and dword [ebp - 0x2dc], 0
jmp 0x10045491
mov dword [ebp - 0x2dc], 1
cmp dword [ebp - 0x2dc], 1
jge 0x100454a6
mov dword [ebp - 0x214], 1
jmp 0x100454ad
and dword [ebp - 0x214], 0
mov eax, dword [ebp - 0x214]
sub eax, dword [ebp - 0x14]
cmp eax, 1
je 0x100454cc
or eax, 0xffffffff
je 0x100454cc
mov dword [ebp - 0x29c], 1
jmp 0x100454d3
and dword [ebp - 0x29c], 0
cmp dword [ebp - 0x29c], 0x1b66bafc
je 0x100454eb
mov dword [ebp - 0x21c], 1
jmp 0x100454f2
and dword [ebp - 0x21c], 0
cmp dword [ebp - 0x21c], 0xffff
je 0x1004550a
mov dword [ebp - 0x32c], 1
jmp 0x10045511
and dword [ebp - 0x32c], 0
mov eax, dword [ebp - 0x14]
cmp dword [ebp - 0x32c], eax
jg 0x10045528
mov dword [ebp - 0x224], 1
jmp 0x1004552f
and dword [ebp - 0x224], 0
mov eax, dword [ebp - 0x14]
cmp dword [ebp - 0x224], eax
jg 0x10045555
push 0x28b9
push 0x3ffb
push 1
push 1
call fcn.100402ad
add esp, 0x10
jmp 0x100457c9
mov dword [ebp - 0x3e0], 0xffffffff
push 1
lea ecx, [ebp - 0x444]
call fcn.100100aa
mov dword [ebp - 4], 9
lea eax, [ebp - 0x444]
push eax
lea eax, [ebp - 0x4a8]
push eax
call fcn.10043b6c
pop ecx
pop ecx
push 1
push 0x4f15
push 1
push 0x3f20
push 0x1faa
push 0x3f3f
push 0xee3
push 0x304f
call fcn.100403c4
add esp, 0x20
mov eax, dword [ebp - 0x3e0]
cmp dword [ebp - 0x14], eax
jge 0x100455c9
mov dword [ebp - 0x398], 1
jmp 0x100455d0
and dword [ebp - 0x398], 0
mov eax, dword [ebp - 0x4c]
mov dword [ebp - 0x4b0], eax
cmp dword [ebp - 0x410], 0xffffffff
jb 0x100455ee
mov dword [ebp - 0x3a0], 1
jmp 0x100455f5
and dword [ebp - 0x3a0], 0
mov eax, dword [ebp - 0x4c]
mov dword [ebp - 0x4bc], eax
cmp dword [ebp - 0x4c], 0xffffffff
jne 0x10045610
mov dword [ebp - 0x2a4], 1
jmp 0x10045617
and dword [ebp - 0x2a4], 0
push 0
lea ecx, [ebp - 0x444]
call fcn.10010148
mov ecx, dword [ebp - 0x2a4]
cmp ecx, dword [eax]
je 0x1004563a
mov dword [ebp - 0x2e4], 1
jmp 0x10045641
and dword [ebp - 0x2e4], 0
mov eax, dword [ebp - 0x14]
mov ecx, dword [ebp - 0x14]
mov eax, dword [ebp + eax*4 - 0x48]
add eax, dword [ebp + ecx*4 - 0x48]
mov dword [ebp - 0x22c], eax
push 4
pop eax
imul eax, eax, 0
mov ecx, dword [ebp - 0x22c]
mov dword [ebp + eax - 0x48], ecx
mov eax, dword [ebp - 0x22c]
imul eax, dword [ebp - 0x2e4]
push 4
pop ecx
imul ecx, ecx, 0
mov dword [ebp + ecx - 0x140], eax
push 0
lea ecx, [ebp - 0x444]
call fcn.10010148
cmp dword [eax], 0
je 0x100456a3
cmp dword [ebp - 0x4c], 0
je 0x100456a3
mov dword [ebp - 0x234], 1
jmp 0x100456aa
and dword [ebp - 0x234], 0
cmp dword [ebp - 0x234], 0xfffb
jae 0x100456c2
mov dword [ebp - 0x3e8], 1
jmp 0x100456c9
and dword [ebp - 0x3e8], 0
mov eax, dword [ebp - 0x4c]
mov dword [ebp - 0x4cc], eax
cmp dword [ebp - 0x4c], 0
je 0x100457ac
mov dword [ebp - 0x3a8], 0xadcf
mov dword [ebp - 0x400], 0xe266bc59
push 4
pop eax
imul eax, eax, 0
mov ecx, dword [ebp - 0x4c]
mov dword [ebp + eax - 0x140], ecx
cmp dword [ebp - 0x3a8], 1
je 0x10045715
mov dword [ebp - 0x2ac], 1
jmp 0x1004571c
and dword [ebp - 0x2ac], 0
cmp dword [ebp - 0x2ac], 0
jl 0x10045731
mov dword [ebp - 0x23c], 1
jmp 0x10045738
and dword [ebp - 0x23c], 0
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp + eax*4 - 0x48]
cmp dword [ebp - 0x23c], eax
jne 0x10045753
mov dword [ebp - 0x314], 1
jmp 0x1004575a
and dword [ebp - 0x314], 0
cmp dword [ebp - 0x314], 0x1f916744
jg 0x10045772
mov dword [ebp - 0x244], 1
jmp 0x10045779
and dword [ebp - 0x244], 0
cmp dword [ebp - 0x244], 0
je 0x10045794
mov eax, 0xe2bba6da
test eax, eax
jne 0x10045794
and dword [ebp - 0x2b4], 0
jmp 0x1004579e
mov dword [ebp - 0x2b4], 1
mov eax, dword [ebp - 0x2b4]
mov dword [ebp - 0x400], eax
jmp 0x100457ba
mov byte [ebp - 0x51], 0
lea eax, [ebp - 0x51]
push eax
call fcn.10043bb4
pop ecx
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x444]
call fcn.1001012c
jmp 0x100453f2
push 4
pop eax
shl eax, 0
cmp dword [ebp + eax - 0x140], 0
jne 0x10045867
push 4
pop eax
shl eax, 0
mov eax, dword [ebp + eax - 0x140]
cmp dword [ebp - 0x14], eax
je 0x10045800
mov dword [ebp - 0x24c], 1
jmp 0x10045807
and dword [ebp - 0x24c], 0
cmp dword [ebp - 0x24c], 0xb7b3fa87
jae 0x1004581f
mov dword [ebp - 0x17c], 1
jmp 0x10045826
and dword [ebp - 0x17c], 0
cmp dword [ebp - 0x17c], 1
jne 0x1004583b
mov dword [ebp - 0xf0], 1
jmp 0x10045842
and dword [ebp - 0xf0], 0
push 4
pop eax
imul eax, eax, 0
mov ecx, dword [ebp - 0xf0]
mov dword [ebp + eax - 0x48], ecx
cmp dword [ebp - 0xf0], 0x48ffc8ec
je 0x10045867
and dword [ebp - 0x174], 0
jmp 0x10045871
mov dword [ebp - 0x174], 1
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x140]
cmp dword [ebp - 0x174], eax
jle 0x10045892
mov dword [ebp - 0x188], 1
jmp 0x10045899
and dword [ebp - 0x188], 0
mov eax, dword [ebp - 0x188]
mov dword [ebp - 0x150], eax
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x140]
cmp dword [ebp - 0x150], eax
jg 0x100458c6
mov dword [ebp - 0x198], 1
jmp 0x100458cd
and dword [ebp - 0x198], 0
mov eax, dword [ebp - 0x14]
cmp dword [ebp - 0x198], eax
jg 0x100458e8
xor eax, eax
je 0x100458e8
mov dword [ebp - 0x1a0], 1
jmp 0x100458ef
and dword [ebp - 0x1a0], 0
mov eax, dword [ebp - 0x1b0]
cmp dword [ebp - 0x1a0], eax
jge 0x10045909
mov dword [ebp - 0xf4], 1
jmp 0x10045910
and dword [ebp - 0xf4], 0
push 4
pop eax
shl eax, 0
mov ecx, dword [ebp - 0xf4]
mov dword [ebp + eax - 0x510], ecx
mov eax, dword [ebp - 0x1c0]
add eax, dword [ebp - 0xf4]
push 4
pop ecx
imul ecx, ecx, 0
cmp eax, dword [ebp + ecx - 0x140]
jle 0x1004594a
mov dword [ebp - 0x1a8], 1
jmp 0x10045951
and dword [ebp - 0x1a8], 0
cmp dword [ebp - 0x14], 0
je 0x10045973
push 4
pop eax
shl eax, 0
cmp dword [ebp + eax - 0x140], 0
je 0x10045973
mov dword [ebp - 0x3b0], 1
jmp 0x1004597a
and dword [ebp - 0x3b0], 0
mov eax, dword [ebp - 0x14]
mov dword [ebp - 0x4d4], eax
cmp dword [ebp - 0x14], 0x53af4b50
jne 0x100459a1
mov eax, 0x48012cfb
test eax, eax
je 0x100459a1
mov dword [ebp - 0x1b8], 1
jmp 0x100459a8
and dword [ebp - 0x1b8], 0
push 4
pop eax
imul eax, eax, 0
mov ecx, dword [ebp - 0x1b0]
add ecx, dword [ebp - 0x1b8]
cmp dword [ebp + eax - 0x140], ecx
jle 0x100459cf
mov dword [ebp - 0x1c8], 1
jmp 0x100459d6
and dword [ebp - 0x1c8], 0
mov eax, dword [ebp - 0x1c0]
cmp dword [ebp - 0x1c8], eax
jl 0x100459f0
mov dword [ebp - 0x1d0], 1
jmp 0x100459f7
and dword [ebp - 0x1d0], 0
push 4
pop eax
shl eax, 1
mov ecx, dword [ebp - 0x1d0]
mov dword [ebp + eax - 0x140], ecx
xor eax, eax
jmp 0x10046851
push 1
push 0
push dword [ebp - 0x88]
lea eax, [ebp - 0xd0]
push eax
call fcn.1003ec68
add esp, 0x10
mov dword [ebp - 0x3f0], 5
mov dword [ebp - 0xb0], 0xfffffff8
push 1
lea eax, [ebp - 0xb0]
push eax
push 0x1f6c
push 0x5cc9
push 0x1aa
push 1
push 0xf6b
push 0x5c6c
lea eax, [ebp - 0x3f0]
push eax
call fcn.10040644
add esp, 0x24
mov dword [ebp - 0xb0], 0x10
jmp 0x10045a89
mov eax, dword [ebp - 0xb0]
dec eax
mov dword [ebp - 0xb0], eax
cmp dword [ebp - 0xb0], 0xfffffffb
jle 0x10045aa2
mov byte [ebp - 0x52], 0
lea eax, [ebp - 0x52]
push eax
call fcn.10043bf3
pop ecx
jmp 0x10045a7c
cmp dword [ebp - 0xd0], 0
jne 0x10045ab2
xor eax, eax
jmp 0x10046851
mov dword [ebp - 0x84], 0xfffffffd
mov dword [ebp - 0x7c], 0x244d513c
mov dword [ebp - 0x74], 0xc17c
push 4
lea ecx, [ebp - 0x438]
call fcn.100100aa
mov dword [ebp - 4], 0xa
mov dword [ebp - 0xd4], 0
jmp 0x10045af7
mov eax, dword [ebp - 0xd4]
inc eax
mov dword [ebp - 0xd4], eax
cmp dword [ebp - 0xd4], 4
jge 0x10045b19
push dword [ebp - 0xd4]
lea ecx, [ebp - 0x438]
call fcn.10010148
mov dword [eax], 0xa9dade66
jmp 0x10045aea
lea eax, [ebp - 0x7c]
push eax
lea eax, [ebp - 0x74]
push eax
lea eax, [ebp - 0x84]
push eax
call fcn.10043ca1
add esp, 0xc
mov dword [ebp - 0x7c], 3
jmp 0x10045b40
mov eax, dword [ebp - 0x7c]
dec eax
mov dword [ebp - 0x7c], eax
cmp dword [ebp - 0x7c], 0
jl 0x10045cd8
mov dword [ebp - 0xb8], 0
jmp 0x10045b63
mov eax, dword [ebp - 0xb8]
inc eax
mov dword [ebp - 0xb8], eax
cmp dword [ebp - 0xb8], 2
jge 0x10045b7f
mov eax, dword [ebp - 0xb8]
mov dword [ebp + eax*4 - 0x530], 0x8f8f6a1c
jmp 0x10045b56
mov dword [ebp - 0x74], 0
jmp 0x10045b8f
mov eax, dword [ebp - 0x74]
inc eax
mov dword [ebp - 0x74], eax
cmp dword [ebp - 0x74], 3
jg 0x10045cd3
mov dword [ebp - 0x3b8], 1
mov dword [ebp - 0x84], 3
jmp 0x10045bbc
mov eax, dword [ebp - 0x84]
dec eax
mov dword [ebp - 0x84], eax
cmp dword [ebp - 0x84], 0
jl 0x10045cce
mov dword [ebp - 0x40], 0
jmp 0x10045bd9
mov eax, dword [ebp - 0x40]
inc eax
mov dword [ebp - 0x40], eax
cmp dword [ebp - 0x40], 3
jge 0x10045bef
mov eax, dword [ebp - 0x40]
mov dword [ebp + eax*4 - 0x53c], 0x4f77722a
jmp 0x10045bd2
mov dword [ebp - 0x40], 0
jmp 0x10045bff
mov eax, dword [ebp - 0x40]
inc eax
mov dword [ebp - 0x40], eax
cmp dword [ebp - 0x40], 2
jge 0x10045c15
mov eax, dword [ebp - 0x40]
mov dword [ebp + eax*4 - 0x4b8], 0xfffffffc
jmp 0x10045bf8
push dword [ebp - 0x7c]
lea ecx, [ebp - 0x438]
call fcn.10010148
mov dword [ebp - 0x1d8], eax
push dword [ebp - 0x74]
lea ecx, [ebp - 0x438]
call fcn.10010148
mov ecx, dword [ebp - 0x1d8]
mov eax, dword [eax]
mov dword [ecx], eax
mov eax, dword [ebp - 0x1d8]
cmp dword [eax], 0
je 0x10045c87
mov dword [ebp - 0x508], 0x62a4b15
mov dword [ebp - 0x504], 0x62a4b15
mov dword [ebp - 0x500], 0x62a4b15
mov dword [ebp - 0x4fc], 0x62a4b15
push 4
pop eax
imul eax, eax, 0
mov dword [ebp + eax - 0x4b8], 1
jmp 0x10045cbe
mov byte [ebp - 0x5c], 0
push 0x64b2
push 0xb76
push 0x127b
push 0x6937
push 0xf3e
push 0x61f1
push 1
lea eax, [ebp - 0x5c]
push eax
push 0x44e7
push 1
call fcn.10042177
add esp, 0x28
cmp dword [ebp - 0x3b8], 0
je 0x10045cc9
jmp 0x10045cce
jmp 0x10045baf
jmp 0x10045b88
jmp 0x10045b39
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x438]
call fcn.1001012c
lea eax, [ebp - 0x4dc]
push eax
push 0x3cfe
push 1
push 0x4c8
push 0x2ea9
push 1
push 0x141f
push 0x4ab
lea eax, [ebp - 0x28]
push eax
push 0x5d10
push 0x607f
push 0x335a
push 0x41c8
push 0x18f8
push dword [ebp - 0x88]
push dword [ebp - 0xfc]
push 1
push 0x23d8
lea eax, [ebp - 0xd0]
push eax
call fcn.1003decb
add esp, 0x4c
push 0x3b53
lea eax, [ebp + 8]
push eax
push 1
lea eax, [ebp - 0x88]
push eax
push 1
push 0x3f3a
lea eax, [ebp - 0x28]
push eax
call fcn.10042333
add esp, 0x1c
mov dword [ebp - 0x404], 0x26e7
cmp dword [ebp - 0x404], 0x1014
jge 0x10045eec
and dword [ebp - 0xcc], 0
and dword [ebp - 0xdc], 0
lea eax, [ebp - 0xdc]
push eax
lea eax, [ebp - 0xcc]
push eax
push 0x10009168
call fcn.10057beb
add esp, 0xc
mov eax, dword [ebp - 0xcc]
lea eax, [eax + eax + 1]
xor ecx, ecx
push 4
pop edx
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.10051c89
pop ecx
mov dword [ebp - 0x3c0], eax
mov eax, dword [ebp - 0x3c0]
mov dword [ebp - 0x50], eax
and dword [ebp - 0xe4], 0
jmp 0x10045df6
mov eax, dword [ebp - 0xe4]
inc eax
mov dword [ebp - 0xe4], eax
mov eax, dword [ebp - 0xcc]
lea eax, [eax + eax + 1]
cmp dword [ebp - 0xe4], eax
jge 0x10045e23
mov eax, dword [ebp - 0xe4]
mov ecx, dword [ebp - 0x50]
lea eax, [ecx + eax*4]
push eax
push 0x10009148
call fcn.10057beb
pop ecx
pop ecx
jmp 0x10045de9
and dword [ebp - 0x24], 0
jmp 0x10045e30
mov eax, dword [ebp - 0x24]
inc eax
mov dword [ebp - 0x24], eax
mov eax, dword [ebp - 0xcc]
lea eax, [eax + eax + 1]
cmp dword [ebp - 0x24], eax
jge 0x10045ee1
mov eax, dword [ebp - 0x24]
and eax, 0x80000001
jns 0x10045e52
dec eax
or eax, 0xfffffffe
inc eax
test eax, eax
jne 0x10045e6d
mov eax, dword [ebp - 0x24]
mov ecx, dword [ebp - 0x50]
push dword [ecx + eax*4]
push 0x10009178
call fcn.10057ed1
pop ecx
pop ecx
jmp 0x10045edc
and dword [ebp - 0x1e0], 0
cmp dword [ebp - 0xdc], 0
jle 0x10045ec0
mov eax, dword [ebp - 0x24]
mov ecx, dword [ebp - 0x50]
mov eax, dword [ecx + eax*4 - 4]
inc eax
mov ecx, dword [ebp - 0x24]
mov edx, dword [ebp - 0x50]
cmp dword [edx + ecx*4], eax
jle 0x10045ec0
mov eax, dword [ebp - 0x24]
mov ecx, dword [ebp - 0x50]
mov eax, dword [ecx + eax*4 + 4]
inc eax
mov ecx, dword [ebp - 0x24]
mov edx, dword [ebp - 0x50]
cmp dword [edx + ecx*4], eax
jle 0x10045ec0
mov dword [ebp - 0x1e0], 1
mov eax, dword [ebp - 0xdc]
dec eax
mov dword [ebp - 0xdc], eax
mov eax, dword [ebp - 0x24]
mov ecx, dword [ebp - 0x50]
mov eax, dword [ecx + eax*4]
sub eax, dword [ebp - 0x1e0]
push eax
push 0x10009178
call fcn.10057ed1
pop ecx
pop ecx
jmp 0x10045e29
push 0x10009310
call fcn.10057ed1
pop ecx
push 0x1656
lea eax, [ebp - 0x290]
push eax
push 0xd4f
push 0x550a
push 0x4d74
lea eax, [ebp - 0xd0]
push eax
push 1
push 1
push 0x1b20
lea eax, [ebp - 0x88]
push eax
call fcn.1004264e
add esp, 0x28
mov dword [ebp - 0x78], 0x3948
mov dword [ebp - 0xc0], 6
mov dword [ebp - 0x250], 0xebda3fa0
push 1
lea ecx, [ebp - 0x14c]
call fcn.100100aa
mov dword [ebp - 4], 0xb
mov dword [ebp - 0x114], 3
mov dword [ebp - 0x258], 0xd6db7896
push 2
lea ecx, [ebp - 0x47c]
call fcn.100100aa
mov byte [ebp - 4], 0xc
mov dword [ebp - 0x2c], 0
jmp 0x10045f8a
mov eax, dword [ebp - 0x2c]
inc eax
mov dword [ebp - 0x2c], eax
cmp dword [ebp - 0x2c], 2
jge 0x10045f9d
mov eax, dword [ebp - 0x2c]
mov dword [ebp + eax*4 - 0x64], 0xd59e57ad
jmp 0x10045f83
push 1
lea eax, [ebp - 0x2c]
push eax
lea eax, [ebp - 0x14c]
push eax
push 0xcf4
push 1
push 0x26fe
call fcn.10042806
add esp, 0x18
mov dword [ebp - 0x2c], 0
jmp 0x10045fce
mov eax, dword [ebp - 0x2c]
inc eax
mov dword [ebp - 0x2c], eax
cmp dword [ebp - 0x2c], 2
jge 0x10045fea
push dword [ebp - 0x2c]
lea ecx, [ebp - 0x47c]
call fcn.10010148
mov dword [eax], 0xfc491750
jmp 0x10045fc7
push 4
pop eax
shl eax, 0
cmp dword [ebp + eax - 0x64], 0
jne 0x10046008
push 4
pop eax
shl eax, 0
cmp dword [ebp + eax - 0x64], 0
je 0x1004617a
mov dword [ebp - 0x68], 0xf0a290be
mov dword [ebp - 0xbc], 0
jmp 0x10046028
mov eax, dword [ebp - 0xbc]
inc eax
mov dword [ebp - 0xbc], eax
cmp dword [ebp - 0xbc], 4
jge 0x10046044
mov eax, dword [ebp - 0xbc]
mov dword [ebp + eax*4 - 0x520], 8
jmp 0x1004601b
mov byte [ebp - 0x53], 0
movzx eax, byte [ebp - 0x53]
test eax, eax
je 0x1004605d
push 0
push 0x1030
call dword [sym.imp.GDI32.dll_GetClipBox]
mov dword [ebp - 0x68], 0xfffffffe
jmp 0x1004606d
mov eax, dword [ebp - 0x68]
dec eax
mov dword [ebp - 0x68], eax
cmp dword [ebp - 0x68], 0xffffffe5
jle 0x10046175
mov dword [ebp - 0x104], 0xba028ea3
mov eax, dword [ebp - 0x104]
mov dword [ebp - 0x4e4], eax
cmp dword [ebp - 0x78], 0
jbe 0x1004609f
mov dword [ebp - 0x1f8], 1
jmp 0x100460a6
and dword [ebp - 0x1f8], 0
cmp dword [ebp - 0x104], 0
jne 0x100460c1
cmp dword [ebp - 0x104], 0
jne 0x100460c1
and dword [ebp - 0x1e8], 0
jmp 0x100460cb
mov dword [ebp - 0x1e8], 1
mov eax, 0x3411
sub eax, dword [ebp - 0x1e8]
cmp eax, dword [ebp - 0x68]
je 0x100460e7
mov dword [ebp - 0x1f0], 1
jmp 0x100460ee
and dword [ebp - 0x1f0], 0
mov eax, dword [ebp - 0x68]
cmp dword [ebp - 0x1f0], eax
jne 0x10046105
mov dword [ebp - 0x200], 1
jmp 0x1004610c
and dword [ebp - 0x200], 0
mov eax, dword [ebp - 0x1f8]
cmp eax, dword [ebp - 0x200]
jle 0x10046126
mov dword [ebp - 0x358], 1
jmp 0x1004612d
and dword [ebp - 0x358], 0
push 4
pop eax
shl eax, 1
mov eax, dword [ebp + eax - 0x520]
mov dword [ebp - 0x4ec], eax
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x64]
mov dword [ebp - 0x4f4], eax
push 4
pop eax
imul eax, eax, 3
mov eax, dword [ebp + eax - 0x520]
mov dword [ebp - 0x4c8], eax
push 4
pop eax
imul eax, eax, 0
mov dword [ebp + eax - 0x64], 0xffffffff
jmp 0x10046066
jmp 0x100462ec
mov dword [ebp - 0x70], 9
mov dword [ebp - 0x364], 0xfffffffa
mov dword [ebp - 0x8c], 0x317d239f
push 4
pop eax
shl eax, 0
cmp dword [ebp + eax - 0x64], 0xffff9322
je 0x100461af
mov eax, dword [ebp - 0x78]
neg eax
cmp eax, dword [ebp - 0x70]
jle 0x100461c4
mov eax, 0x33ba
test eax, eax
je 0x100461c4
mov dword [ebp - 0x208], 1
jmp 0x100461cb
and dword [ebp - 0x208], 0
mov eax, dword [ebp - 0x70]
cmp dword [ebp - 0x208], eax
jl 0x100461e2
mov dword [ebp - 0x35c], 1
jmp 0x100461e9
and dword [ebp - 0x35c], 0
mov eax, dword [ebp - 0x78]
mov dword [ebp - 0x4d0], eax
mov eax, dword [ebp - 0x70]
mov dword [ebp - 0x48c], eax
push 4
pop eax
imul eax, eax, 0
cmp dword [ebp + eax - 0x64], 0
je 0x1004621d
mov eax, 0xcff2fd6b
test eax, eax
je 0x1004621d
mov dword [ebp - 0x210], 1
jmp 0x10046224
and dword [ebp - 0x210], 0
cmp dword [ebp - 0x210], 0x1494
jge 0x1004623c
mov dword [ebp - 0x218], 1
jmp 0x10046243
and dword [ebp - 0x218], 0
cmp dword [ebp - 0x218], 0
jne 0x10046258
mov dword [ebp - 0x220], 1
jmp 0x1004625f
and dword [ebp - 0x220], 0
mov eax, dword [ebp - 0x70]
cmp dword [ebp - 0x220], eax
je 0x10046276
mov dword [ebp - 0x228], 1
jmp 0x1004627d
and dword [ebp - 0x228], 0
mov eax, dword [ebp - 0x70]
add eax, dword [ebp - 0x228]
push 4
pop ecx
shl ecx, 0
cmp eax, dword [ebp + ecx - 0x64]
jle 0x100462a4
mov eax, 0x2384
test eax, eax
jne 0x100462a4
and dword [ebp - 0x230], 0
jmp 0x100462ae
mov dword [ebp - 0x230], 1
mov eax, dword [ebp - 0x230]
mov dword [ebp - 0x364], eax
mov eax, dword [ebp - 0x70]
mov dword [ebp - 0x8c], eax
mov dword [ebp - 0x8c], 1
jmp 0x100462dc
mov eax, dword [ebp - 0x8c]
dec eax
mov dword [ebp - 0x8c], eax
cmp dword [ebp - 0x8c], 0
jl 0x100462ec
call fcn.10043e6f
jmp 0x100462cf
push 4
pop eax
shl eax, 0
cmp dword [ebp + eax - 0x64], 0
jne 0x10046539
push 4
pop eax
shl eax, 0
mov eax, dword [ebp + eax - 0x64]
mov dword [ebp - 0x4f8], eax
push 0
lea ecx, [ebp - 0x14c]
call fcn.10010148
push 4
pop ecx
shl ecx, 0
mov ecx, dword [ebp + ecx - 0x64]
cmp dword [eax], ecx
jge 0x10046334
mov dword [ebp - 0x238], 1
jmp 0x1004633b
and dword [ebp - 0x238], 0
mov eax, dword [ebp - 0xc0]
cmp dword [ebp - 0x238], eax
jl 0x10046355
mov dword [ebp - 0x240], 1
jmp 0x1004635c
and dword [ebp - 0x240], 0
push 4
pop eax
shl eax, 0
mov eax, dword [ebp + eax - 0x64]
cmp dword [ebp - 0x240], eax
je 0x10046375
cmp dword [ebp - 0xc0], 0
mov esi, dword [ebp - 0x78]
push 0
lea ecx, [ebp - 0x14c]
call fcn.10010148
cmp esi, dword [eax]
jl 0x10046395
mov dword [ebp - 0x248], 1
jmp 0x1004639c
and dword [ebp - 0x248], 0
mov eax, dword [ebp - 0x258]
add eax, dword [ebp - 0x248]
cmp eax, 0xa6f77a31
je 0x100463bb
mov dword [ebp - 0x10c], 1
jmp 0x100463c2
and dword [ebp - 0x10c], 0
push 1
lea ecx, [ebp - 0x47c]
call fcn.10010148
mov ecx, dword [ebp - 0x10c]
mov dword [eax], ecx
imul eax, dword [ebp - 0x10c], 0xffffffff
cmp eax, dword [ebp - 0x78]
jg 0x100463ef
mov dword [ebp - 0x260], 1
jmp 0x100463f6
and dword [ebp - 0x260], 0
mov eax, dword [ebp - 0x114]
inc eax
mov dword [ebp - 0x114], eax
mov eax, dword [ebp - 0x114]
mov dword [ebp - 0x250], eax
mov eax, dword [ebp - 0x250]
mov ecx, dword [ebp - 0x258]
add ecx, dword [ebp - 0x260]
imul eax, ecx
sub eax, dword [ebp - 0xc0]
push 4
pop ecx
imul ecx, ecx, 0
cmp eax, dword [ebp + ecx - 0x64]
jne 0x1004644b
mov eax, 0xffff
test eax, eax
je 0x1004644b
mov dword [ebp - 0x36c], 1
jmp 0x10046452
and dword [ebp - 0x36c], 0
push 4
pop eax
shl eax, 0
mov eax, dword [ebp + eax - 0x64]
mov dword [ebp - 0x494], eax
mov eax, dword [ebp - 0xc0]
cmp dword [ebp - 0x78], eax
jne 0x10046479
mov dword [ebp - 0x268], 1
jmp 0x10046480
and dword [ebp - 0x268], 0
cmp dword [ebp - 0x268], 0
jne 0x1004649b
mov eax, 0x183aa7a6
test eax, eax
jne 0x1004649b
and dword [ebp - 0x270], 0
jmp 0x100464a5
mov dword [ebp - 0x270], 1
push 0
lea ecx, [ebp - 0x14c]
call fcn.10010148
mov esi, dword [ebp - 0x270]
imul esi, dword [eax]
add esi, 9
push 0
lea ecx, [ebp - 0x14c]
call fcn.10010148
cmp esi, dword [eax]
jl 0x100464ea
push 0
lea ecx, [ebp - 0x14c]
call fcn.10010148
cmp dword [eax], 0
jne 0x100464ea
and dword [ebp - 0x278], 0
jmp 0x100464f4
mov dword [ebp - 0x278], 1
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x64]
cmp dword [ebp - 0x278], eax
jne 0x10046512
mov dword [ebp - 0x280], 1
jmp 0x10046519
and dword [ebp - 0x280], 0
push 0
lea ecx, [ebp - 0x14c]
call fcn.10010148
mov ecx, dword [ebp - 0x280]
sub ecx, dword [eax]
jne 0x10046539
and dword [ebp - 0x288], 0
jmp 0x10046543
mov dword [ebp - 0x288], 1
push 0
lea ecx, [ebp - 0x14c]
call fcn.10010148
mov ecx, dword [ebp - 0x288]
mov dword [eax], ecx
mov byte [ebp - 4], 0xb
lea ecx, [ebp - 0x47c]
call fcn.1001012c
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x14c]
call fcn.1001012c
cmp dword [ebp - 0x290], 0
je 0x100465b2
push 0x7bfb
push 0x2d08
push dword [ebp - 0x28]
push dword [ebp - 0x290]
push 0x734c
push 0x71ac
push 0
push 1
push 0x35c6
push 0x6f58
call fcn.1004264e
add esp, 0x28
push dword [ebp - 0x28]
call fcn.1003b0a1
pop ecx
test eax, eax
jne 0x100465c6
xor eax, eax
jmp 0x10046851
call fcn.10043e95
push 0x694c
push 0x7dd5
push 0x6c51
push 0x31bb
push 1
push 0x3897
push 0x5aee
push 0x20ae
push 0
push 0x1e68
push dword [ebp - 0x28]
push 0x30dd
push 0x5ca
push 1
call fcn.1003454f
add esp, 0x38
mov dword [ebp - 0xc8], 0xd2edc755
mov dword [ebp - 0x298], 0xfffffff9
mov dword [ebp - 0x15c], 0x53f0d3ec
mov dword [ebp - 0x37c], 0xfe2
mov dword [ebp - 0x384], 0x59172ddb
mov dword [ebp - 0x3c], 0
jmp 0x10046650
mov eax, dword [ebp - 0x3c]
inc eax
mov dword [ebp - 0x3c], eax
cmp dword [ebp - 0x3c], 2
jge 0x10046666
mov eax, dword [ebp - 0x3c]
mov dword [ebp + eax*4 - 0x344], 0xfffffff6
jmp 0x10046649
mov dword [ebp - 0x3c], 0
jmp 0x10046676
mov eax, dword [ebp - 0x3c]
inc eax
mov dword [ebp - 0x3c], eax
cmp dword [ebp - 0x3c], 2
jge 0x1004668c
mov eax, dword [ebp - 0x3c]
mov dword [ebp + eax*4 - 0x4c4], 0x1b44
jmp 0x1004666f
mov eax, dword [ebp - 0xc8]
mov dword [ebp - 0x4d8], eax
mov dword [ebp - 0x298], 0x505b
push 4
pop eax
shl eax, 0
mov eax, dword [ebp + eax - 0x344]
cmp eax, dword [ebp - 0x298]
jge 0x100466c3
mov dword [ebp - 0x2a0], 1
jmp 0x100466ca
and dword [ebp - 0x2a0], 0
mov eax, 0x272b
test eax, eax
je 0x100466e8
cmp dword [ebp - 0x15c], 0
je 0x100466e8
mov dword [ebp - 0x2a8], 1
jmp 0x100466ef
and dword [ebp - 0x2a8], 0
mov eax, dword [ebp - 0x2a0]
cmp eax, dword [ebp - 0x2a8]
je 0x10046709
mov dword [ebp - 0x2b0], 1
jmp 0x10046710
and dword [ebp - 0x2b0], 0
push 4
pop eax
shl eax, 0
mov eax, dword [ebp + eax - 0x344]
cmp dword [ebp - 0x2b0], eax
jl 0x10046731
mov dword [ebp - 0x2b8], 1
jmp 0x10046738
and dword [ebp - 0x2b8], 0
push 4
pop eax
shl eax, 0
mov eax, dword [ebp + eax - 0x344]
add eax, dword [ebp - 0x2b8]
push 4
pop ecx
shl ecx, 0
imul eax, dword [ebp + ecx - 0x344]
push 4
pop ecx
shl ecx, 0
cmp eax, dword [ebp + ecx - 0x4c4]
jle 0x1004677d
cmp dword [ebp - 0xc8], 0
je 0x1004677d
mov dword [ebp - 0x2c0], 1
jmp 0x10046784
and dword [ebp - 0x2c0], 0
mov eax, dword [ebp - 0xc8]
cmp dword [ebp - 0x2c0], eax
jge 0x1004679e
mov dword [ebp - 0x374], 1
jmp 0x100467a5
and dword [ebp - 0x374], 0
mov eax, dword [ebp - 0xc8]
mov dword [ebp - 0x49c], eax
cmp dword [ebp - 0x37c], 0
jae 0x100467c6
mov dword [ebp - 0x154], 1
jmp 0x100467cd
and dword [ebp - 0x154], 0
mov eax, dword [ebp - 0x384]
add eax, dword [ebp - 0x154]
mov dword [ebp - 0x15c], eax
mov eax, dword [ebp - 0x28]
mov eax, dword [eax]
cmp dword [eax + 0x28], 0
je 0x10046830
mov eax, dword [ebp - 0x28]
mov eax, dword [eax]
mov ecx, dword [ebp - 0xd0]
add ecx, dword [eax + 0x28]
mov dword [ebp - 0x164], ecx
jne 0x10046804
xor eax, eax
jmp 0x10046851
push 0
push 1
push 0xdeadbeef
call dword [ebp - 0x164]
mov dword [ebp - 0x38c], eax
cmp dword [ebp - 0x38c], 0
jne 0x10046826
xor eax, eax
jmp 0x10046851
lea eax, [ebp - 0x28]
push eax
call fcn.10043f70
pop ecx
mov eax, dword [ebp - 0x28]
cmp dword [eax + 0x10], 0
je 0x10046844
mov eax, dword [ebp - 0x28]
mov dword [ebp - 0x16c], eax
jmp 0x1004684b
and dword [ebp - 0x16c], 0
mov eax, dword [ebp - 0x16c]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop esi
mov esp, ebp
pop ebp
ret