Function at 0x1003ea6a
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 0x1006c659
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x83c
push esi
and dword [ebp - 0x18], 0
movzx eax, byte [ebp + 0x18]
test eax, eax
je 0x100422a9
mov eax, dword [ebp + 0x10]
mov dword [ebp - 0x24], eax
mov dword [ebp - 0x270], 5
mov dword [ebp - 0x134], 0x1f2e
mov dword [ebp - 0x550], 0x93c1
mov dword [ebp - 0x5a4], 0xfffffffb
mov dword [ebp - 0x104], 0
jmp 0x1003eae0
mov eax, dword [ebp - 0x104]
inc eax
mov dword [ebp - 0x104], eax
cmp dword [ebp - 0x104], 1
jge 0x1003eafc
mov eax, dword [ebp - 0x104]
mov dword [ebp + eax*4 - 0x318], 0x5ca9869e
jmp 0x1003ead3
mov eax, dword [ebp - 0x270]
mov dword [ebp - 0x4c4], eax
mov eax, dword [ebp - 0x134]
mov dword [ebp - 0x508], eax
mov eax, dword [ebp - 0x134]
inc eax
mov dword [ebp - 0x134], eax
mov eax, dword [ebp - 0x4c4]
cmp eax, dword [ebp - 0x508]
jge 0x1003eb3b
mov dword [ebp - 0x548], 1
jmp 0x1003eb42
and dword [ebp - 0x548], 0
mov eax, dword [ebp - 0x270]
mov dword [ebp - 0x654], eax
mov eax, dword [ebp - 0x550]
cmp dword [ebp - 0x134], eax
jl 0x1003eb81
push 4
pop eax
imul eax, eax, 0
cmp dword [ebp + eax - 0x318], 0
je 0x1003eb81
mov eax, 0x280643b8
test eax, eax
je 0x1003eb81
mov dword [ebp - 0x558], 1
jmp 0x1003eb88
and dword [ebp - 0x558], 0
mov eax, dword [ebp - 0x270]
mov dword [ebp - 0x418], eax
push 4
pop eax
imul eax, eax, 0
mov ecx, dword [ebp - 0x418]
mov dword [ebp + eax - 0x318], ecx
cmp dword [ebp - 0x418], 0xcd9796a0
je 0x1003ebbf
mov dword [ebp - 0x448], 1
jmp 0x1003ebc6
and dword [ebp - 0x448], 0
cmp dword [ebp - 0x448], 0x9785
jg 0x1003ebde
mov dword [ebp - 0x430], 1
jmp 0x1003ebe5
and dword [ebp - 0x430], 0
mov eax, dword [ebp - 0x430]
sub eax, 0x4cb4
js 0x1003ebfe
mov dword [ebp - 0x2b4], 1
jmp 0x1003ec05
and dword [ebp - 0x2b4], 0
mov eax, dword [ebp - 0x2b4]
inc eax
mov dword [ebp - 0x5a4], eax
mov byte [ebp - 0x61], 0
push 0
lea eax, [ebp - 0x61]
push eax
call fcn.1003e063
pop ecx
pop ecx
mov eax, dword [ebp - 0x24]
mov dword [ebp - 0x2dc], eax
mov dword [ebp - 0x54], 0x69fdf99f
mov dword [ebp - 0x2a8], 0xdab9737e
mov dword [ebp - 0x5a0], 0
mov dword [ebp - 0x54], 0xffffffe4
jmp 0x1003ec57
mov eax, dword [ebp - 0x54]
inc eax
mov dword [ebp - 0x54], eax
cmp dword [ebp - 0x54], 0x16
jge 0x1003ee7d
mov dword [ebp - 0x10c], 0xf1a0
mov dword [ebp - 0x6c], 0xf97812a3
mov eax, dword [ebp - 0x10c]
mov dword [ebp - 0x6e4], eax
mov eax, dword [ebp - 0x10c]
mov dword [ebp - 0x6c], eax
cmp dword [ebp - 0x6c], 1
je 0x1003ec99
mov dword [ebp - 0x410], 1
jmp 0x1003eca0
and dword [ebp - 0x410], 0
mov eax, dword [ebp - 0x10c]
cmp dword [ebp - 0x410], eax
jle 0x1003ecba
mov dword [ebp - 0x3e4], 1
jmp 0x1003ecc1
and dword [ebp - 0x3e4], 0
mov eax, dword [ebp - 0x10c]
cmp eax, dword [ebp - 0x3e4]
jg 0x1003ecdb
mov dword [ebp - 0x2bc], 1
jmp 0x1003ece2
and dword [ebp - 0x2bc], 0
cmp dword [ebp - 0x2bc], 0x2b96
jge 0x1003ecfa
mov dword [ebp - 0x384], 1
jmp 0x1003ed01
and dword [ebp - 0x384], 0
mov eax, dword [ebp - 0x54]
imul eax, dword [ebp - 0x54]
cmp eax, dword [ebp - 0x384]
je 0x1003ed14
xor eax, eax
jne 0x1003ed22
xor eax, eax
inc eax
jne 0x1003ed22
and dword [ebp - 0x2c4], 0
jmp 0x1003ed2c
mov dword [ebp - 0x2c4], 1
mov eax, dword [ebp - 0x54]
cmp dword [ebp - 0x2c4], eax
jge 0x1003ed43
mov dword [ebp - 0x420], 1
jmp 0x1003ed4a
and dword [ebp - 0x420], 0
mov eax, dword [ebp - 0x420]
mov dword [ebp - 0x2a8], eax
mov dword [ebp - 0x6c], 0
jmp 0x1003ed66
mov eax, dword [ebp - 0x6c]
dec eax
mov dword [ebp - 0x6c], eax
cmp dword [ebp - 0x6c], 0xfffffffd
jg 0x1003ee78
mov dword [ebp - 0x2d4], 0xc1f7b400
mov dword [ebp - 0x13c], 0
jmp 0x1003ed93
mov eax, dword [ebp - 0x13c]
inc eax
mov dword [ebp - 0x13c], eax
cmp dword [ebp - 0x13c], 3
jge 0x1003edaf
mov eax, dword [ebp - 0x13c]
mov dword [ebp + eax*4 - 0x568], 0x3c017f21
jmp 0x1003ed86
push 4
pop eax
shl eax, 1
cmp dword [ebp + eax - 0x568], 0
je 0x1003edd0
cmp dword [ebp - 0x6c], 0
je 0x1003edd0
mov dword [ebp - 0x3ec], 1
jmp 0x1003edd7
and dword [ebp - 0x3ec], 0
push 4
pop eax
shl eax, 1
cmp dword [ebp + eax - 0x568], 0
jne 0x1003ee23
push 4
pop eax
shl eax, 1
cmp dword [ebp + eax - 0x568], 0
je 0x1003ee09
mov eax, dword [ebp - 0x54]
sub eax, 8
je 0x1003ee09
mov dword [ebp - 0x2cc], 1
jmp 0x1003ee10
and dword [ebp - 0x2cc], 0
mov eax, dword [ebp - 0x2cc]
mov dword [ebp - 0x2a8], eax
cmp dword [ebp - 0x2a8], 0
push 4
pop eax
shl eax, 1
cmp dword [ebp + eax - 0x568], 0
je 0x1003ee4d
push 4
pop eax
shl eax, 1
cmp dword [ebp + eax - 0x568], 0
je 0x1003ee4d
mov dword [ebp - 0x38c], 1
jmp 0x1003ee54
and dword [ebp - 0x38c], 0
mov eax, dword [ebp - 0x38c]
mov dword [ebp - 0x2d4], eax
mov eax, dword [ebp - 0x2d4]
imul eax, dword [ebp - 0x3ec]
mov dword [ebp - 0x5a0], eax
jmp 0x1003ed5f
jmp 0x1003ec50
mov eax, dword [ebp - 0x2dc]
movzx eax, word [eax]
cmp eax, 0x5a4d
je 0x1003ee92
jmp 0x10042307
mov eax, dword [ebp - 0x2dc]
mov ecx, dword [ebp - 0x24]
add ecx, dword [eax + 0x3c]
mov dword [ebp - 0x84], ecx
mov dword [ebp - 0xb4], 1
mov dword [ebp - 0x29c], 7
push 4
lea ecx, [ebp - 0x5b0]
call fcn.10014761
and dword [ebp - 4], 0
mov dword [ebp - 0x3f4], 0xd44c039e
mov dword [ebp - 0x394], 4
mov dword [ebp - 0x2f4], 0xffffffff
mov dword [ebp - 0x55c], 0xfffffffe
mov dword [ebp - 0x538], 0x1434a938
lea eax, [ebp - 0x6a8]
push eax
push 0
lea eax, [ebp - 0x5b0]
push eax
push 0x2853
call fcn.1003e691
add esp, 0x10
mov eax, dword [ebp - 0x394]
dec eax
mov dword [ebp - 0x394], eax
cmp dword [ebp - 0x29c], 1
je 0x1003ef3a
mov dword [ebp - 0x2e4], 1
jmp 0x1003ef41
and dword [ebp - 0x2e4], 0
mov eax, dword [ebp - 0x2e4]
mov dword [ebp - 0x29c], eax
mov eax, dword [ebp - 0x2f4]
cmp dword [ebp - 0x29c], eax
jge 0x1003ef67
mov dword [ebp - 0x41c], 1
jmp 0x1003ef6e
and dword [ebp - 0x41c], 0
push 3
lea ecx, [ebp - 0x5b0]
call fcn.100147ff
mov ecx, dword [ebp - 0x41c]
mov dword [eax], ecx
mov eax, dword [ebp - 0x55c]
mov dword [ebp - 0x6ec], eax
mov eax, dword [ebp - 0xb4]
add eax, dword [ebp - 0x3f4]
cmp dword [ebp - 0xb4], eax
jg 0x1003efaf
mov dword [ebp - 0x2ec], 1
jmp 0x1003efb6
and dword [ebp - 0x2ec], 0
mov eax, dword [ebp - 0xb4]
mov ecx, dword [ebp - 0x538]
add ecx, dword [ebp - 0x2ec]
imul eax, ecx
cmp dword [ebp - 0xb4], eax
jle 0x1003efdf
mov dword [ebp - 0x39c], 1
jmp 0x1003efe6
and dword [ebp - 0x39c], 0
mov eax, dword [ebp - 0xb4]
cmp eax, dword [ebp - 0x39c]
jne 0x1003f001
push 3
lea ecx, [ebp - 0x5b0]
call fcn.100147ff
mov eax, dword [ebp - 0x2f4]
mov dword [ebp - 0x3f4], eax
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x5b0]
call fcn.100147e3
mov eax, dword [ebp - 0x84]
cmp dword [eax], 0x4550
je 0x1003f02f
jmp 0x10042307
push 3
lea ecx, [ebp - 0x63c]
call fcn.10014761
mov dword [ebp - 4], 1
mov dword [ebp - 0xac], 0xffffffff
mov dword [ebp - 0x524], 0xfffffff6
mov dword [ebp - 0x704], 2
mov dword [ebp - 0x540], 1
mov dword [ebp - 0x47c], 0xb1466ac3
or dword [ebp - 0x5e4], 0xffffffff
or dword [ebp - 0x5e0], 0xffffffff
or dword [ebp - 0x5dc], 0xffffffff
or dword [ebp - 0x5d8], 0xffffffff
lea ecx, [ebp - 0x28d]
call fcn.10008a08
push eax
lea eax, [ebp - 0x5d4]
push eax
lea eax, [ebp - 0x5e4]
push eax
lea ecx, [ebp - 0x7ac]
call fcn.1001480e
push dword [eax + 4]
push dword [eax]
lea ecx, [ebp - 0x684]
call fcn.100147bd
mov byte [ebp - 4], 2
mov dword [ebp - 0x484], 0
push 0x6a1c
push 0xc21
push 0x515e
push 0x178
push 0x4c3a
push 0x57b6
push 0x3e36
lea eax, [ebp - 0x63c]
push eax
push 0
lea eax, [ebp - 0x6d8]
push eax
push 0x6e5b
push 0x5782
push 0x2091
push 0x35eb
call fcn.1003d6f5
add esp, 0x38
mov dword [ebp - 0xac], 0
jmp 0x1003f13c
mov eax, dword [ebp - 0xac]
inc eax
mov dword [ebp - 0xac], eax
cmp dword [ebp - 0xac], 2
jg 0x1003f19a
mov dword [ebp - 0x114], 0xade2167f
mov dword [ebp - 0x114], 2
jmp 0x1003f168
mov eax, dword [ebp - 0x114]
dec eax
mov dword [ebp - 0x114], eax
cmp dword [ebp - 0x114], 0
jl 0x1003f198
mov dword [ebp - 0x500], 0xffffffff
push 0x7598
push 0
push 0x6c99
lea eax, [ebp - 0x500]
push eax
call fcn.1003dc4f
add esp, 0x10
jmp 0x1003f15b
jmp 0x1003f12f
lea eax, [ebp - 0x47c]
push eax
lea eax, [ebp - 0x63c]
push eax
lea eax, [ebp - 0x684]
push eax
push 1
lea eax, [ebp - 0xac]
push eax
lea eax, [ebp - 0x540]
push eax
push 0x2d30
lea eax, [ebp - 0x484]
push eax
push 0x2cc9
push 0x25b9
push 0x1be2
lea eax, [ebp - 0x524]
push eax
push 0x27df
call fcn.1003d253
add esp, 0x34
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x684]
call fcn.100147e3
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x63c]
call fcn.100147e3
push 8
pop eax
imul eax, eax, 0
mov ecx, dword [ebp - 0x84]
lea eax, [ecx + eax + 0x78]
mov dword [ebp - 0x38], eax
mov dword [ebp - 0x90], 5
mov dword [ebp - 0x144], 0
jmp 0x1003f242
mov eax, dword [ebp - 0x144]
inc eax
mov dword [ebp - 0x144], eax
cmp dword [ebp - 0x144], 1
jge 0x1003f25e
mov eax, dword [ebp - 0x144]
mov dword [ebp + eax*4 - 0x2fc], 1
jmp 0x1003f235
mov dword [ebp - 0x90], 0
jmp 0x1003f277
mov eax, dword [ebp - 0x90]
dec eax
mov dword [ebp - 0x90], eax
cmp dword [ebp - 0x90], 0
jl 0x1003f322
mov dword [ebp - 0x11c], 0
jmp 0x1003f29d
mov eax, dword [ebp - 0x11c]
inc eax
mov dword [ebp - 0x11c], eax
cmp dword [ebp - 0x11c], 1
jge 0x1003f2b9
mov eax, dword [ebp - 0x11c]
mov dword [ebp + eax*4 - 0x48c], 0xfffffffa
jmp 0x1003f290
mov eax, dword [ebp - 0x90]
mov eax, dword [ebp + eax*4 - 0x2fc]
mov dword [ebp - 0x3a4], eax
mov eax, dword [ebp - 0x90]
mov ecx, dword [ebp - 0x3a4]
mov dword [ebp + eax*4 - 0x2fc], ecx
cmp dword [ebp - 0x3a4], 0
jne 0x1003f30c
mov byte [ebp - 0x89], 0
push 0
push 0x5df9
push 0x5433
lea eax, [ebp - 0x89]
push eax
call fcn.1003da63
add esp, 0x10
jmp 0x1003f31d
push 4
pop eax
imul eax, eax, 0
mov dword [ebp + eax - 0x48c], 0xc8d3c891
jmp 0x1003f26a
mov byte [ebp - 0x5f], 0
lea eax, [ebp - 0x5f]
push eax
push 1
call fcn.1003d627
pop ecx
pop ecx
mov eax, dword [ebp - 0x38]
cmp dword [eax + 4], 0
jne 0x1003f341
jmp 0x10042307
and dword [ebp - 0x20], 0
mov eax, dword [ebp - 0x84]
movzx eax, word [eax + 0x14]
mov ecx, dword [ebp - 0x84]
lea eax, [ecx + eax + 0x18]
mov dword [ebp - 0x50], eax
mov dword [ebp - 0x494], 0x91a049fe
mov dword [ebp - 0x59c], 0x70cd5099
mov byte [ebp - 0x85], 0
movzx eax, byte [ebp - 0x85]
test eax, eax
je 0x1003f38a
push 1
call fcn.1003d66e
pop ecx
push 0x3006
push 0
push 0x3da1
push 0x1749
lea eax, [ebp - 0x59c]
push eax
lea eax, [ebp - 0x494]
push eax
call fcn.1003e866
add esp, 0x18
and dword [ebp - 0x27c], 0
jmp 0x1003f3d0
mov eax, dword [ebp - 0x27c]
inc eax
mov dword [ebp - 0x27c], eax
mov eax, dword [ebp - 0x50]
add eax, 0x28
mov dword [ebp - 0x50], eax
mov eax, dword [ebp - 0x84]
movzx eax, word [eax + 6]
cmp dword [ebp - 0x27c], eax
jge 0x1003f443
mov eax, dword [ebp - 0x50]
mov eax, dword [eax + 0xc]
mov dword [ebp - 0x304], eax
mov eax, dword [ebp - 0x38]
mov eax, dword [eax]
cmp eax, dword [ebp - 0x304]
jb 0x1003f43e
mov eax, dword [ebp - 0x84]
push dword [eax + 0x38]
mov eax, dword [ebp - 0x50]
push dword [eax + 8]
call fcn.1003d1ba
pop ecx
pop ecx
add eax, dword [ebp - 0x304]
mov dword [ebp - 0x52c], eax
mov eax, dword [ebp - 0x38]
mov eax, dword [eax]
cmp eax, dword [ebp - 0x52c]
jae 0x1003f43e
lea eax, [ebp - 0x50]
push eax
lea eax, [ebp - 0x20]
push eax
push 1
call fcn.1003d6a5
add esp, 0xc
jmp 0x1003f443
jmp 0x1003f3ba
mov dword [ebp - 0xe0], 0x60477862
mov dword [ebp - 0xe0], 3
jmp 0x1003f466
mov eax, dword [ebp - 0xe0]
inc eax
mov dword [ebp - 0xe0], eax
cmp dword [ebp - 0xe0], 0x1a
jl 0x1003f4ce
mov dword [ebp - 0x49c], 0x7f5ed9a9
mov dword [ebp - 0x14c], 0
jmp 0x1003f492
mov eax, dword [ebp - 0x14c]
inc eax
mov dword [ebp - 0x14c], eax
cmp dword [ebp - 0x14c], 3
jge 0x1003f4ae
mov eax, dword [ebp - 0x14c]
mov dword [ebp + eax*4 - 0x734], 0x2e08974b
jmp 0x1003f485
cmp dword [ebp - 0xe0], 0
je 0x1003f4b9
jmp 0x1003f4ce
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x734]
mov dword [ebp - 0x49c], eax
jmp 0x1003f459
mov byte [ebp - 0x59], 0
movzx eax, byte [ebp - 0x59]
test eax, eax
je 0x1003f4e8
push 0x17e2
push 0
call fcn.1003e7dc
pop ecx
pop ecx
cmp dword [ebp - 0x20], 0
jne 0x1003f4f3
jmp 0x10042307
mov dword [ebp - 0x534], 0x5132
mov dword [ebp - 0x56c], 0xc299e885
push 1
lea ecx, [ebp - 0x648]
call fcn.10014761
mov dword [ebp - 4], 3
mov dword [ebp - 0x53c], 0x2d6273d5
mov dword [ebp - 0x4ac], 0xe6337258
push 2
lea ecx, [ebp - 0x630]
call fcn.10014761
mov byte [ebp - 4], 4
mov dword [ebp - 0x57c], 0xfffffffc
mov dword [ebp - 0x4bc], 0xfffffffd
mov dword [ebp - 0x4b4], 1
mov dword [ebp - 0x598], 0
mov dword [ebp - 0x4a4], 1
mov dword [ebp - 0xc0], 0
jmp 0x1003f58b
mov eax, dword [ebp - 0xc0]
inc eax
mov dword [ebp - 0xc0], eax
cmp dword [ebp - 0xc0], 1
jge 0x1003f5ad
push dword [ebp - 0xc0]
lea ecx, [ebp - 0x648]
call fcn.100147ff
mov dword [eax], 0xfffffffd
jmp 0x1003f57e
lea eax, [ebp - 0xc0]
push eax
push 0
lea eax, [ebp - 0x630]
push eax
call fcn.1003d9fc
add esp, 0xc
lea eax, [ebp - 0x630]
push eax
lea eax, [ebp - 0x56c]
push eax
lea eax, [ebp - 0x4a4]
push eax
lea eax, [ebp - 0x534]
push eax
lea eax, [ebp - 0x4ac]
push eax
lea eax, [ebp - 0x648]
push eax
lea eax, [ebp - 0x598]
push eax
push 0xb36
push 1
push 0x7f4b
lea eax, [ebp - 0x4b4]
push eax
lea eax, [ebp - 0x53c]
push eax
lea eax, [ebp - 0x4bc]
push eax
lea eax, [ebp - 0x57c]
push eax
call fcn.1003d6f5
add esp, 0x38
mov byte [ebp - 0x63], 0
movzx eax, byte [ebp - 0x63]
test eax, eax
je 0x1003f63c
push 0
push 0
call dword [sym.imp.KERNEL32.dll_CompareFileTime]
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x630]
call fcn.100147e3
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x648]
call fcn.100147e3
mov eax, dword [ebp - 0x38]
mov ecx, dword [ebp - 0x20]
add ecx, dword [eax]
add ecx, dword [ebp - 0x24]
mov dword [ebp - 0x14], ecx
mov dword [ebp - 0x74], 0xf9c28ade
mov dword [ebp - 0x58], 0
mov dword [ebp - 0x40], 0x1160
mov dword [ebp - 0x294], 0xfffffff7
push 3
lea ecx, [ebp - 0x624]
call fcn.10014761
mov dword [ebp - 4], 5
mov dword [ebp - 0x32c], 0
mov dword [ebp - 0x544], 1
mov dword [ebp - 0x124], 0
jmp 0x1003f6c8
mov eax, dword [ebp - 0x124]
inc eax
mov dword [ebp - 0x124], eax
cmp dword [ebp - 0x124], 3
jge 0x1003f6ea
push dword [ebp - 0x124]
lea ecx, [ebp - 0x624]
call fcn.100147ff
mov dword [eax], 0x41dbc46d
jmp 0x1003f6bb
push 0x2ac5
push 0
push 0x7d4b
push 0x6155
lea eax, [ebp - 0x58]
push eax
push 0x3e9d
push 0x68ea
lea eax, [ebp - 0x74]
push eax
call fcn.1003e18e
add esp, 0x20
mov eax, dword [ebp - 0x74]
mov dword [ebp - 0x724], eax
mov eax, dword [ebp - 0x40]
mov dword [ebp - 0x6e0], eax
cmp dword [ebp - 0x58], 0
jne 0x1003f78c
mov eax, dword [ebp - 0x40]
imul eax, dword [ebp - 0x58]
sub eax, dword [ebp - 0x58]
je 0x1003f74b
cmp dword [ebp - 0x74], 0
je 0x1003f74b
mov dword [ebp - 0x424], 1
jmp 0x1003f752
and dword [ebp - 0x424], 0
mov eax, dword [ebp - 0x424]
sub eax, dword [ebp - 0x74]
imul eax, dword [ebp - 0x74]
cmp eax, dword [ebp - 0x40]
jle 0x1003f770
mov dword [ebp - 0x30c], 1
jmp 0x1003f777
and dword [ebp - 0x30c], 0
cmp dword [ebp - 0x30c], 0xd7276cc7
jae 0x1003f78c
and dword [ebp - 0x3ac], 0
jmp 0x1003f796
mov dword [ebp - 0x3ac], 1
mov eax, dword [ebp - 0x3ac]
sub eax, dword [ebp - 0x40]
cmp eax, 0xa272
jge 0x1003f7b2
mov dword [ebp - 0x314], 1
jmp 0x1003f7b9
and dword [ebp - 0x314], 0
mov eax, dword [ebp - 0x74]
cmp dword [ebp - 0x314], eax
jl 0x1003f7cd
mov eax, 0xfff7
test eax, eax
je 0x1003f7df
cmp dword [ebp - 0x58], 0
je 0x1003f7df
mov dword [ebp - 0x3fc], 1
jmp 0x1003f7e6
and dword [ebp - 0x3fc], 0
cmp dword [ebp - 0x3fc], 0xffffffff
jne 0x1003f7fb
mov dword [ebp - 0x470], 1
jmp 0x1003f802
and dword [ebp - 0x470], 0
mov eax, dword [ebp - 0x40]
mov dword [ebp - 0x70c], eax
mov eax, dword [ebp - 0x74]
mov dword [ebp - 0x6e8], eax
mov dword [ebp - 0x58], 1
mov eax, dword [ebp - 0x40]
cmp dword [ebp - 0x58], eax
je 0x1003f832
cmp dword [ebp - 0x58], 0
jne 0x1003f832
and dword [ebp - 0x31c], 0
jmp 0x1003f83c
mov dword [ebp - 0x31c], 1
mov eax, dword [ebp - 0x40]
imul eax, dword [ebp - 0x31c]
cmp eax, dword [ebp - 0x40]
jge 0x1003f857
mov dword [ebp - 0x3b4], 1
jmp 0x1003f85e
and dword [ebp - 0x3b4], 0
mov eax, dword [ebp - 0x3b4]
mov dword [ebp - 0x294], eax
mov eax, dword [ebp - 0x294]
mov dword [ebp - 0x324], eax
push 0
lea ecx, [ebp - 0x624]
call fcn.100147ff
mov ecx, dword [ebp - 0x324]
mov dword [eax], ecx
cmp dword [ebp - 0x324], 0x5e40c883
jne 0x1003f8ac
mov eax, 0x364f
test eax, eax
je 0x1003f8ac
mov dword [ebp - 0x42c], 1
jmp 0x1003f8b3
and dword [ebp - 0x42c], 0
mov eax, dword [ebp - 0x42c]
mov dword [ebp - 0x32c], eax
cmp dword [ebp - 0x32c], 0
jne 0x1003f8da
cmp dword [ebp - 0x294], 0
jne 0x1003f8da
and dword [ebp - 0x3bc], 0
jmp 0x1003f8e4
mov dword [ebp - 0x3bc], 1
mov eax, dword [ebp - 0x40]
cmp dword [ebp - 0x3bc], eax
jne 0x1003f8fb
mov dword [ebp - 0x334], 1
jmp 0x1003f902
and dword [ebp - 0x334], 0
mov eax, dword [ebp - 0x40]
imul eax, dword [ebp - 0x334]
mov dword [ebp - 0x544], eax
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x624]
call fcn.100147e3
xor ecx, ecx
call fcn.100282ee
push eax
call fcn.100544a8
pop ecx
mov dword [ebp - 0x590], 0x89fff12f
mov dword [ebp - 0x44], 0
jmp 0x1003f949
mov eax, dword [ebp - 0x44]
inc eax
mov dword [ebp - 0x44], eax
cmp dword [ebp - 0x44], 1
jge 0x1003f95c
mov eax, dword [ebp - 0x44]
mov dword [ebp + eax*4 - 0x7c], 0xfffffff7
jmp 0x1003f942
mov dword [ebp - 0x44], 0
jmp 0x1003f96c
mov eax, dword [ebp - 0x44]
inc eax
mov dword [ebp - 0x44], eax
cmp dword [ebp - 0x44], 1
jge 0x1003f982
mov eax, dword [ebp - 0x44]
mov dword [ebp + eax*4 - 0x404], 0x2e7c
jmp 0x1003f965
push 1
push 0x7e9e
call fcn.1003d9aa
pop ecx
pop ecx
push 4
pop eax
imul eax, eax, 0
cmp dword [ebp + eax - 0x7c], 0
je 0x1003fa1b
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x7c]
mov dword [ebp - 0x6f4], eax
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x7c]
push 4
pop ecx
imul ecx, ecx, 0
add eax, dword [ebp + ecx - 0x7c]
push 4
pop ecx
imul ecx, ecx, 0
cmp eax, dword [ebp + ecx - 0x404]
jne 0x1003f9dc
mov dword [ebp - 0x4cc], 1
jmp 0x1003f9e3
and dword [ebp - 0x4cc], 0
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x404]
mov dword [ebp - 0x6f0], eax
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x7c]
mov dword [ebp - 0x650], eax
mov eax, 0xb6fd43dd
test eax, eax
je 0x1003fa1b
mov dword [ebp - 0x33c], 1
jmp 0x1003fa22
and dword [ebp - 0x33c], 0
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x7c]
push 4
pop ecx
imul ecx, ecx, 0
imul eax, dword [ebp + ecx - 0x7c]
cmp eax, dword [ebp - 0x33c]
jge 0x1003fa4b
mov dword [ebp - 0x3c4], 1
jmp 0x1003fa52
and dword [ebp - 0x3c4], 0
mov eax, dword [ebp - 0x3c4]
mov dword [ebp - 0x590], eax
mov byte [ebp - 0x26c], 3
mov byte [ebp - 0x26b], 0xf6
mov byte [ebp - 0x26a], 4
mov byte [ebp - 0x269], 0xf
mov byte [ebp - 0x268], 0
mov byte [ebp - 0x267], 9
mov byte [ebp - 0x266], 6
mov byte [ebp - 0x265], 0
mov byte [ebp - 0x264], 0x5f
mov byte [ebp - 0x263], 0xb8
mov byte [ebp - 0x262], 0x24
mov byte [ebp - 0x261], 0xbb
mov byte [ebp - 0x260], 0x4b
mov byte [ebp - 0x25f], 0x3b
mov byte [ebp - 0x25e], 0x82
mov byte [ebp - 0x25d], 0xc9
mov byte [ebp - 0x25c], 0xab
mov byte [ebp - 0x25b], 0xea
mov byte [ebp - 0x25a], 0x19
mov byte [ebp - 0x259], 0x3c
mov byte [ebp - 0x258], 0x37
mov byte [ebp - 0x257], 0x8e
mov byte [ebp - 0x256], 0x1e
mov byte [ebp - 0x255], 0x98
mov byte [ebp - 0x254], 0xaf
mov byte [ebp - 0x253], 0x9b
mov byte [ebp - 0x252], 0xb7
mov byte [ebp - 0x251], 0x14
mov byte [ebp - 0x250], 0x31
mov byte [ebp - 0x24f], 0x4e
mov byte [ebp - 0x24e], 0xc8
mov byte [ebp - 0x24d], 0xf
mov byte [ebp - 0x24c], 0x49
mov byte [ebp - 0x24b], 0xa8
mov byte [ebp - 0x24a], 0xf5
mov byte [ebp - 0x249], 0xc5
mov byte [ebp - 0x248], 0x7c
mov byte [ebp - 0x247], 0x46
mov byte [ebp - 0x246], 0x4f
mov byte [ebp - 0x245], 0x36
mov byte [ebp - 0x244], 0x98
mov byte [ebp - 0x243], 0x98
mov byte [ebp - 0x242], 0x97
mov byte [ebp - 0x241], 3
mov byte [ebp - 0x240], 0xa5
mov byte [ebp - 0x23f], 0xfd
mov byte [ebp - 0x23e], 0x99
mov byte [ebp - 0x23d], 0xd4
mov byte [ebp - 0x23c], 0xca
mov byte [ebp - 0x23b], 0xd2
mov byte [ebp - 0x23a], 0xa
mov byte [ebp - 0x239], 0
mov byte [ebp - 0x238], 0xf4
mov byte [ebp - 0x237], 0x58
mov byte [ebp - 0x236], 0x54
mov byte [ebp - 0x235], 0xf1
mov byte [ebp - 0x234], 0x1d
mov byte [ebp - 0x233], 0xa5
mov byte [ebp - 0x232], 0xde
mov byte [ebp - 0x231], 0x25
mov byte [ebp - 0x230], 0x76
mov byte [ebp - 0x22f], 0xf9
mov byte [ebp - 0x22e], 0xab
mov byte [ebp - 0x22d], 0x28
mov byte [ebp - 0x22c], 0xe7
mov byte [ebp - 0x22b], 0x97
mov byte [ebp - 0x22a], 0xc9
mov byte [ebp - 0x229], 0x7c
mov byte [ebp - 0x228], 0x8e
mov byte [ebp - 0x227], 0x8d
mov byte [ebp - 0x226], 0x16
mov byte [ebp - 0x225], 0x41
mov byte [ebp - 0x224], 0x3f
mov byte [ebp - 0x223], 0x8e
mov byte [ebp - 0x222], 0xb3
mov byte [ebp - 0x221], 5
mov byte [ebp - 0x220], 0x27
mov byte [ebp - 0x21f], 0x47
mov byte [ebp - 0x21e], 0xaf
mov byte [ebp - 0x21d], 0xaa
mov byte [ebp - 0x21c], 0xa1
mov byte [ebp - 0x21b], 0x42
mov byte [ebp - 0x21a], 0x5b
mov byte [ebp - 0x219], 0x41
mov byte [ebp - 0x218], 0xd9
mov byte [ebp - 0x217], 0xcc
mov byte [ebp - 0x216], 0xa2
mov byte [ebp - 0x215], 0x34
mov byte [ebp - 0x214], 0xb6
mov byte [ebp - 0x213], 2
mov byte [ebp - 0x212], 0xd
mov byte [ebp - 0x211], 0x2a
mov byte [ebp - 0x210], 0x44
mov byte [ebp - 0x20f], 0xd4
mov byte [ebp - 0x20e], 0xa2
mov byte [ebp - 0x20d], 0x9d
mov byte [ebp - 0x20c], 0x1a
mov byte [ebp - 0x20b], 0x47
mov byte [ebp - 0x20a], 0x60
mov byte [ebp - 0x209], 0x5c
mov byte [ebp - 0x208], 0x55
mov byte [ebp - 0x207], 0xad
mov byte [ebp - 0x206], 0x78
mov byte [ebp - 0x205], 0x80
mov byte [ebp - 0x204], 9
mov byte [ebp - 0x203], 1
mov byte [ebp - 0x202], 7
mov byte [ebp - 0x201], 6
mov byte [ebp - 0x200], 2
mov byte [ebp - 0x1ff], 1
mov byte [ebp - 0x1fe], 8
mov byte [ebp - 0x1fd], 7
mov byte [ebp - 0x1fc], 5
mov byte [ebp - 0x1fb], 1
mov byte [ebp - 0x1fa], 1
mov byte [ebp - 0x1f9], 4
xor eax, eax
inc eax
shl eax, 0
movzx eax, byte [ebp + eax - 0x26c]
or eax, 0xc1
xor ecx, ecx
inc ecx
shl ecx, 0
movzx ecx, byte [ebp + ecx - 0x26c]
and ecx, 0xc1
sub eax, ecx
xor ecx, ecx
inc ecx
imul ecx, ecx, 0
movzx ecx, byte [ebp + ecx - 0x26c]
mov byte [ebp + ecx - 0x46c], al
mov dword [ebp - 0x30], 2
and dword [ebp - 0x15c], 0
jmp 0x1003fde0
mov eax, dword [ebp - 0x30]
inc eax
inc eax
mov dword [ebp - 0x30], eax
cmp dword [ebp - 0x30], 0x74
jae 0x1003fe96
xor eax, eax
inc eax
imul eax, eax, 0
movzx eax, byte [ebp + eax - 0x26c]
lea eax, [eax + eax + 2]
cmp dword [ebp - 0x30], eax
jne 0x1003fe2a
mov eax, dword [ebp - 0x30]
movzx eax, byte [ebp + eax - 0x26c]
inc eax
mov dword [ebp - 0x15c], eax
mov eax, dword [ebp - 0x30]
movzx eax, byte [ebp + eax - 0x26c]
mov ecx, dword [ebp - 0x30]
lea eax, [ecx + eax - 1]
mov dword [ebp - 0x30], eax
jmp 0x1003fdd8
mov eax, dword [ebp - 0x30]
movzx eax, byte [ebp + eax - 0x26b]
mov ecx, dword [ebp - 0x30]
sub ecx, dword [ebp - 0x15c]
movzx ecx, byte [ebp + ecx - 0x26e]
movsx ecx, byte [ebp + ecx - 0x46c]
or eax, ecx
mov ecx, dword [ebp - 0x30]
movzx ecx, byte [ebp + ecx - 0x26b]
mov edx, dword [ebp - 0x30]
sub edx, dword [ebp - 0x15c]
movzx edx, byte [ebp + edx - 0x26e]
movsx edx, byte [ebp + edx - 0x46c]
and ecx, edx
sub eax, ecx
mov ecx, dword [ebp - 0x30]
movzx ecx, byte [ebp + ecx - 0x26c]
mov byte [ebp + ecx - 0x46c], al
and dword [ebp - 0x15c], 0
jmp 0x1003fdd8
xor eax, eax
inc eax
imul eax, eax, 0xa
mov byte [ebp + eax - 0x46c], 0
mov dword [ebp - 0xd8], 0xcb457102
push 0x3c6e
push 0
push 0x7609
lea eax, [ebp - 0xd8]
push eax
call fcn.1003e00a
add esp, 0x10
mov dword [ebp - 0xd8], 0xfffffffd
jmp 0x1003fee2
mov eax, dword [ebp - 0xd8]
inc eax
mov dword [ebp - 0xd8], eax
cmp dword [ebp - 0xd8], 0x1b
jg 0x1003ff13
mov byte [ebp - 0x8b], 0
movzx eax, byte [ebp - 0x8b]
test eax, eax
je 0x1003ff11
push 0
push 0x664b
push 0x3282
call fcn.1003e36d
add esp, 0xc
jmp 0x1003fed5
lea eax, [ebp - 0x46c]
push eax
lea ecx, [ebp - 0x848]
call fcn.1001fe4f
mov dword [ebp - 0x4d4], eax
mov eax, dword [ebp - 0x4d4]
mov dword [ebp - 0x54c], eax
mov dword [ebp - 4], 6
push 0xa
xor edx, edx
mov ecx, dword [ebp - 0x54c]
call fcn.100282ae
pop ecx
mov dword [ebp - 0x530], eax
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x848]
call fcn.100146c3
mov dword [ebp - 0xe8], 0
push 4
lea ecx, [ebp - 0x694]
call fcn.10014761
mov dword [ebp - 4], 7
mov dword [ebp - 0xc8], 0
jmp 0x1003ff9a
mov eax, dword [ebp - 0xc8]
inc eax
mov dword [ebp - 0xc8], eax
cmp dword [ebp - 0xc8], 3
jge 0x1003ffb6
mov eax, dword [ebp - 0xc8]
mov dword [ebp + eax*4 - 0x740], 0xfffffffd
jmp 0x1003ff8d
push 0
lea eax, [ebp - 0xc8]
push eax
lea eax, [ebp - 0x694]
push eax
call fcn.1003e42b
add esp, 0xc
mov byte [ebp - 0x8a], 0
movzx eax, byte [ebp - 0x8a]
test eax, eax
je 0x1003fff4
push 0x1447
push 1
push 0x537a
call fcn.1003d9fc
add esp, 0xc
mov dword [ebp - 0xe8], 0
jmp 0x1004000d
mov eax, dword [ebp - 0xe8]
inc eax
mov dword [ebp - 0xe8], eax
cmp dword [ebp - 0xe8], 3
jge 0x10040029
mov eax, dword [ebp - 0xe8]
mov dword [ebp + eax*4 - 0x740], 0
jmp 0x10040000
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x694]
call fcn.100147e3
and dword [ebp - 0x12c], 0
jmp 0x1004004e
mov eax, dword [ebp - 0x12c]
inc eax
mov dword [ebp - 0x12c], eax
cmp dword [ebp - 0x12c], 0xb
jae 0x10040067
mov eax, dword [ebp - 0x12c]
mov byte [ebp + eax - 0x46c], 0
jmp 0x10040041
mov dword [ebp - 0x34], 0
mov dword [ebp - 0xa4], 1
mov dword [ebp - 0x28c], 0xe8ce6fc2
mov dword [ebp - 0x2a4], 0x2e6c0b33
mov dword [ebp - 0x4dc], 0
mov dword [ebp - 0x2b0], 0xffff
mov dword [ebp - 0x4ec], 1
mov dword [ebp - 0x4c], 0
jmp 0x100400ba
mov eax, dword [ebp - 0x4c]
inc eax
mov dword [ebp - 0x4c], eax
cmp dword [ebp - 0x4c], 2
jge 0x100400d0
mov eax, dword [ebp - 0x4c]
mov dword [ebp + eax*4 - 0x514], 0xfffffff6
jmp 0x100400b3
mov dword [ebp - 0x4c], 0
jmp 0x100400e0
mov eax, dword [ebp - 0x4c]
inc eax
mov dword [ebp - 0x4c], eax
cmp dword [ebp - 0x4c], 2
jge 0x100400f6
mov eax, dword [ebp - 0x4c]
mov dword [ebp + eax*4 - 0x5d0], 0xc484
jmp 0x100400d9
mov dword [ebp - 0xa4], 0x1449c9fb
mov eax, dword [ebp - 0xa4]
cmp dword [ebp - 0x34], eax
jne 0x10040117
mov dword [ebp - 0x284], 1
jmp 0x1004011e
and dword [ebp - 0x284], 0
mov eax, dword [ebp - 0x34]
cmp dword [ebp - 0x34], eax
jne 0x10040132
mov dword [ebp - 0x344], 1
jmp 0x10040139
and dword [ebp - 0x344], 0
mov eax, dword [ebp - 0x344]
sub eax, dword [ebp - 0x34]
cmp eax, dword [ebp - 0x34]
jl 0x10040153
mov dword [ebp - 0x428], 1
jmp 0x1004015a
and dword [ebp - 0x428], 0
mov eax, dword [ebp - 0x428]
sub eax, dword [ebp - 0x34]
mov dword [ebp - 0x28c], eax
mov eax, dword [ebp - 0x28c]
add eax, dword [ebp - 0x2a4]
jne 0x10040184
xor eax, eax
jne 0x10040184
and dword [ebp - 0x34c], 0
jmp 0x1004018e
mov dword [ebp - 0x34c], 1
cmp dword [ebp - 0x34c], 0x76fb
jle 0x100401a6
mov dword [ebp - 0x3cc], 1
jmp 0x100401ad
and dword [ebp - 0x3cc], 0
push 4
pop eax
imul eax, eax, 0
mov ecx, dword [ebp - 0x284]
mov dword [ebp + eax - 0x514], ecx
mov eax, dword [ebp - 0x284]
cmp eax, dword [ebp - 0x3cc]
jg 0x100401da
mov dword [ebp - 0x354], 1
jmp 0x100401e1
and dword [ebp - 0x354], 0
mov eax, dword [ebp - 0x34]
cmp dword [ebp - 0x354], eax
jne 0x100401f8
mov dword [ebp - 0x40c], 1
jmp 0x100401ff
and dword [ebp - 0x40c], 0
mov eax, dword [ebp - 0x2a4]
cmp dword [ebp - 0x40c], eax
jle 0x10040219
mov dword [ebp - 0x35c], 1
jmp 0x10040220
and dword [ebp - 0x35c], 0
mov eax, dword [ebp - 0x2a4]
cmp dword [ebp - 0x35c], eax
jge 0x1004023a
mov dword [ebp - 0x3d4], 1
jmp 0x10040241
and dword [ebp - 0x3d4], 0
mov eax, dword [ebp - 0x3d4]
mov dword [ebp - 0x4dc], eax
push 4
pop eax
shl eax, 0
cmp dword [ebp + eax - 0x514], 0
je 0x1004054c
mov dword [ebp - 0xb0], 0xb4b26d8f
push 2
lea ecx, [ebp - 0x5bc]
call fcn.10014761
mov dword [ebp - 4], 8
mov dword [ebp - 0x4e4], 0
mov dword [ebp - 0x48], 0
jmp 0x10040299
mov eax, dword [ebp - 0x48]
inc eax
mov dword [ebp - 0x48], eax
cmp dword [ebp - 0x48], 2
jge 0x100402b5
push dword [ebp - 0x48]
lea ecx, [ebp - 0x5bc]
call fcn.100147ff
mov dword [eax], 0x747cafdf
jmp 0x10040292
mov dword [ebp - 0x48], 0
jmp 0x100402c5
mov eax, dword [ebp - 0x48]
inc eax
mov dword [ebp - 0x48], eax
cmp dword [ebp - 0x48], 1
jge 0x100402db
mov eax, dword [ebp - 0x48]
mov dword [ebp + eax*4 - 0x554], 0x79c93506
jmp 0x100402be
lea eax, [ebp - 0xb0]
push eax
push 0
push 0x54d9
call fcn.1003dd5d
add esp, 0xc
mov dword [ebp - 0x34], 7
jmp 0x10040301
mov eax, dword [ebp - 0x34]
inc eax
mov dword [ebp - 0x34], eax
cmp dword [ebp - 0x34], 0x1b
jge 0x10040538
mov dword [ebp - 0x364], 0x8f5349dd
push 1
lea ecx, [ebp - 0x578]
call fcn.10014761
mov byte [ebp - 4], 9
mov dword [ebp - 0x37c], 0x69e5f9c
mov dword [ebp - 0xd0], 0
jmp 0x10040349
mov eax, dword [ebp - 0xd0]
inc eax
mov dword [ebp - 0xd0], eax
cmp dword [ebp - 0xd0], 1
jge 0x10040365
mov eax, dword [ebp - 0xd0]
mov dword [ebp + eax*4 - 0x414], 0xfffffffc
jmp 0x1004033c
push 1
lea eax, [ebp - 0xd0]
push eax
lea eax, [ebp - 0x578]
push eax
push 0x19c4
call fcn.1003da63
add esp, 0x10
mov eax, dword [ebp - 0x34]
mov dword [ebp - 0x364], eax
mov eax, dword [ebp - 0x364]
mov ecx, dword [ebp - 0xb0]
push 4
pop edx
imul edx, edx, 0
sub ecx, dword [ebp + edx - 0x414]
imul eax, ecx
cmp eax, 0x75aba8b0
jl 0x100403c1
push 6
pop eax
test eax, eax
je 0x100403c1
mov dword [ebp - 0x444], 1
jmp 0x100403c8
and dword [ebp - 0x444], 0
cmp dword [ebp - 0x444], 0xffff
je 0x100403e0
mov dword [ebp - 0x36c], 1
jmp 0x100403e7
and dword [ebp - 0x36c], 0
mov esi, dword [ebp - 0x36c]
add esi, 6
push 0
lea ecx, [ebp - 0x578]
call fcn.100147ff
cmp esi, dword [eax]
jle 0x1004040d
mov dword [ebp - 0x3dc], 1
jmp 0x10040414
and dword [ebp - 0x3dc], 0
mov eax, dword [ebp - 0xb0]
imul eax, dword [ebp - 0x3dc]
inc eax
je 0x10040439
cmp dword [ebp - 0xb0], 0
je 0x10040439
mov dword [ebp - 0x374], 1
jmp 0x10040440
and dword [ebp - 0x374], 0
push 1
lea ecx, [ebp - 0x5bc]
call fcn.100147ff
mov ecx, dword [ebp - 0x374]
mov dword [eax], ecx
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x414]
mov dword [ebp - 0x64c], eax
push 0
lea ecx, [ebp - 0x5bc]
call fcn.100147ff
mov eax, dword [eax]
mov dword [ebp - 0xa4], eax
mov eax, dword [ebp - 0xa4]
push 4
pop ecx
imul ecx, ecx, 0
sub eax, dword [ebp + ecx - 0x514]
sub eax, dword [ebp - 0xb0]
mov dword [ebp - 0x37c], eax
mov esi, dword [ebp - 0x37c]
push 0
lea ecx, [ebp - 0x578]
call fcn.100147ff
cmp esi, dword [eax]
jl 0x100404bf
mov dword [ebp - 0x58c], 1
jmp 0x100404c6
and dword [ebp - 0x58c], 0
mov eax, dword [ebp - 0x2b0]
mov dword [ebp - 0x65c], eax
mov eax, dword [ebp - 0x4e4]
mov dword [ebp - 0x664], eax
push 0
lea ecx, [ebp - 0x578]
call fcn.100147ff
mov ecx, dword [ebp - 0x2b0]
cmp dword [eax], ecx
jge 0x10040507
mov eax, 0xd226
test eax, eax
jne 0x10040507
and dword [ebp - 0x2b8], 0
jmp 0x10040511
mov dword [ebp - 0x2b8], 1
push 4
pop eax
imul eax, eax, 0
mov ecx, dword [ebp - 0x2b8]
mov dword [ebp + eax - 0x554], ecx
mov byte [ebp - 4], 8
lea ecx, [ebp - 0x578]
call fcn.100147e3
jmp 0x100402fa
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x5bc]
call fcn.100147e3
jmp 0x100406f7
push 1
lea ecx, [ebp - 0x460]
call fcn.10014761
mov dword [ebp - 4], 0xa
lea eax, [ebp - 0x460]
push eax
lea eax, [ebp - 0x66c]
push eax
push 0x676c
push 0
push 0x4593
call fcn.1003e101
add esp, 0x14
mov byte [ebp - 0x65], 0
movzx eax, byte [ebp - 0x65]
test eax, eax
je 0x10040596
push 1
call fcn.1003dae4
pop ecx
mov eax, dword [ebp - 0x34]
cmp dword [ebp - 0x4ec], eax
je 0x100405ad
mov dword [ebp - 0x2c8], 1
jmp 0x100405b4
and dword [ebp - 0x2c8], 0
push 0
lea ecx, [ebp - 0x460]
call fcn.100147ff
cmp dword [eax], 0
je 0x100405db
mov eax, 0x72f8
test eax, eax
je 0x100405db
mov dword [ebp - 0x2c0], 1
jmp 0x100405e2
and dword [ebp - 0x2c0], 0
cmp dword [ebp - 0x2c0], 0x15fa727f
je 0x100405fa
mov dword [ebp - 0x594], 1
jmp 0x10040601
and dword [ebp - 0x594], 0
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x5d0]
mov dword [ebp - 0x674], eax
mov eax, dword [ebp - 0x28c]
mov dword [ebp - 0x708], eax
push 0
lea ecx, [ebp - 0x460]
call fcn.100147ff
mov esi, eax
push 0
lea ecx, [ebp - 0x460]
call fcn.100147ff
mov ecx, dword [esi]
cmp ecx, dword [eax]
jle 0x1004064e
mov dword [ebp - 0x4f4], 1
jmp 0x10040655
and dword [ebp - 0x4f4], 0
push 0
lea ecx, [ebp - 0x460]
call fcn.100147ff
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x5d0]
cmp dword [ebp - 0x2c8], eax
jle 0x10040683
mov dword [ebp - 0x2d0], 1
jmp 0x1004068a
and dword [ebp - 0x2d0], 0
mov eax, dword [ebp - 0xa4]
cmp eax, dword [ebp - 0x2d0]
jle 0x100406a4
mov dword [ebp - 0x2d8], 1
jmp 0x100406ab
and dword [ebp - 0x2d8], 0
cmp dword [ebp - 0x2d8], 0xae23
je 0x100406c3
mov dword [ebp - 0x2e0], 1
jmp 0x100406ca
and dword [ebp - 0x2e0], 0
push 0
lea ecx, [ebp - 0x460]
call fcn.100147ff
mov ecx, dword [ebp - 0x2e0]
imul ecx, dword [eax]
neg ecx
mov dword [ebp - 0xa4], ecx
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x460]
call fcn.100147e3
mov dword [ebp - 0xf8], 0x8cff0ea7
mov dword [ebp - 0xf8], 0x12
jmp 0x1004071a
mov eax, dword [ebp - 0xf8]
inc eax
mov dword [ebp - 0xf8], eax
cmp dword [ebp - 0xf8], 0x1b
jge 0x1004077a
mov byte [ebp - 0x88], 0
movzx eax, byte [ebp - 0x88]
test eax, eax
je 0x10040749
push 0x4fa6
push 1
push 0xed6
call fcn.1003db1a
add esp, 0xc
mov byte [ebp - 0x6d], 0
movzx eax, byte [ebp - 0x6d]
test eax, eax
je 0x10040778
push 0
push 0x24dd
push 0x578a
push 0x2420
push 0x6724
push 0x4f9d
call fcn.1003e912
add esp, 0x18
jmp 0x1004070d
mov byte [ebp - 0x1f8], 3
mov byte [ebp - 0x1f7], 0x9d
mov byte [ebp - 0x1f6], 5
mov byte [ebp - 0x1f5], 3
mov byte [ebp - 0x1f4], 0
mov byte [ebp - 0x1f3], 0
mov byte [ebp - 0x1f2], 1
mov byte [ebp - 0x1f1], 7
mov byte [ebp - 0x1f0], 0x4c
mov byte [ebp - 0x1ef], 0x38
mov byte [ebp - 0x1ee], 0x1b
mov byte [ebp - 0x1ed], 0xcd
mov byte [ebp - 0x1ec], 0x6c
mov byte [ebp - 0x1eb], 0xe3
mov byte [ebp - 0x1ea], 0xee
mov byte [ebp - 0x1e9], 0x72
mov byte [ebp - 0x1e8], 0x47
mov byte [ebp - 0x1e7], 0x7b
mov byte [ebp - 0x1e6], 0x19
mov byte [ebp - 0x1e5], 0xe0
mov byte [ebp - 0x1e4], 0x72
mov byte [ebp - 0x1e3], 0xdd
mov byte [ebp - 0x1e2], 0xdd
mov byte [ebp - 0x1e1], 0xf0
mov byte [ebp - 0x1e0], 0xb1
mov byte [ebp - 0x1df], 0x9f
mov byte [ebp - 0x1de], 0xad
mov byte [ebp - 0x1dd], 9
mov byte [ebp - 0x1dc], 0xf9
mov byte [ebp - 0x1db], 0xb0
mov byte [ebp - 0x1da], 0xc
mov byte [ebp - 0x1d9], 0xeb
mov byte [ebp - 0x1d8], 0x4c
mov byte [ebp - 0x1d7], 0xde
mov byte [ebp - 0x1d6], 0x4a
mov byte [ebp - 0x1d5], 0x29
mov byte [ebp - 0x1d4], 0xc4
mov byte [ebp - 0x1d3], 0xc1
mov byte [ebp - 0x1d2], 0x29
mov byte [ebp - 0x1d1], 0x2f
mov byte [ebp - 0x1d0], 0xa6
mov byte [ebp - 0x1cf], 0xa0
mov byte [ebp - 0x1ce], 0xdf
mov byte [ebp - 0x1cd], 0x65
mov byte [ebp - 0x1cc], 0xe1
mov byte [ebp - 0x1cb], 0xee
mov byte [ebp - 0x1ca], 0x8b
mov byte [ebp - 0x1c9], 0x5b
mov byte [ebp - 0x1c8], 0xe1
mov byte [ebp - 0x1c7], 0x70
mov byte [ebp - 0x1c6], 0x85
mov byte [ebp - 0x1c5], 0x54
mov byte [ebp - 0x1c4], 0x25
mov byte [ebp - 0x1c3], 0xe
mov byte [ebp - 0x1c2], 0xb7
mov byte [ebp - 0x1c1], 0xdc
mov byte [ebp - 0x1c0], 0x56
mov byte [ebp - 0x1bf], 0x88
mov byte [ebp - 0x1be], 0xda
mov byte [ebp - 0x1bd], 0xad
mov byte [ebp - 0x1bc], 0x7d
mov byte [ebp - 0x1bb], 0x78
mov byte [ebp - 0x1ba], 0x34
mov byte [ebp - 0x1b9], 0x69
mov byte [ebp - 0x1b8], 7
mov byte [ebp - 0x1b7], 0xe0
mov byte [ebp - 0x1b6], 0xcc
mov byte [ebp - 0x1b5], 0x9e
mov byte [ebp - 0x1b4], 0x93
mov byte [ebp - 0x1b3], 0xaa
mov byte [ebp - 0x1b2], 0x2f
mov byte [ebp - 0x1b1], 0x12
mov byte [ebp - 0x1b0], 0x73
mov byte [ebp - 0x1af], 0xdd
mov byte [ebp - 0x1ae], 0x1e
mov byte [ebp - 0x1ad], 0x22
mov byte [ebp - 0x1ac], 0xb8
mov byte [ebp - 0x1ab], 0x72
mov byte [ebp - 0x1aa], 0xec
mov byte [ebp - 0x1a9], 0xea
mov byte [ebp - 0x1a8], 0x2a
mov byte [ebp - 0x1a7], 0x80
mov byte [ebp - 0x1a6], 0xc3
mov byte [ebp - 0x1a5], 0xe7
mov byte [ebp - 0x1a4], 0xa8
mov byte [ebp - 0x1a3], 6
mov byte [ebp - 0x1a2], 0xf
mov byte [ebp - 0x1a1], 4
mov byte [ebp - 0x1a0], 0xd
mov byte [ebp - 0x19f], 8
mov byte [ebp - 0x19e], 4
mov byte [ebp - 0x19d], 9
mov byte [ebp - 0x19c], 0
mov byte [ebp - 0x19b], 2
mov byte [ebp - 0x19a], 7
mov byte [ebp - 0x199], 7
mov byte [ebp - 0x198], 1
xor eax, eax
inc eax
shl eax, 0
movzx eax, byte [ebp + eax - 0x1f8]
or eax, 0xaf
xor ecx, ecx
inc ecx
shl ecx, 0
movzx ecx, byte [ebp + ecx - 0x1f8]
and ecx, 0xaf
sub eax, ecx
xor ecx, ecx
inc ecx
imul ecx, ecx, 0
movzx ecx, byte [ebp + ecx - 0x1f8]
mov byte [ebp + ecx - 0x454], al
mov dword [ebp - 0x1c], 2
and dword [ebp - 0xbc], 0
jmp 0x10040a77
mov eax, dword [ebp - 0x1c]
inc eax
inc eax
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], 0x61
jae 0x10040b5e
xor eax, eax
inc eax
imul eax, eax, 0
movzx eax, byte [ebp + eax - 0x1f8]
lea eax, [eax + eax + 2]
cmp dword [ebp - 0x1c], eax
jne 0x10040ac1
mov eax, dword [ebp - 0x1c]
movzx eax, byte [ebp + eax - 0x1f8]
inc eax
mov dword [ebp - 0xbc], eax
mov eax, dword [ebp - 0x1c]
movzx eax, byte [ebp + eax - 0x1f8]
mov ecx, dword [ebp - 0x1c]
lea eax, [ecx + eax - 1]
mov dword [ebp - 0x1c], eax
jmp 0x10040a6f
mov eax, dword [ebp - 0x1c]
movzx eax, byte [ebp + eax - 0x1f7]
mov ecx, dword [ebp - 0x1c]
sub ecx, dword [ebp - 0xbc]
movzx ecx, byte [ebp + ecx - 0x1fa]
movsx ecx, byte [ebp + ecx - 0x454]
add eax, ecx
mov ecx, dword [ebp - 0x1c]
movzx ecx, byte [ebp + ecx - 0x1f7]
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0xbc]
movzx edx, byte [ebp + edx - 0x1fa]
movsx edx, byte [ebp + edx - 0x454]
and ecx, edx
sub eax, ecx
mov ecx, dword [ebp - 0x1c]
movzx ecx, byte [ebp + ecx - 0x1f7]
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0xbc]
movzx edx, byte [ebp + edx - 0x1fa]
movsx edx, byte [ebp + edx - 0x454]
and ecx, edx
sub eax, ecx
mov ecx, dword [ebp - 0x1c]
movzx ecx, byte [ebp + ecx - 0x1f8]
mov byte [ebp + ecx - 0x454], al
lea eax, [ebp - 0xbc]
push eax
push 1
call fcn.1003db8e
pop ecx
pop ecx
jmp 0x10040a6f
xor eax, eax
inc eax
imul eax, eax, 0xa
mov byte [ebp + eax - 0x454], 0
mov dword [ebp - 0x274], 0x5c6f1bf5
mov dword [ebp - 0x51c], 0xffffffff
mov dword [ebp - 0x520], 0xaced45b0
mov dword [ebp - 0x710], 0x648bd921
mov eax, 0xeb89ba0
test eax, eax
je 0x10040bc0
push 0x680
push 1
push 0x64c9
call fcn.1003dbc7
add esp, 0xc
mov eax, dword [ebp - 0x274]
inc eax
mov dword [ebp - 0x274], eax
jmp 0x10040c2d
mov dword [ebp - 0x4fc], 1
cmp dword [ebp - 0x274], 0
je 0x10040c1a
cmp dword [ebp - 0x51c], 0
je 0x10040bf7
imul eax, dword [ebp - 0x4fc], 0x3dda
cmp eax, 5
jl 0x10040bf7
mov dword [ebp - 0x2e8], 1
jmp 0x10040bfe
and dword [ebp - 0x2e8], 0
mov eax, dword [ebp - 0x2e8]
sub eax, 0xab44
cmp eax, 0xfffffffa
jle 0x10040c1a
mov dword [ebp - 0x2f0], 1
jmp 0x10040c21
and dword [ebp - 0x2f0], 0
mov eax, dword [ebp - 0x2f0]
mov dword [ebp - 0x520], eax
lea eax, [ebp - 0x454]
push eax
lea ecx, [ebp - 0x7f4]
call fcn.1001fe4f
mov dword [ebp - 0x504], eax
mov eax, dword [ebp - 0x504]
mov dword [ebp - 0x528], eax
mov dword [ebp - 4], 0xb
push 0xa
xor edx, edx
mov ecx, dword [ebp - 0x528]
call fcn.100282ae
pop ecx
mov dword [ebp - 0x50c], eax
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x7f4]
call fcn.100146c3
mov dword [ebp - 0x160], 0x8cff0ea7
mov dword [ebp - 0x160], 0x12
jmp 0x10040ca0
mov eax, dword [ebp - 0x160]
inc eax
mov dword [ebp - 0x160], eax
cmp dword [ebp - 0x160], 0x1b
jge 0x10040ce2
mov byte [ebp - 0x86], 0
movzx eax, byte [ebp - 0x86]
test eax, eax
je 0x10040cc9
push 0x48ee
push 1
call fcn.1003dc16
pop ecx
pop ecx
mov byte [ebp - 0x75], 0
lea eax, [ebp - 0x75]
push eax
push 0x2052
push 0
call fcn.1003e3dd
add esp, 0xc
jmp 0x10040c93
and dword [ebp - 0x138], 0
jmp 0x10040cf8
mov eax, dword [ebp - 0x138]
inc eax
mov dword [ebp - 0x138], eax
cmp dword [ebp - 0x138], 0xb
jae 0x10040d11
mov eax, dword [ebp - 0x138]
mov byte [ebp + eax - 0x454], 0
jmp 0x10040ceb
push dword [ebp - 0x50c]
push dword [ebp - 0x530]
call fcn.1003a871
pop ecx
pop ecx
mov dword [ebp - 0x2f8], eax
push 3
lea ecx, [ebp - 0x588]
call fcn.10014761
mov dword [ebp - 4], 0xc
mov dword [ebp - 0x9c], 0x7d8a8701
lea eax, [ebp - 0x718]
push eax
push 1
lea eax, [ebp - 0x588]
push eax
push 0x49c4
call fcn.1003dc4f
add esp, 0x10
mov dword [ebp - 0x9c], 2
jmp 0x10040d7e
mov eax, dword [ebp - 0x9c]
dec eax
mov dword [ebp - 0x9c], eax
cmp dword [ebp - 0x9c], 0
jl 0x10040e20
mov dword [ebp - 0xc4], 0
mov dword [ebp - 0xc4], 2
jmp 0x10040dae
mov eax, dword [ebp - 0xc4]
dec eax
mov dword [ebp - 0xc4], eax
cmp dword [ebp - 0xc4], 0
jl 0x10040df3
mov byte [ebp - 0x87], 0
push 1
push 0xd57
push 0x696e
lea eax, [ebp - 0x87]
push eax
call fcn.1003dcc3
add esp, 0x10
push dword [ebp - 0xc4]
lea ecx, [ebp - 0x588]
call fcn.100147ff
cmp dword [eax], 0
je 0x10040df1
jmp 0x10040da1
jmp 0x10040da1
push dword [ebp - 0x9c]
lea ecx, [ebp - 0x588]
call fcn.100147ff
mov esi, eax
push dword [ebp - 0x9c]
lea ecx, [ebp - 0x588]
call fcn.100147ff
mov ecx, dword [esi]
mov dword [eax], ecx
jmp 0x10040d71
mov byte [ebp - 0x5a], 0
push 0x1500
push 1
lea eax, [ebp - 0x5a]
push eax
call fcn.1003dd5d
add esp, 0xc
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x588]
call fcn.100147e3
push 0x1f49
lea eax, [ebp - 0x84]
push eax
push 0x6d4d
push 0x1079
push 0x5991
push 1
lea eax, [ebp - 0x2f8]
push eax
push 0xdaf
call fcn.1003dda6
add esp, 0x20
mov dword [ebp - 0x154], 0
jmp 0x10040e90
mov eax, dword [ebp - 0x154]
inc eax
mov dword [ebp - 0x154], eax
cmp dword [ebp - 0x154], 1
jge 0x10040eac
mov eax, dword [ebp - 0x154]
mov dword [ebp + eax*4 - 0x720], 0
jmp 0x10040e83
mov byte [ebp - 0x5c], 0
push 0x2b61
push 0x4030
push 1
lea eax, [ebp - 0x5c]
push eax
call fcn.1003df8d
add esp, 0x10
mov byte [ebp - 0x5e], 0
movzx eax, byte [ebp - 0x5e]
test eax, eax
je 0x10040f09
push 0x25cf
push 0x136e
push 0x73b
push 0x1730
push 0x241c
push 0
push 0
push 0
push 0
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.USER32.dll_GetDC]
push eax
call dword [sym.imp.USER32.dll_DrawStateW]
lea eax, [ebp - 0x14]
push eax
push 1
lea eax, [ebp - 0x2f8]
push eax
push 0x3b3f
call fcn.1003e00a
add esp, 0x10
mov dword [ebp - 0x140], 5
mov dword [ebp - 0x728], 0xffffffff
mov dword [ebp - 0x71c], 0xfffffffb
or dword [ebp - 0x5f8], 0xffffffff
or dword [ebp - 0x5f4], 0xffffffff
or dword [ebp - 0x5f0], 0xffffffff
or dword [ebp - 0x5ec], 0xffffffff
lea ecx, [ebp - 0x295]
call fcn.10008a08
push eax
lea eax, [ebp - 0x5e8]
push eax
lea eax, [ebp - 0x5f8]
push eax
lea ecx, [ebp - 0x754]
call fcn.1001480e
push dword [eax + 4]
push dword [eax]
lea ecx, [ebp - 0x74c]
call fcn.100147bd
mov dword [ebp - 4], 0xd
mov dword [ebp - 0x6d0], 0xffffffff
mov dword [ebp - 0x518], 0xbffb
push 3
lea ecx, [ebp - 0x6a4]
call fcn.10014761
mov byte [ebp - 4], 0xe
mov dword [ebp - 0xcc], 0
jmp 0x10040fd7
mov eax, dword [ebp - 0xcc]
inc eax
mov dword [ebp - 0xcc], eax
cmp dword [ebp - 0xcc], 3
jge 0x10040ff3
mov eax, dword [ebp - 0xcc]
mov dword [ebp + eax*4 - 0x818], 1
jmp 0x10040fca
lea eax, [ebp - 0xcc]
push eax
push 0x442b
push 0x5844
lea eax, [ebp - 0x6a4]
push eax
push 0x3253
push 0x2826
push 0x2a80
push 0
call fcn.1003e70e
add esp, 0x20
mov dword [ebp - 0x140], 0
jmp 0x1004103d
mov eax, dword [ebp - 0x140]
inc eax
mov dword [ebp - 0x140], eax
cmp dword [ebp - 0x140], 8
je 0x10041084
mov dword [ebp - 0x158], 0xffffffff
mov dword [ebp - 0x158], 0
jmp 0x10041069
mov eax, dword [ebp - 0x158]
inc eax
mov dword [ebp - 0x158], eax
cmp dword [ebp - 0x158], 5
jg 0x10041082
push 1
push 0x7db1
call fcn.1003e063
pop ecx
pop ecx
jmp 0x1004105c
jmp 0x10041030
lea eax, [ebp - 0x518]
push eax
push 1
push 0x2010
call fcn.1003e0c1
add esp, 0xc
mov byte [ebp - 4], 0xd
lea ecx, [ebp - 0x6a4]
call fcn.100147e3
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x74c]
call fcn.100147e3
and dword [ebp - 0xe4], 0
mov dword [ebp - 0x3c], 0x2e91a049
mov dword [ebp - 0x278], 1
push 2
lea ecx, [ebp - 0x618]
call fcn.10014761
mov dword [ebp - 4], 0xf
mov dword [ebp - 0x388], 0xf4aedf2f
mov dword [ebp - 0x148], 0
jmp 0x10041107
mov eax, dword [ebp - 0x148]
inc eax
mov dword [ebp - 0x148], eax
cmp dword [ebp - 0x148], 2
jge 0x10041129
push dword [ebp - 0x148]
lea ecx, [ebp - 0x618]
call fcn.100147ff
mov dword [eax], 0xfffffffe
jmp 0x100410fa
mov dword [ebp - 0x3c], 0xffffffec
jmp 0x10041139
mov eax, dword [ebp - 0x3c]
inc eax
mov dword [ebp - 0x3c], eax
cmp dword [ebp - 0x3c], 0xfffffff5
jle 0x1004143e
mov dword [ebp - 0x440], 0x24f8
mov dword [ebp - 0x43c], 0x24f8
mov dword [ebp - 0x438], 0x24f8
mov dword [ebp - 0x434], 0x24f8
mov dword [ebp - 0x28], 0
mov dword [ebp - 0x2ac], 0xb8d8131d
mov dword [ebp - 0x28], 0
jmp 0x1004118c
mov eax, dword [ebp - 0x28]
inc eax
mov dword [ebp - 0x28], eax
cmp dword [ebp - 0x28], 3
jg 0x10041439
cmp dword [ebp - 0x3c], 0
je 0x1004123d
mov eax, dword [ebp - 0x3c]
cmp dword [ebp - 0x3c], eax
je 0x100411b4
mov dword [ebp - 0x300], 1
jmp 0x100411bb
and dword [ebp - 0x300], 0
mov eax, dword [ebp - 0x300]
sub eax, 0x7c0e
jne 0x100411de
mov eax, dword [ebp - 0x28]
cmp dword [ebp + eax*4 - 0x440], 0
jne 0x100411de
and dword [ebp - 0x308], 0
jmp 0x100411e8
mov dword [ebp - 0x308], 1
mov eax, dword [ebp - 0x308]
mov dword [ebp - 0x278], eax
mov eax, dword [ebp - 0x278]
add eax, 9
je 0x10041211
cmp dword [ebp - 0x3c], 0
je 0x10041211
mov dword [ebp - 0x310], 1
jmp 0x10041218
and dword [ebp - 0x310], 0
imul eax, dword [ebp - 0x310], 0xfffe
mov dword [ebp - 0x2ac], eax
cmp dword [ebp - 0x2ac], 0
je 0x1004123d
mov dword [ebp - 0x320], 1
jmp 0x10041244
and dword [ebp - 0x320], 0
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp + eax*4 - 0x440]
add eax, dword [ebp - 0x320]
cmp eax, dword [ebp - 0x3c]
jl 0x1004126b
cmp dword [ebp - 0x278], 0
jne 0x1004126b
and dword [ebp - 0x328], 0
jmp 0x10041275
mov dword [ebp - 0x328], 1
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp + eax*4 - 0x440]
sub eax, dword [ebp - 0x328]
push 4
pop ecx
shl ecx, 0
add eax, dword [ebp + ecx - 0x440]
cmp eax, dword [ebp - 0x28]
je 0x100412a3
mov dword [ebp - 0x330], 1
jmp 0x100412aa
and dword [ebp - 0x330], 0
mov eax, dword [ebp - 0x330]
sub eax, 0x6a450c19
mov ecx, dword [ebp - 0x28]
cmp eax, dword [ebp + ecx*4 - 0x440]
jne 0x100412cd
mov dword [ebp - 0x338], 1
jmp 0x100412d4
and dword [ebp - 0x338], 0
cmp dword [ebp - 0x338], 0xffffffff
jg 0x100412ef
cmp dword [ebp - 0x3c], 0
je 0x100412ef
mov dword [ebp - 0x340], 1
jmp 0x100412f6
and dword [ebp - 0x340], 0
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp + eax*4 - 0x440]
cmp dword [ebp - 0x340], eax
jge 0x10041318
xor eax, eax
je 0x10041318
mov dword [ebp - 0x348], 1
jmp 0x1004131f
and dword [ebp - 0x348], 0
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x440]
cmp dword [ebp - 0x348], eax
jne 0x10041340
mov dword [ebp - 0x350], 1
jmp 0x10041347
and dword [ebp - 0x350], 0
mov eax, dword [ebp - 0x3c]
cmp dword [ebp - 0x350], eax
je 0x1004135e
mov dword [ebp - 0x358], 1
jmp 0x10041365
and dword [ebp - 0x358], 0
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp + eax*4 - 0x440]
cmp dword [ebp - 0x358], eax
jne 0x10041388
or eax, 0xffffffff
je 0x10041388
mov dword [ebp - 0x360], 1
jmp 0x1004138f
and dword [ebp - 0x360], 0
push 0
lea ecx, [ebp - 0x618]
call fcn.100147ff
mov ecx, dword [ebp - 0x360]
cmp ecx, dword [eax]
jne 0x100413b2
mov dword [ebp - 0x368], 1
jmp 0x100413b9
and dword [ebp - 0x368], 0
imul eax, dword [ebp - 0x368], 0x215f
cmp eax, dword [ebp - 0x28]
jg 0x100413d4
mov dword [ebp - 0x370], 1
jmp 0x100413db
and dword [ebp - 0x370], 0
cmp dword [ebp - 0x370], 1
jge 0x100413f0
mov dword [ebp - 0x378], 1
jmp 0x100413f7
and dword [ebp - 0x378], 0
mov eax, dword [ebp - 0x378]
sub eax, dword [ebp - 0x28]
cmp eax, dword [ebp - 0x28]
jne 0x10041411
mov dword [ebp - 0x380], 1
jmp 0x10041418
and dword [ebp - 0x380], 0
mov eax, dword [ebp - 0x380]
mov dword [ebp - 0x388], eax
push 0
lea eax, [ebp - 0x388]
push eax
call fcn.1003e336
pop ecx
pop ecx
jmp 0x10041185
jmp 0x10041132
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x618]
call fcn.100147e3
mov eax, dword [ebp - 0x14]
cmp dword [eax + 0x18], 0
jbe 0x10041475
push 0x2d72
push 0x60b4
lea eax, [ebp - 0xe4]
push eax
push 1
lea eax, [ebp - 0x14]
push eax
call fcn.1003e101
add esp, 0x14
mov eax, dword [ebp - 0x14]
mov eax, dword [eax + 0x1c]
mov dword [ebp - 0x10], eax
mov eax, dword [ebp - 0x14]
mov eax, dword [eax + 0x14]
sub eax, dword [ebp - 0xe4]
mov dword [ebp - 0xa8], eax
mov dword [ebp - 0x60c], 0x928c176b
mov dword [ebp - 0x608], 0x928c176b
mov dword [ebp - 0x604], 0x928c176b
mov dword [ebp - 0x600], 0x928c176b
lea ecx, [ebp - 0x29d]
call fcn.10008a08
push eax
lea eax, [ebp - 0x5fc]
push eax
lea eax, [ebp - 0x60c]
push eax
lea ecx, [ebp - 0x774]
call fcn.1001480e
push dword [eax + 4]
push dword [eax]
lea ecx, [ebp - 0x5c8]
call fcn.100147bd
mov dword [ebp - 4], 0x10
push 2
lea ecx, [ebp - 0x5c8]
call fcn.100147ff
mov dword [eax], 0xffffffe8
jmp 0x1004152d
push 2
lea ecx, [ebp - 0x5c8]
call fcn.100147ff
mov dword [ebp - 0x390], eax
mov eax, dword [ebp - 0x390]
mov eax, dword [eax]
inc eax
mov ecx, dword [ebp - 0x390]
mov dword [ecx], eax
push 2
lea ecx, [ebp - 0x5c8]
call fcn.100147ff
cmp dword [eax], 0xfffffff3
jg 0x10041555
push 0xcc
push 0x2044
push 0
call fcn.1003e817
add esp, 0xc
jmp 0x10041509
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x5c8]
call fcn.100147e3
and dword [ebp - 0xd4], 0
jmp 0x1004157a
mov eax, dword [ebp - 0xd4]
inc eax
mov dword [ebp - 0xd4], eax
mov eax, dword [ebp - 0xd4]
cmp eax, dword [ebp - 0xa8]
jge 0x10041620
mov eax, dword [ebp - 0x14]
mov ecx, dword [ebp - 0x14]
mov eax, dword [eax + 0x14]
sub eax, dword [ecx + 0x18]
cmp dword [ebp - 0xd4], eax
jae 0x100415d0
lea eax, [ebp - 0x398]
push eax
push 1
lea eax, [ebp - 0x20]
push eax
lea eax, [ebp - 0x14]
push eax
push 0x7872
lea eax, [ebp - 0x24]
push eax
lea eax, [ebp - 0xd4]
push eax
push 0x5995
call fcn.1003e18e
add esp, 0x20
jmp 0x100415f0
mov eax, dword [ebp - 0x50]
mov eax, dword [eax + 0x14]
mov ecx, dword [ebp - 0x50]
add eax, dword [ecx + 0x10]
push eax
mov eax, dword [ebp - 0x50]
push dword [eax + 0x14]
call fcn.1003a871
pop ecx
pop ecx
mov dword [ebp - 0x398], eax
lea eax, [ebp - 0x20]
push eax
lea eax, [ebp - 0x24]
push eax
push 0xd29
lea eax, [ebp - 0x398]
push eax
lea eax, [ebp - 0x10]
push eax
push 1
call fcn.1003e222
add esp, 0x18
mov eax, dword [ebp - 0x10]
add eax, 4
mov dword [ebp - 0x10], eax
jmp 0x1004156d
mov eax, dword [ebp - 0x14]
mov eax, dword [eax + 0x14]
sub eax, dword [ebp - 0xe4]
mov ecx, dword [ebp - 0x14]
mov dword [ecx + 0x14], eax
mov dword [ebp - 0xdc], 0xffffffff
mov dword [ebp - 0x6f8], 0xfffffff7
mov dword [ebp - 0x658], 0x2f76ec75
mov dword [ebp - 0x700], 0xb2906c90
mov dword [ebp - 0x660], 0xa7084bc9
mov dword [ebp - 0x6fc], 0x4981ff29
mov dword [ebp - 0x668], 0x84cb8f6c
mov dword [ebp - 0x714], 1
mov dword [ebp - 0x670], 0xfffffff8
mov dword [ebp - 0x474], 0xcda7
mov dword [ebp - 0x150], 0
jmp 0x100416af
mov eax, dword [ebp - 0x150]
inc eax
mov dword [ebp - 0x150], eax
cmp dword [ebp - 0x150], 2
jge 0x100416cb
mov eax, dword [ebp - 0x150]
mov dword [ebp + eax*4 - 0x6bc], 0x342e
jmp 0x100416a2
mov dword [ebp - 0xdc], 0
jmp 0x100416e4
mov eax, dword [ebp - 0xdc]
inc eax
mov dword [ebp - 0xdc], eax
cmp dword [ebp - 0xdc], 1
jg 0x10041865
push 2
lea ecx, [ebp - 0x6c8]
call fcn.10014761
mov dword [ebp - 4], 0x11
lea eax, [ebp - 0x6cc]
push eax
push 0x2d9d
push 1
push 0x7511
lea eax, [ebp - 0x6c8]
push eax
call fcn.1003e28f
add esp, 0x14
mov eax, dword [ebp - 0xdc]
cmp dword [ebp + eax*4 - 0x6bc], 0
je 0x100417cf
mov dword [ebp - 0x130], 0
jmp 0x10041754
mov eax, dword [ebp - 0x130]
inc eax
mov dword [ebp - 0x130], eax
cmp dword [ebp - 0x130], 1
jge 0x10041770
mov eax, dword [ebp - 0x130]
mov dword [ebp + eax*4 - 0xfc], 0x23b6182e
jmp 0x10041747
push 4
pop eax
imul eax, eax, 0
mov dword [ebp + eax - 0xfc], 0
jmp 0x1004179e
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0xfc]
inc eax
push 4
pop ecx
imul ecx, ecx, 0
mov dword [ebp + ecx - 0xfc], eax
push 4
pop eax
imul eax, eax, 0
cmp dword [ebp + eax - 0xfc], 1
jg 0x100417ca
mov byte [ebp - 0x60], 0
movzx eax, byte [ebp - 0x60]
test eax, eax
je 0x100417c8
push 1
push 0x29d9
call fcn.1003e336
pop ecx
pop ecx
jmp 0x10041783
jmp 0x10041851
mov dword [ebp - 0x678], 0x4ef66b17
mov dword [ebp - 0x6d4], 0xf985589b
push 4
lea ecx, [ebp - 0x6b4]
call fcn.10014761
mov byte [ebp - 4], 0x12
push 1
lea eax, [ebp - 0x688]
push eax
lea eax, [ebp - 0x6b4]
push eax
call fcn.1003e36d
add esp, 0xc
push 0x256a
lea eax, [ebp - 0x474]
push eax
push 1
call fcn.1003e3dd
add esp, 0xc
mov byte [ebp - 0x62], 0
movzx eax, byte [ebp - 0x62]
test eax, eax
je 0x10041842
push 1
push 0x5936
push 0x2e3
call fcn.1003e42b
add esp, 0xc
mov byte [ebp - 4], 0x11
lea ecx, [ebp - 0x6b4]
call fcn.100147e3
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x6c8]
call fcn.100147e3
jmp 0x100416d7
mov eax, dword [ebp - 0x14]
mov eax, dword [eax + 0x18]
sub eax, dword [ebp - 0xe4]
mov dword [ebp - 0xa8], eax
mov dword [ebp - 0x98], 0x6512
mov dword [ebp - 0x3c8], 0xe5c285ce
mov dword [ebp - 0x94], 0
mov dword [ebp - 0x100], 0xfffffff9
mov dword [ebp - 0x488], 0xcdc0f1fa
mov byte [ebp - 0x64], 0
push 1
push 0x2b01
lea eax, [ebp - 0x64]
push eax
call fcn.1003e49e
add esp, 0xc
cmp dword [ebp - 0x98], 0
jne 0x100419e1
cmp dword [ebp - 0x98], 0xffffffff
jge 0x100418e2
mov dword [ebp - 0x3a0], 1
jmp 0x100418e9
and dword [ebp - 0x3a0], 0
mov eax, dword [ebp - 0x94]
imul eax, dword [ebp - 0x98], 0xfff7
mov dword [ebp - 0x100], eax
cmp dword [ebp - 0x100], 0x27d373ee
je 0x10041917
mov dword [ebp - 0x3a8], 1
jmp 0x1004191e
and dword [ebp - 0x3a8], 0
cmp dword [ebp - 0x3a8], 1
ja 0x10041933
mov dword [ebp - 0x3b0], 1
jmp 0x1004193a
and dword [ebp - 0x3b0], 0
mov eax, dword [ebp - 0x94]
add eax, dword [ebp - 0x3b0]
cmp eax, dword [ebp - 0x94]
jl 0x1004195a
mov dword [ebp - 0x3b8], 1
jmp 0x10041961
and dword [ebp - 0x3b8], 0
mov eax, dword [ebp - 0x94]
cmp dword [ebp - 0x3b8], eax
jl 0x10041981
cmp dword [ebp - 0x100], 0
jne 0x10041981
and dword [ebp - 0x3c0], 0
jmp 0x1004198b
mov dword [ebp - 0x3c0], 1
cmp dword [ebp - 0x3c0], 0x28033590
jl 0x100419a3
mov dword [ebp - 0x3d0], 1
jmp 0x100419aa
and dword [ebp - 0x3d0], 0
mov dword [ebp - 0x3c8], 0x2a83
mov eax, dword [ebp - 0x3c8]
cmp eax, dword [ebp - 0x3d0]
jle 0x100419d3
xor eax, eax
inc eax
je 0x100419d3
mov dword [ebp - 0x478], 1
jmp 0x100419da
and dword [ebp - 0x478], 0
cmp dword [ebp - 0x98], 0
xor eax, eax
inc eax
jne 0x100419ed
cmp dword [ebp - 0x100], 0
mov eax, dword [ebp - 0x94]
imul eax, dword [ebp - 0x94]
cmp eax, 0xe149
jg 0x10041a0d
mov dword [ebp - 0x480], 1
jmp 0x10041a14
and dword [ebp - 0x480], 0
mov eax, dword [ebp - 0x98]
mov dword [ebp - 0x6dc], eax
cmp dword [ebp - 0x98], 0x1636717b
jne 0x10041a38
mov dword [ebp - 0x3d8], 1
jmp 0x10041a3f
and dword [ebp - 0x3d8], 0
mov eax, dword [ebp - 0x3d8]
mov dword [ebp - 0x488], eax
and dword [ebp - 0x280], 0
jmp 0x10041a61
mov eax, dword [ebp - 0x280]
inc eax
mov dword [ebp - 0x280], eax
mov eax, dword [ebp - 0x280]
cmp eax, dword [ebp - 0xa8]
jge 0x10041a94
lea eax, [ebp - 0x10]
push eax
lea eax, [ebp - 0x24]
push eax
lea eax, [ebp - 0x20]
push eax
push 1
call fcn.1003e4ef
add esp, 0x10
lea eax, [ebp - 0x10]
push eax
push 1
call fcn.1003e546
pop ecx
pop ecx
jmp 0x10041a54
mov dword [ebp - 0x698], 0xfffe
mov byte [ebp - 0x5b], 0
lea eax, [ebp - 0x5b]
push eax
push 1
call fcn.1003e586
pop ecx
pop ecx
mov byte [ebp - 0x7d], 0
movzx eax, byte [ebp - 0x7d]
test eax, eax
je 0x10041ac9
push 0x2022
push 1
call fcn.1003e5e8
pop ecx
pop ecx
mov eax, dword [ebp - 0xa8]
shl eax, 2
mov ecx, dword [ebp - 0x10]
sub ecx, eax
mov eax, dword [ebp - 0x14]
mov dword [eax + 0x20], ecx
push 1
lea eax, [ebp - 0xe4]
push eax
lea eax, [ebp - 0x14]
push eax
call fcn.1003e632
add esp, 0xc
mov dword [ebp - 0xa0], 0xfffffff9
mov dword [ebp - 0x108], 0
jmp 0x10041b15
mov eax, dword [ebp - 0x108]
inc eax
mov dword [ebp - 0x108], eax
cmp dword [ebp - 0x108], 1
jge 0x10041b31
mov eax, dword [ebp - 0x108]
mov dword [ebp + eax*4 - 0x3e0], 0xfffffff7
jmp 0x10041b08
mov dword [ebp - 0xa0], 0
jmp 0x10041b4a
cmp dword [ebp - 0xa0], 0
jl 0x10041b6f
mov eax, dword [ebp - 0xa0]
mov ecx, dword [ebp - 0xa0]
mov eax, dword [ebp + eax*4 - 0x3e0]
mov dword [ebp + ecx*4 - 0x3e0], eax
jmp 0x10041b3d
mov byte [ebp - 0x5d], 0
push 0x6cad
push 1
push 0x22e0
lea eax, [ebp - 0x5d]
push eax
call fcn.1003e691
add esp, 0x10
and dword [ebp - 0x110], 0
jmp 0x10041ba1
mov eax, dword [ebp + 8]
mov dword [ebp - 0x4d0], eax
mov eax, dword [ebp + 0x14]
mov dword [ebp - 0x4d8], eax
mov eax, dword [ebp + 0xc]
mov dword [ebp - 0x4e0], eax
mov eax, dword [ebp - 0x4d0]
mov dword [ebp - 0x4f8], eax
mov eax, dword [ebp - 0x4d8]
mov dword [ebp - 0x4f0], eax
mov eax, dword [ebp - 0x4e0]
mov dword [ebp - 0x4e8], eax
mov eax, dword [ebp - 0x4e8]
mov eax, dword [eax]
shl eax, 1
mov ecx, dword [ebp - 0x4f0]
mov ecx, dword [ecx]
sub ecx, eax
mov eax, dword [ebp - 0x4f8]
mov eax, dword [eax]
mov dword [eax + 0x24], ecx
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop esi
mov esp, ebp
pop ebp
ret