Function at 0x10040d0b
Capabilities:
Contain obfuscated stackstrings

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x10078bf2
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x464
and dword [ebp - 0x1cc], 0
mov dword [ebp - 0x28], 0xffffffff
push 2
lea ecx, [ebp - 0x2b0]
call fcn.10016a10
and dword [ebp - 4], 0
mov dword [ebp - 0x50], 0
jmp 0x10040d58
mov eax, dword [ebp - 0x50]
inc eax
mov dword [ebp - 0x50], eax
cmp dword [ebp - 0x50], 2
jge 0x10040d74
push dword [ebp - 0x50]
lea ecx, [ebp - 0x2b0]
call fcn.10016aae
mov dword [eax], 0x61be360d
jmp 0x10040d51
mov dword [ebp - 0x28], 1
jmp 0x10040d84
mov eax, dword [ebp - 0x28]
dec eax
mov dword [ebp - 0x28], eax
cmp dword [ebp - 0x28], 0xffffffeb
jne 0x10040f0c
mov dword [ebp - 0x80], 0xf4a8b108
mov dword [ebp - 0x1bc], 0x1438
mov dword [ebp - 0x128], 0xc58f5537
mov dword [ebp - 0x190], 0
mov dword [ebp - 0x26c], 0
mov dword [ebp - 0x74], 0
jmp 0x10040dcd
mov eax, dword [ebp - 0x74]
inc eax
mov dword [ebp - 0x74], eax
cmp dword [ebp - 0x74], 2
jge 0x10040de3
mov eax, dword [ebp - 0x74]
mov dword [ebp + eax*4 - 0x3e0], 0x374f
jmp 0x10040dc6
mov dword [ebp - 0x80], 0xfffffff2
jmp 0x10040df3
mov eax, dword [ebp - 0x80]
inc eax
mov dword [ebp - 0x80], eax
cmp dword [ebp - 0x80], 0x18
jl 0x10040f07
mov dword [ebp - 0x130], 0xfff6
cmp dword [ebp - 0x28], 1
jge 0x10040e19
mov dword [ebp - 0x1d4], 1
jmp 0x10040e20
and dword [ebp - 0x1d4], 0
cmp dword [ebp - 0x130], 0
jne 0x10040e86
mov eax, dword [ebp - 0x1bc]
mov dword [ebp - 0x35c], eax
mov eax, dword [ebp - 0x28]
cmp dword [ebp - 0x1bc], eax
jle 0x10040e4c
mov dword [ebp - 0x1dc], 1
jmp 0x10040e53
and dword [ebp - 0x1dc], 0
mov eax, dword [ebp - 0x28]
cmp dword [ebp - 0x1dc], eax
jl 0x10040e6a
mov dword [ebp - 0x108], 1
jmp 0x10040e71
and dword [ebp - 0x108], 0
push 1
lea ecx, [ebp - 0x2b0]
call fcn.10016aae
mov ecx, dword [ebp - 0x108]
mov dword [eax], ecx
push 1
lea ecx, [ebp - 0x2b0]
call fcn.10016aae
mov eax, dword [eax]
mov dword [ebp - 0x128], eax
mov eax, dword [ebp - 0x128]
mov dword [ebp - 0x190], eax
mov eax, dword [ebp - 0x1d4]
sub eax, dword [ebp - 0x190]
push 4
pop ecx
imul ecx, ecx, 0
cmp eax, dword [ebp + ecx - 0x3e0]
jle 0x10040ece
mov dword [ebp - 0x1e4], 1
jmp 0x10040ed5
and dword [ebp - 0x1e4], 0
mov eax, dword [ebp - 0x130]
cmp dword [ebp - 0x1e4], eax
jge 0x10040eef
mov dword [ebp - 0x138], 1
jmp 0x10040ef6
and dword [ebp - 0x138], 0
mov eax, dword [ebp - 0x138]
mov dword [ebp - 0x26c], eax
jmp 0x10040dec
jmp 0x10040d7d
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x2b0]
call fcn.10016a92
mov byte [ebp - 0xfc], 0x10
mov byte [ebp - 0xfb], 0xe8
mov byte [ebp - 0xfa], 4
mov byte [ebp - 0xf9], 0x14
mov byte [ebp - 0xf8], 6
mov byte [ebp - 0xf7], 2
mov byte [ebp - 0xf6], 0xa
mov byte [ebp - 0xf5], 0xc
mov byte [ebp - 0xf4], 0
mov byte [ebp - 0xf3], 0xa
mov byte [ebp - 0xf2], 0x13
mov byte [ebp - 0xf1], 0x15
mov byte [ebp - 0xf0], 0x11
mov byte [ebp - 0xef], 6
mov byte [ebp - 0xee], 0x12
mov byte [ebp - 0xed], 1
mov byte [ebp - 0xec], 0xf
mov byte [ebp - 0xeb], 3
mov byte [ebp - 0xea], 0x17
mov byte [ebp - 0xe9], 8
mov byte [ebp - 0xe8], 0xc
mov byte [ebp - 0xe7], 0x15
mov byte [ebp - 0xe6], 0xd
mov byte [ebp - 0xe5], 3
mov byte [ebp - 0xe4], 0x14
mov byte [ebp - 0xe3], 0x1b
mov byte [ebp - 0xe2], 2
mov byte [ebp - 0xe1], 0x16
mov byte [ebp - 0xe0], 9
mov byte [ebp - 0xdf], 9
mov byte [ebp - 0xde], 0x19
mov byte [ebp - 0xdd], 0x10
mov byte [ebp - 0xdc], 0x15
mov byte [ebp - 0xdb], 0xc
mov byte [ebp - 0xda], 0x28
mov byte [ebp - 0xd9], 0x8c
mov byte [ebp - 0xd8], 0x9e
mov byte [ebp - 0xd7], 0xb2
mov byte [ebp - 0xd6], 0xb9
mov byte [ebp - 0xd5], 0xaf
mov byte [ebp - 0xd4], 0xe6
mov byte [ebp - 0xd3], 0x84
mov byte [ebp - 0xd2], 0xec
mov byte [ebp - 0xd1], 0xc
mov byte [ebp - 0xd0], 0xa4
mov byte [ebp - 0xcf], 0x3d
mov byte [ebp - 0xce], 0xb2
mov byte [ebp - 0xcd], 0x97
mov byte [ebp - 0xcc], 0xca
mov byte [ebp - 0xcb], 0x37
mov byte [ebp - 0xca], 0x97
mov byte [ebp - 0xc9], 0xae
mov byte [ebp - 0xc8], 0x14
mov byte [ebp - 0xc7], 0xab
mov byte [ebp - 0xc6], 0x7a
mov byte [ebp - 0xc5], 0x42
mov byte [ebp - 0xc4], 0x2f
mov byte [ebp - 0xc3], 0xaf
mov byte [ebp - 0xc2], 0xf3
mov byte [ebp - 0xc1], 0x43
mov byte [ebp - 0xc0], 0xe6
mov byte [ebp - 0xbf], 0xcd
mov byte [ebp - 0xbe], 0xd7
mov byte [ebp - 0xbd], 0xa1
mov byte [ebp - 0xbc], 0x68
mov byte [ebp - 0xbb], 0xd1
mov byte [ebp - 0xba], 0x1c
mov byte [ebp - 0xb9], 0xa9
mov byte [ebp - 0xb8], 0xf9
mov byte [ebp - 0xb7], 0x1f
mov byte [ebp - 0xb6], 0x29
mov byte [ebp - 0xb5], 0x2a
mov byte [ebp - 0xb4], 0xdd
mov byte [ebp - 0xb3], 0xa4
mov byte [ebp - 0xb2], 0xd1
mov byte [ebp - 0xb1], 7
mov byte [ebp - 0xb0], 0x1e
mov byte [ebp - 0xaf], 0x16
mov byte [ebp - 0xae], 0x1f
mov byte [ebp - 0xad], 3
mov byte [ebp - 0xac], 0x13
mov byte [ebp - 0xab], 1
mov byte [ebp - 0xaa], 6
mov byte [ebp - 0xa9], 0x18
mov byte [ebp - 0xa8], 0x1b
mov byte [ebp - 0xa7], 0xe
mov byte [ebp - 0xa6], 0x16
mov byte [ebp - 0xa5], 8
mov byte [ebp - 0xa4], 6
mov byte [ebp - 0xa3], 5
mov byte [ebp - 0xa2], 0xf
mov byte [ebp - 0xa1], 0xb
mov byte [ebp - 0xa0], 0xa
xor eax, eax
inc eax
shl eax, 0
movzx eax, byte [ebp + eax - 0xfc]
or eax, 0x99
xor ecx, ecx
inc ecx
shl ecx, 0
movzx ecx, byte [ebp + ecx - 0xfc]
and ecx, 0x99
sub eax, ecx
xor ecx, ecx
inc ecx
imul ecx, ecx, 0
movzx ecx, byte [ebp + ecx - 0xfc]
mov byte [ebp + ecx - 0x34c], al
mov dword [ebp - 0x148], 0xfffffffc
mov dword [ebp - 0x1a0], 0xfffffffd
mov dword [ebp - 0x198], 0x245f
mov dword [ebp - 0x140], 0xfd43ddca
mov dword [ebp - 0x1c8], 0xc5530c4e
mov dword [ebp - 0x238], 0
mov dword [ebp - 0x230], 0x4415
mov dword [ebp - 0x240], 1
mov dword [ebp - 0x248], 0xf65ce17c
lea eax, [ebp - 0x1a0]
push eax
push 0
lea eax, [ebp - 0x140]
push eax
lea eax, [ebp - 0x1c8]
push eax
lea eax, [ebp - 0x148]
push eax
lea eax, [ebp - 0x198]
push eax
call fcn.10040a52
add esp, 0x18
lea eax, [ebp - 0x198]
push eax
lea eax, [ebp - 0x230]
push eax
lea eax, [ebp - 0x140]
push eax
push 0x7c26
lea eax, [ebp - 0x238]
push eax
lea eax, [ebp - 0x1c8]
push eax
lea eax, [ebp - 0x240]
push eax
lea eax, [ebp - 0x248]
push eax
lea eax, [ebp - 0x148]
push eax
lea eax, [ebp - 0x1a0]
push eax
push 0
call fcn.1004435a
add esp, 0x2c
mov dword [ebp - 0x10], 2
and dword [ebp - 0x78], 0
jmp 0x100412ce
mov eax, dword [ebp - 0x10]
inc eax
inc eax
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 0x5d
jae 0x100419d1
mov dword [ebp - 0x2a0], 0xb871
mov dword [ebp - 0x228], 0x6da5
mov dword [ebp - 0x21c], 8
mov dword [ebp - 0x2a4], 1
mov dword [ebp - 0x298], 1
mov dword [ebp - 0x224], 0xfffffff9
mov dword [ebp - 0x22c], 0xfffffffe
mov dword [ebp - 0x288], 1
mov byte [ebp - 0x2c], 0
movzx eax, byte [ebp - 0x2c]
test eax, eax
je 0x1004133c
push 0
call dword [sym.imp.GDI32.dll_CreatePenIndirect]
lea eax, [ebp - 0x2a4]
push eax
lea eax, [ebp - 0x228]
push eax
lea eax, [ebp - 0x21c]
push eax
lea eax, [ebp - 0x2a0]
push eax
lea eax, [ebp - 0x224]
push eax
push 0x295e
lea eax, [ebp - 0x288]
push eax
lea eax, [ebp - 0x22c]
push eax
lea eax, [ebp - 0x298]
push eax
push 0
call fcn.10042cd2
add esp, 0x28
xor eax, eax
inc eax
imul eax, eax, 0
movzx eax, byte [ebp + eax - 0xfc]
lea eax, [eax + eax + 2]
cmp dword [ebp - 0x10], eax
jne 0x10041681
mov dword [ebp - 0x2f0], 0xfe0a8eac
mov dword [ebp - 0x2ec], 0xfe0a8eac
mov dword [ebp - 0x2e8], 0xfe0a8eac
mov dword [ebp - 0x2e4], 0xfe0a8eac
lea ecx, [ebp - 0x10d]
call fcn.10016abd
push eax
lea eax, [ebp - 0x2e0]
push eax
lea eax, [ebp - 0x2f0]
push eax
lea ecx, [ebp - 0x458]
call fcn.10016ac0
push dword [eax + 4]
push dword [eax]
lea ecx, [ebp - 0x1f4]
call fcn.10016a6c
mov dword [ebp - 4], 1
push 1
lea ecx, [ebp - 0x320]
call fcn.10016a10
mov byte [ebp - 4], 2
mov dword [ebp - 0x39c], 1
push 0x79d0
lea eax, [ebp - 0x358]
push eax
push 0x7410
lea eax, [ebp - 0x320]
push eax
push 0
call fcn.10043f23
add esp, 0x14
push 0
lea ecx, [ebp - 0x1f4]
call fcn.10016aae
and dword [eax], 0
jmp 0x10041475
push 0
lea ecx, [ebp - 0x1f4]
call fcn.10016aae
mov dword [ebp - 0x150], eax
mov eax, dword [ebp - 0x150]
mov eax, dword [eax]
dec eax
mov ecx, dword [ebp - 0x150]
mov dword [ecx], eax
push 0
lea ecx, [ebp - 0x1f4]
call fcn.10016aae
cmp dword [eax], 0xffffffff
jne 0x100414db
mov dword [ebp - 0x48], 0xfffffff7
mov dword [ebp - 0x48], 0
jmp 0x1004149e
mov eax, dword [ebp - 0x48]
inc eax
mov dword [ebp - 0x48], eax
cmp dword [ebp - 0x48], 0xc
jge 0x100414b7
mov byte [ebp - 0x2e], 0
lea eax, [ebp - 0x2e]
push eax
push 0
call fcn.10040bbc
pop ecx
pop ecx
jmp 0x10041497
push 0x7891
lea eax, [ebp - 0x48]
push eax
lea eax, [ebp - 0x1f4]
push eax
push 0x28f2
push 0
call fcn.10043bfa
add esp, 0x14
jmp 0x10041451
push 0
lea ecx, [ebp - 0x1f4]
call fcn.10016aae
cmp dword [eax], 1
jne 0x100414f9
mov dword [ebp - 0x1e0], 1
jmp 0x10041500
and dword [ebp - 0x1e0], 0
imul eax, dword [ebp - 0x1e0], 0xffffffff
cmp eax, 0x9b88
jg 0x1004151a
mov dword [ebp - 0x158], 1
jmp 0x10041521
and dword [ebp - 0x158], 0
push 0
lea ecx, [ebp - 0x320]
call fcn.10016aae
mov ecx, dword [ebp - 0x158]
cmp ecx, dword [eax]
je 0x10041544
mov dword [ebp - 0x1a8], 1
jmp 0x1004154b
and dword [ebp - 0x1a8], 0
push 3
lea ecx, [ebp - 0x1f4]
call fcn.10016aae
mov ecx, dword [ebp - 0x1a8]
mov dword [eax], ecx
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x320]
call fcn.10016a92
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x1f4]
call fcn.10016a92
mov eax, dword [ebp - 0x10]
movzx eax, byte [ebp + eax - 0xfc]
inc eax
mov dword [ebp - 0x78], eax
mov eax, dword [ebp - 0x10]
movzx eax, byte [ebp + eax - 0xfc]
mov ecx, dword [ebp - 0x10]
lea eax, [ecx + eax - 1]
mov dword [ebp - 0x10], eax
mov dword [ebp - 0x360], 0xae9714a
mov dword [ebp - 0x368], 0xa136951a
mov dword [ebp - 0x370], 1
mov dword [ebp - 0x378], 5
mov dword [ebp - 0x40], 0x7a00f47a
push 2
lea ecx, [ebp - 0x308]
call fcn.10016a10
mov dword [ebp - 4], 3
mov dword [ebp - 0x234], 0xffff
mov dword [ebp - 0x380], 0x85dc1b6e
lea eax, [ebp - 0x308]
push eax
push 0x4790
push 0
lea eax, [ebp - 0x388]
push eax
call fcn.10043e7f
add esp, 0x10
push 0
lea eax, [ebp - 0x234]
push eax
push 0x379a
call fcn.10040a10
add esp, 0xc
mov dword [ebp - 0x40], 1
jmp 0x1004163c
mov eax, dword [ebp - 0x40]
dec eax
mov dword [ebp - 0x40], eax
cmp dword [ebp - 0x40], 0
jl 0x1004166d
mov byte [ebp - 0x21], 0
movzx eax, byte [ebp - 0x21]
test eax, eax
je 0x10041656
push 0
call fcn.1004288c
pop ecx
push dword [ebp - 0x40]
lea ecx, [ebp - 0x308]
call fcn.10016aae
cmp dword [eax], 0
je 0x1004166b
jmp 0x10041635
jmp 0x10041635
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x308]
call fcn.10016a92
jmp 0x100412c6
mov dword [ebp - 0x390], 0x76b0f738
mov dword [ebp - 0x398], 0xfffffffb
mov dword [ebp - 0x3a0], 0
mov dword [ebp - 0x3ac], 0xffffffff
mov dword [ebp - 0x3b4], 0x580849f8
mov dword [ebp - 0x3bc], 0xf07b4bc6
mov dword [ebp - 0x3e8], 0xfffffffd
mov dword [ebp - 0x3f0], 0xcabfc393
mov dword [ebp - 0x3f8], 0xfffffff9
mov dword [ebp - 0x3d8], 0xfecafe8
mov dword [ebp - 0x3fc], 0xe0566a92
mov dword [ebp - 0x354], 0x752f67d5
mov dword [ebp - 0x350], 0xef6e229e
mov dword [ebp - 0x3b0], 0x7921e124
mov dword [ebp - 0x364], 0x9d089051
mov dword [ebp - 0x3e4], 0xfffffff7
mov dword [ebp - 0x36c], 0x917ab6da
mov dword [ebp - 0x3b8], 9
mov dword [ebp - 0x374], 0xc6578637
mov dword [ebp - 0x3f4], 0x270f9e3
mov dword [ebp - 0x290], 0xfff8
push 1
push 0x26c2
lea eax, [ebp - 0x290]
push eax
call fcn.10040a10
add esp, 0xc
mov byte [ebp - 0x2a], 0
movzx eax, byte [ebp - 0x2a]
test eax, eax
je 0x1004178e
push 0x6cba
push 0
push 0x7fc8
push 0x6e97
call fcn.1004352a
add esp, 0x10
mov eax, dword [ebp - 0x10]
movzx eax, byte [ebp + eax - 0xfb]
mov ecx, dword [ebp - 0x10]
sub ecx, dword [ebp - 0x78]
movzx ecx, byte [ebp + ecx - 0xfe]
movsx ecx, byte [ebp + ecx - 0x34c]
or eax, ecx
mov ecx, dword [ebp - 0x10]
movzx ecx, byte [ebp + ecx - 0xfb]
mov edx, dword [ebp - 0x10]
sub edx, dword [ebp - 0x78]
movzx edx, byte [ebp + edx - 0xfe]
movsx edx, byte [ebp + edx - 0x34c]
and ecx, edx
sub eax, ecx
mov ecx, dword [ebp - 0x10]
movzx ecx, byte [ebp + ecx - 0xfc]
mov byte [ebp + ecx - 0x34c], al
mov dword [ebp - 0x90], 0x8ecf54c3
mov dword [ebp - 0x68], 0
jmp 0x10041802
mov eax, dword [ebp - 0x68]
inc eax
mov dword [ebp - 0x68], eax
cmp dword [ebp - 0x68], 2
jge 0x10041818
mov eax, dword [ebp - 0x68]
mov dword [ebp + eax*4 - 0x450], 0xb90da115
jmp 0x100417fb
mov dword [ebp - 0x90], 1
jmp 0x10041831
mov eax, dword [ebp - 0x90]
dec eax
mov dword [ebp - 0x90], eax
cmp dword [ebp - 0x90], 0
jl 0x100419bf
mov dword [ebp - 0x20], 0x72226312
mov byte [ebp - 0x2b], 0
movzx eax, byte [ebp - 0x2b]
test eax, eax
je 0x1004186a
push 0x7e71
push 0x2aa4
push 0x6d5a
push 0
call fcn.1004327b
add esp, 0x10
mov dword [ebp - 0x20], 0
jmp 0x1004187a
mov eax, dword [ebp - 0x20]
inc eax
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], 1
jg 0x10041954
push 2
lea ecx, [ebp - 0x258]
call fcn.10016a10
mov dword [ebp - 4], 4
mov dword [ebp - 0x70], 0
jmp 0x100418a8
mov eax, dword [ebp - 0x70]
inc eax
mov dword [ebp - 0x70], eax
cmp dword [ebp - 0x70], 2
jge 0x100418c4
push dword [ebp - 0x70]
lea ecx, [ebp - 0x258]
call fcn.10016aae
mov dword [eax], 0xfffffff6
jmp 0x100418a1
push 1
lea ecx, [ebp - 0x258]
call fcn.10016aae
mov dword [eax], 1
jmp 0x100418fd
push 1
lea ecx, [ebp - 0x258]
call fcn.10016aae
mov dword [ebp - 0x160], eax
mov eax, dword [ebp - 0x160]
mov eax, dword [eax]
dec eax
mov ecx, dword [ebp - 0x160]
mov dword [ecx], eax
push 1
lea ecx, [ebp - 0x258]
call fcn.10016aae
cmp dword [eax], 0
jl 0x10041940
mov byte [ebp - 0x22], 0
movzx eax, byte [ebp - 0x22]
test eax, eax
je 0x1004193e
push 0x16f2
push 1
push 0x4c45
push 0x337
push 0x2633
push 0x4fd
call fcn.10040a52
add esp, 0x18
jmp 0x100418d9
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x258]
call fcn.10016a92
jmp 0x10041873
mov dword [ebp - 0x20], 1
jmp 0x10041964
mov eax, dword [ebp - 0x20]
dec eax
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], 0
jl 0x100419ba
mov dword [ebp - 0x88], 0x906c902d
mov dword [ebp - 0x88], 1
jmp 0x1004198d
mov eax, dword [ebp - 0x88]
dec eax
mov dword [ebp - 0x88], eax
cmp dword [ebp - 0x88], 0
jl 0x100419b8
mov byte [ebp - 0x23], 0
movzx eax, byte [ebp - 0x23]
test eax, eax
je 0x100419b6
push 0x3896
push 0x33cc
push 0
call fcn.10043944
add esp, 0xc
jmp 0x10041980
jmp 0x1004195d
jmp 0x10041824
lea eax, [ebp - 0x78]
push eax
push 0
call fcn.10042c84
pop ecx
pop ecx
jmp 0x100412c6
mov dword [ebp - 0x18], 0xe469ad59
mov dword [ebp - 0x37c], 5
mov dword [ebp - 0x114], 0x61a6b719
push 3
lea ecx, [ebp - 0x2c8]
call fcn.10016a10
mov dword [ebp - 4], 5
mov dword [ebp - 0x100], 0xe3f36a5b
mov dword [ebp - 0x38], 0
jmp 0x10041a1a
mov eax, dword [ebp - 0x38]
inc eax
mov dword [ebp - 0x38], eax
cmp dword [ebp - 0x38], 3
jge 0x10041a30
mov eax, dword [ebp - 0x38]
mov dword [ebp + eax*4 - 0x200], 0xac20
jmp 0x10041a13
lea eax, [ebp - 0x38]
push eax
push 0x279c
push 0
push 0x5c76
lea eax, [ebp - 0x2c8]
push eax
call fcn.10040bfc
add esp, 0x14
mov dword [ebp - 0x18], 0
jmp 0x10041a5f
mov eax, dword [ebp - 0x18]
inc eax
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], 3
jge 0x10041a75
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x200], 4
jmp 0x10041a58
mov dword [ebp - 0x114], 1
mov eax, dword [ebp - 0x18]
cmp dword [ebp - 0x114], eax
jg 0x10041a96
mov dword [ebp - 0x23c], 1
jmp 0x10041a9d
and dword [ebp - 0x23c], 0
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x200]
mov dword [ebp - 0x3c0], eax
push 2
lea ecx, [ebp - 0x2c8]
call fcn.10016aae
mov dword [eax], 0xfffffff6
push 4
pop eax
shl eax, 0
mov ecx, dword [ebp - 0x18]
sub ecx, 0xa
sub ecx, dword [ebp + eax - 0x200]
je 0x10041aea
push 2
lea ecx, [ebp - 0x2c8]
call fcn.10016aae
cmp dword [eax], 0
jne 0x10041b05
cmp dword [ebp - 0x114], 0
jne 0x10041b05
cmp dword [ebp - 0x100], 0
jne 0x10041b05
and dword [ebp - 0x1d0], 0
jmp 0x10041b0f
mov dword [ebp - 0x1d0], 1
push 5
pop eax
sub eax, dword [ebp - 0x1d0]
jne 0x10041b36
cmp dword [ebp - 0x18], 0
jne 0x10041b36
cmp dword [ebp - 0x18], 0
jne 0x10041b36
push 4
pop eax
test eax, eax
jne 0x10041b36
and dword [ebp - 0x168], 0
jmp 0x10041b40
mov dword [ebp - 0x168], 1
mov eax, dword [ebp - 0x18]
cmp eax, dword [ebp - 0x168]
je 0x10041b57
mov dword [ebp - 0x1b0], 1
jmp 0x10041b5e
and dword [ebp - 0x1b0], 0
push 4
pop eax
shl eax, 0
mov eax, dword [ebp + eax - 0x200]
imul eax, dword [ebp - 0x1b0]
push 4
pop ecx
shl ecx, 1
sub eax, dword [ebp + ecx - 0x200]
cmp eax, dword [ebp - 0x100]
je 0x10041b92
mov dword [ebp - 0x170], 1
jmp 0x10041b99
and dword [ebp - 0x170], 0
mov eax, dword [ebp - 0x100]
cmp dword [ebp - 0x170], eax
jge 0x10041bb3
mov dword [ebp - 0x1e8], 1
jmp 0x10041bba
and dword [ebp - 0x1e8], 0
imul eax, dword [ebp - 0x1e8], 0x985
test eax, eax
je 0x10041bd7
push 4
pop eax
shl eax, 1
cmp dword [ebp + eax - 0x200], 0
jne 0x10041be9
mov eax, 0xb5a26cde
test eax, eax
jne 0x10041be9
and dword [ebp - 0x178], 0
jmp 0x10041bf3
mov dword [ebp - 0x178], 1
mov eax, dword [ebp - 0x178]
mov dword [ebp - 0x18], eax
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x2c8]
call fcn.10016a92
xor eax, eax
inc eax
imul eax, eax, 0x1a
mov byte [ebp + eax - 0x34c], 0
mov dword [ebp - 0x3c], 1
mov dword [ebp - 0x98], 0
jmp 0x10041c39
mov eax, dword [ebp - 0x98]
inc eax
mov dword [ebp - 0x98], eax
cmp dword [ebp - 0x98], 2
jge 0x10041c55
mov eax, dword [ebp - 0x98]
mov dword [ebp + eax*4 - 0x3a8], 0xd7f8
jmp 0x10041c2c
mov dword [ebp - 0x3c], 0
jmp 0x10041c65
mov eax, dword [ebp - 0x3c]
inc eax
mov dword [ebp - 0x3c], eax
cmp dword [ebp - 0x3c], 1
jg 0x10041c98
mov byte [ebp - 0x2d], 0
push 0x247e
push 0
push 0x135b
lea eax, [ebp - 0x2d]
push eax
call fcn.10040ca6
add esp, 0x10
mov eax, dword [ebp - 0x3c]
cmp dword [ebp + eax*4 - 0x3a8], 0
je 0x10041c96
jmp 0x10041c98
jmp 0x10041c5e
lea eax, [ebp - 0x34c]
push eax
lea ecx, [ebp - 0x438]
call fcn.100238bf
mov dword [ebp - 4], 6
mov dword [ebp - 0x64], 7
mov dword [ebp - 0x5c], 0
jmp 0x10041cc8
mov eax, dword [ebp - 0x5c]
inc eax
mov dword [ebp - 0x5c], eax
cmp dword [ebp - 0x5c], 1
jge 0x10041cde
mov eax, dword [ebp - 0x5c]
mov dword [ebp + eax*4 - 0x384], 0x57fd
jmp 0x10041cc1
mov dword [ebp - 0x64], 0
jmp 0x10041cee
mov eax, dword [ebp - 0x64]
dec eax
mov dword [ebp - 0x64], eax
cmp dword [ebp - 0x64], 0
jl 0x10041d8a
mov dword [ebp - 0x6c], 0
jmp 0x10041d08
mov eax, dword [ebp - 0x6c]
inc eax
mov dword [ebp - 0x6c], eax
cmp dword [ebp - 0x6c], 3
jge 0x10041d1e
mov eax, dword [ebp - 0x6c]
mov dword [ebp + eax*4 - 0x268], 0
jmp 0x10041d01
push 4
pop eax
imul eax, eax, 0
mov dword [ebp + eax - 0x268], 0
jmp 0x10041d4c
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x268]
dec eax
push 4
pop ecx
imul ecx, ecx, 0
mov dword [ebp + ecx - 0x268], eax
push 4
pop eax
imul eax, eax, 0
cmp dword [ebp + eax - 0x268], 0
jl 0x10041d85
mov dword [ebp - 0x280], 0xa5fe
push 4
pop eax
imul eax, eax, 0
cmp dword [ebp + eax - 0x268], 0
je 0x10041d78
jmp 0x10041d85
cmp dword [ebp - 0x280], 0
je 0x10041d83
jmp 0x10041d85
jmp 0x10041d31
jmp 0x10041ce7
and dword [ebp - 0x8c], 0
jmp 0x10041da0
mov eax, dword [ebp - 0x8c]
inc eax
mov dword [ebp - 0x8c], eax
cmp dword [ebp - 0x8c], 0x1b
jae 0x10041f50
push 3
lea ecx, [ebp - 0x3cc]
call fcn.10016a10
mov byte [ebp - 4], 7
push 1
lea ecx, [ebp - 0x278]
call fcn.10016a10
mov byte [ebp - 4], 8
mov dword [ebp - 0x44], 0
jmp 0x10041ddf
mov eax, dword [ebp - 0x44]
inc eax
mov dword [ebp - 0x44], eax
cmp dword [ebp - 0x44], 3
jge 0x10041dfb
push dword [ebp - 0x44]
lea ecx, [ebp - 0x3cc]
call fcn.10016aae
mov dword [eax], 0xfffffffc
jmp 0x10041dd8
push 0
push 0x6035
lea eax, [ebp - 0x44]
push eax
push 0x2058
lea eax, [ebp - 0x278]
push eax
call fcn.100433d9
add esp, 0x14
push 0
lea ecx, [ebp - 0x278]
call fcn.10016aae
and dword [eax], 0
jmp 0x10041e50
push 0
lea ecx, [ebp - 0x278]
call fcn.10016aae
mov dword [ebp - 0x1b8], eax
mov eax, dword [ebp - 0x1b8]
mov eax, dword [eax]
inc eax
mov ecx, dword [ebp - 0x1b8]
mov dword [ecx], eax
push 0
lea ecx, [ebp - 0x278]
call fcn.10016aae
cmp dword [eax], 2
jg 0x10041f1f
mov dword [ebp - 0x54], 0xfffffff8
mov dword [ebp - 0x54], 2
jmp 0x10041e7d
mov eax, dword [ebp - 0x54]
dec eax
mov dword [ebp - 0x54], eax
cmp dword [ebp - 0x54], 0
jl 0x10041f1a
mov dword [ebp - 0x58], 0xfffffff7
mov dword [ebp - 0x58], 2
jmp 0x10041e9e
mov eax, dword [ebp - 0x58]
dec eax
mov dword [ebp - 0x58], eax
cmp dword [ebp - 0x58], 0
jl 0x10041f15
mov dword [ebp - 0x7c], 0xfffffff6
mov dword [ebp - 0x7c], 2
jmp 0x10041ebb
mov eax, dword [ebp - 0x7c]
dec eax
mov dword [ebp - 0x7c], eax
cmp dword [ebp - 0x7c], 0
jl 0x10041f13
mov dword [ebp - 0x84], 0
mov dword [ebp - 0x84], 0
jmp 0x10041ee4
mov eax, dword [ebp - 0x84]
inc eax
mov dword [ebp - 0x84], eax
cmp dword [ebp - 0x84], 2
jg 0x10041f11
mov byte [ebp - 0x29], 0
movzx eax, byte [ebp - 0x29]
test eax, eax
je 0x10041f07
push 0x54cd
push 1
call fcn.10040bbc
pop ecx
pop ecx
push 0
call fcn.100430d1
pop ecx
jmp 0x10041ed7
jmp 0x10041eb4
jmp 0x10041e97
jmp 0x10041e76
jmp 0x10041e2c
mov byte [ebp - 4], 7
lea ecx, [ebp - 0x278]
call fcn.10016a92
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x3cc]
call fcn.10016a92
mov eax, dword [ebp - 0x8c]
mov byte [ebp + eax - 0x34c], 0
jmp 0x10041d93
push 0x10007d3a
lea ecx, [ebp - 0x414]
call fcn.100238bf
mov byte [ebp - 4], 9
and dword [ebp - 0x2dc], 0
and dword [ebp - 0x2d8], 0
and dword [ebp - 0x2d4], 0
and dword [ebp - 0x2d0], 0
lea ecx, [ebp - 0x10e]
call fcn.10016abd
push eax
lea eax, [ebp - 0x2cc]
push eax
lea eax, [ebp - 0x2dc]
push eax
lea ecx, [ebp - 0x448]
call fcn.10016ac0
push dword [eax + 4]
push dword [eax]
lea ecx, [ebp - 0x2bc]
call fcn.10016a6c
mov byte [ebp - 4], 0xa
push 2
lea ecx, [ebp - 0x314]
call fcn.10016a10
mov byte [ebp - 4], 0xb
mov dword [ebp - 0x3ec], 0xa938
mov dword [ebp - 0x104], 0xfffffff6
push 1
lea ecx, [ebp - 0x2fc]
call fcn.10016a10
mov byte [ebp - 4], 0xc
mov dword [ebp - 0x1c0], 0x4d91b059
mov dword [ebp - 0x28c], 0xd3efe35f
push 0x4d6d
lea eax, [ebp - 0x34]
push eax
lea eax, [ebp - 0x314]
push eax
push 0
push 0x5690
call fcn.100432df
add esp, 0x14
mov dword [ebp - 0x34], 0
jmp 0x10042032
mov eax, dword [ebp - 0x34]
inc eax
mov dword [ebp - 0x34], eax
cmp dword [ebp - 0x34], 3
jge 0x10042048
mov eax, dword [ebp - 0x34]
mov dword [ebp + eax*4 - 0x420], 9
jmp 0x1004202b
lea eax, [ebp - 0x34]
push eax
push 0
lea eax, [ebp - 0x2fc]
push eax
call fcn.100428ae
add esp, 0xc
push 1
lea ecx, [ebp - 0x2bc]
call fcn.10016aae
mov dword [eax], 0x1a
jmp 0x10042096
push 1
lea ecx, [ebp - 0x2bc]
call fcn.10016aae
mov dword [ebp - 0x180], eax
mov eax, dword [ebp - 0x180]
mov eax, dword [eax]
dec eax
mov ecx, dword [ebp - 0x180]
mov dword [ecx], eax
push 1
lea ecx, [ebp - 0x2bc]
call fcn.10016aae
cmp dword [eax], 0xffffffe6
je 0x100422b6
mov dword [ebp - 0x134], 0
push 1
lea ecx, [ebp - 0x20c]
call fcn.10016a10
mov byte [ebp - 4], 0xd
mov dword [ebp - 0x24c], 0x8651162f
mov dword [ebp - 0x330], 0xeed08e15
mov dword [ebp - 0x32c], 0xeed08e15
mov dword [ebp - 0x328], 0xeed08e15
mov dword [ebp - 0x324], 0xeed08e15
push 0x5c1d
lea eax, [ebp - 0x20c]
push eax
push 1
lea eax, [ebp - 0x38c]
push eax
push 0x5a5a
call fcn.10040bfc
add esp, 0x14
mov eax, dword [ebp - 0x134]
mov dword [ebp - 0x244], eax
mov eax, dword [ebp - 0x104]
mov dword [ebp - 0x284], eax
mov eax, dword [ebp - 0x104]
inc eax
mov dword [ebp - 0x104], eax
mov eax, dword [ebp - 0x244]
cmp eax, dword [ebp - 0x284]
jne 0x1004215a
mov dword [ebp - 0x10c], 1
jmp 0x10042161
and dword [ebp - 0x10c], 0
push 4
pop eax
shl eax, 0
mov ecx, dword [ebp - 0x10c]
mov dword [ebp + eax - 0x420], ecx
cmp dword [ebp - 0x10c], 0x562b994b
jge 0x100421df
push 0
lea ecx, [ebp - 0x2fc]
call fcn.10016aae
push 0
lea ecx, [ebp - 0x20c]
call fcn.10016aae
cmp dword [eax], 0x95e0
jl 0x100421ae
mov dword [ebp - 0x1d8], 1
jmp 0x100421b5
and dword [ebp - 0x1d8], 0
push 0
lea ecx, [ebp - 0x20c]
call fcn.10016aae
mov ecx, dword [ebp - 0x1d8]
imul ecx, dword [eax]
add ecx, 0xc7a2
je 0x100421df
mov dword [ebp - 0x188], 1
jmp 0x100421e6
and dword [ebp - 0x188], 0
mov eax, dword [ebp - 0x188]
mov dword [ebp - 0x1c0], eax
mov eax, dword [ebp - 0x24c]
cmp dword [ebp - 0x1c0], eax
je 0x1004220c
mov dword [ebp - 0x124], 1
jmp 0x10042213
and dword [ebp - 0x124], 0
cmp dword [ebp - 0x124], 0
je 0x10042228
mov dword [ebp - 0x12c], 1
jmp 0x1004222f
and dword [ebp - 0x12c], 0
mov eax, dword [ebp - 0x12c]
sub eax, dword [ebp - 0x134]
jne 0x10042258
push 0
lea ecx, [ebp - 0x20c]
call fcn.10016aae
cmp dword [eax], 0
jne 0x10042258
and dword [ebp - 0x13c], 0
jmp 0x10042262
mov dword [ebp - 0x13c], 1
push 0
lea ecx, [ebp - 0x314]
call fcn.10016aae
and dword [eax], 0
mov eax, dword [ebp - 0x13c]
mov dword [ebp - 0x28c], eax
push 4
pop eax
imul eax, eax, 3
cmp dword [ebp + eax - 0x330], 0
je 0x100422a2
mov byte [ebp - 4], 0xc
lea ecx, [ebp - 0x20c]
call fcn.10016a92
jmp 0x10042072
mov byte [ebp - 4], 0xc
lea ecx, [ebp - 0x20c]
call fcn.10016a92
jmp 0x10042072
mov byte [ebp - 4], 0xb
lea ecx, [ebp - 0x2fc]
call fcn.10016a92
mov byte [ebp - 4], 0xa
lea ecx, [ebp - 0x314]
call fcn.10016a92
mov byte [ebp - 4], 9
lea ecx, [ebp - 0x2bc]
call fcn.10016a92
mov dword [ebp - 0x9c], 0x5c8094a
mov dword [ebp - 0x94], 0
jmp 0x10042306
mov eax, dword [ebp - 0x94]
inc eax
mov dword [ebp - 0x94], eax
cmp dword [ebp - 0x94], 2
jge 0x10042322
mov eax, dword [ebp - 0x94]
mov dword [ebp + eax*4 - 0x440], 0xf9b3
jmp 0x100422f9
mov dword [ebp - 0x9c], 0
jmp 0x1004233b
mov eax, dword [ebp - 0x9c]
inc eax
mov dword [ebp - 0x9c], eax
cmp dword [ebp - 0x9c], 1
jg 0x1004235a
push 0x1d46
push 0
push 0x3ebf
call fcn.10042a05
add esp, 0xc
jmp 0x1004232e
lea ecx, [ebp - 0x414]
call fcn.10016f1d
cmp eax, dword [ebp + 0xc]
je 0x10042785
mov dword [ebp - 0x14], 0xfffffffd
mov dword [ebp - 0x1c], 0xfff7
mov dword [ebp - 0x60], 0
jmp 0x1004238c
mov eax, dword [ebp - 0x60]
inc eax
mov dword [ebp - 0x60], eax
cmp dword [ebp - 0x60], 2
jge 0x100423a2
mov eax, dword [ebp - 0x60]
mov dword [ebp + eax*4 - 0x11c], 0xfafbf261
jmp 0x10042385
lea eax, [ebp - 0x1c]
push eax
push 1
lea eax, [ebp - 0x14]
push eax
push 0x3771
call fcn.10040ca6
add esp, 0x10
mov eax, dword [ebp - 0x14]
mov dword [ebp - 0x3d0], eax
cmp dword [ebp - 0x1c], 0
je 0x100423da
cmp dword [ebp - 0x14], 0
je 0x100423da
mov dword [ebp - 0x144], 1
jmp 0x100423e1
and dword [ebp - 0x144], 0
mov eax, dword [ebp - 0x14]
cmp dword [ebp - 0x144], eax
je 0x100423f8
mov dword [ebp - 0x14c], 1
jmp 0x100423ff
and dword [ebp - 0x14c], 0
mov eax, dword [ebp - 0x14]
cmp eax, dword [ebp - 0x14c]
jle 0x10042416
mov dword [ebp - 0x25c], 1
jmp 0x1004241d
and dword [ebp - 0x25c], 0
push 0xfffffffffffffff7
pop eax
cmp eax, 0xab3cf813
jne 0x10042433
mov dword [ebp - 0x154], 1
jmp 0x1004243a
and dword [ebp - 0x154], 0
cmp dword [ebp - 0x154], 0x3d59
jg 0x10042452
mov dword [ebp - 0x15c], 1
jmp 0x10042459
and dword [ebp - 0x15c], 0
mov eax, dword [ebp - 0x15c]
sub eax, dword [ebp - 0x14]
cmp eax, 0x9a57
jl 0x10042475
mov dword [ebp - 0x164], 1
jmp 0x1004247c
and dword [ebp - 0x164], 0
mov eax, dword [ebp - 0x14]
cmp dword [ebp - 0x164], eax
jg 0x10042496
cmp dword [ebp - 0x1c], 0
jne 0x10042496
and dword [ebp - 0x294], 0
jmp 0x100424a0
mov dword [ebp - 0x294], 1
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x394], eax
mov eax, dword [ebp - 0x14]
sub eax, dword [ebp - 0x14]
cmp eax, 0x8abf8b24
je 0x100424c2
mov dword [ebp - 0x210], 1
jmp 0x100424c9
and dword [ebp - 0x210], 0
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x11c]
mov dword [ebp - 0x3d4], eax
cmp dword [ebp - 0x14], 0
je 0x100424fe
push 4
pop eax
imul eax, eax, 0
cmp dword [ebp + eax - 0x11c], 0
je 0x100424fe
mov dword [ebp - 0x16c], 1
jmp 0x10042505
and dword [ebp - 0x16c], 0
cmp dword [ebp - 0x16c], 0xffff
jbe 0x1004257d
mov dword [ebp - 0x27c], 0x1d68c2af
mov dword [ebp - 0x1c], 0xffffffe4
jmp 0x1004252b
mov eax, dword [ebp - 0x1c]
inc eax
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], 0x18
jne 0x10042549
mov dword [ebp - 0x29c], 0xfffffffe
mov eax, dword [ebp - 0x29c]
mov dword [ebp - 0x27c], eax
jmp 0x10042524
mov byte [ebp - 0x2f], 0
movzx eax, byte [ebp - 0x2f]
test eax, eax
je 0x10042578
push 0x424f
push 0xe82
push 0x7cb0
push 0x6a2c
push 0
push 0x7616
call fcn.10043699
add esp, 0x18
jmp 0x10042718
mov dword [ebp - 0x174], 1
mov dword [ebp - 0x4c], 0xfffffff6
push 4
pop eax
imul eax, eax, 0
mov ecx, dword [ebp - 0x1c]
cmp dword [ebp + eax - 0x11c], ecx
jl 0x100425ac
mov dword [ebp - 0x1a4], 1
jmp 0x100425b3
and dword [ebp - 0x1a4], 0
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x11c]
mov dword [ebp - 0x174], eax
cmp dword [ebp - 0x174], 0
jne 0x100425db
mov dword [ebp - 0x17c], 1
jmp 0x100425e2
and dword [ebp - 0x17c], 0
mov eax, dword [ebp - 0x4c]
cmp dword [ebp - 0x17c], eax
jne 0x100425f9
mov dword [ebp - 0x184], 1
jmp 0x10042600
and dword [ebp - 0x184], 0
push 4
pop eax
shl eax, 0
mov eax, dword [ebp + eax - 0x11c]
cmp dword [ebp - 0x14], eax
jl 0x1004261e
mov dword [ebp - 0x18c], 1
jmp 0x10042625
and dword [ebp - 0x18c], 0
mov eax, dword [ebp - 0x184]
sub eax, dword [ebp - 0x18c]
jne 0x10042645
mov eax, 0x560277ed
test eax, eax
jne 0x10042645
and dword [ebp - 0x194], 0
jmp 0x1004264f
mov dword [ebp - 0x194], 1
mov eax, dword [ebp - 0x4c]
imul eax, dword [ebp - 0x194]
test eax, eax
je 0x1004266f
cmp dword [ebp - 0x4c], 0
je 0x1004266f
mov dword [ebp - 0x19c], 1
jmp 0x10042676
and dword [ebp - 0x19c], 0
mov eax, dword [ebp - 0x4c]
cmp dword [ebp - 0x19c], eax
jle 0x1004268d
mov dword [ebp - 0x1ac], 1
jmp 0x10042694
and dword [ebp - 0x1ac], 0
mov eax, dword [ebp - 0x1a4]
cmp eax, dword [ebp - 0x1ac]
jg 0x100426ae
mov dword [ebp - 0x1b4], 1
jmp 0x100426b5
and dword [ebp - 0x1b4], 0
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x11c]
cmp dword [ebp - 0x1b4], eax
jle 0x100426e3
push 4
pop eax
shl eax, 0
cmp dword [ebp + eax - 0x11c], 0
jne 0x100426e3
and dword [ebp - 0x120], 0
jmp 0x100426ed
mov dword [ebp - 0x120], 1
mov eax, dword [ebp - 0x4c]
imul eax, dword [ebp - 0x120]
cmp eax, 1
jge 0x10042708
mov dword [ebp - 0x1c4], 1
jmp 0x1004270f
and dword [ebp - 0x1c4], 0
mov eax, dword [ebp - 0x1c4]
mov dword [ebp - 0x14], eax
push 0
lea eax, [ebp - 0x214]
push eax
lea eax, [ebp - 0x438]
push eax
call fcn.10043649
add esp, 0xc
push 1
push dword [ebp - 0x214]
lea eax, [ebp - 0x470]
push eax
lea ecx, [ebp - 0x438]
call fcn.10049c78
mov dword [ebp - 0x218], eax
mov eax, dword [ebp - 0x218]
mov dword [ebp - 0x220], eax
mov byte [ebp - 4], 0xe
push dword [ebp - 0x220]
lea ecx, [ebp - 0x414]
call fcn.100238ee
mov byte [ebp - 4], 9
lea ecx, [ebp - 0x470]
call fcn.10016972
jmp 0x1004235a
lea eax, [ebp - 0x414]
push eax
mov ecx, dword [ebp + 8]
call fcn.10016919
mov eax, dword [ebp - 0x1cc]
or eax, 1
mov dword [ebp - 0x1cc], eax
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x414]
call fcn.10016972
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x438]
call fcn.10016972
mov eax, dword [ebp + 8]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret