Function at 0x1003f4f2
Capabilities:
Contain obfuscated stackstrings

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x1007ab49
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x528
push esi
and dword [ebp - 0x278], 0
mov dword [ebp - 0x24], 0x6801fc3e
mov dword [ebp - 0x48], 0
push 4
lea ecx, [ebp - 0x128]
call fcn.10016406
and dword [ebp - 4], 0
mov dword [ebp - 0x60], 0xffffffff
mov dword [ebp - 0x308], 0xfff7
mov dword [ebp - 0x40c], 0x2d863e32
mov dword [ebp - 0x12c], 0xffffffff
mov dword [ebp - 0x2a4], 0
mov dword [ebp - 0x104], 1
mov dword [ebp - 0x320], 0x791a13c5
mov dword [ebp - 0x110], 0xb0c4f31b
lea eax, [ebp - 0x74]
push eax
push 1
lea eax, [ebp - 0x128]
push eax
call fcn.1003f192
add esp, 0xc
mov dword [ebp - 0x74], 0
jmp 0x1003f5a9
mov eax, dword [ebp - 0x74]
inc eax
mov dword [ebp - 0x74], eax
cmp dword [ebp - 0x74], 3
jge 0x1003f5bf
mov eax, dword [ebp - 0x74]
mov dword [ebp + eax*4 - 0x370], 0xffffffff
jmp 0x1003f5a2
mov eax, dword [ebp - 0x24]
cmp dword [ebp - 0x24], eax
jl 0x1003f68b
cmp dword [ebp - 0x24], 0x41145714
jne 0x1003f5e0
mov dword [ebp - 0x1f8], 1
jmp 0x1003f5e7
and dword [ebp - 0x1f8], 0
push 0
lea ecx, [ebp - 0x128]
call fcn.100164a4
mov ecx, dword [ebp - 0x1f8]
cmp ecx, dword [eax]
jne 0x1003f60a
mov dword [ebp - 0x288], 1
jmp 0x1003f611
and dword [ebp - 0x288], 0
mov esi, dword [ebp - 0x288]
neg esi
push 0
lea ecx, [ebp - 0x128]
call fcn.100164a4
imul esi, dword [eax]
sub esi, 0x360de574
jne 0x1003f64c
push 3
lea ecx, [ebp - 0x128]
call fcn.100164a4
cmp dword [eax], 0
jne 0x1003f64c
and dword [ebp - 0x290], 0
jmp 0x1003f656
mov dword [ebp - 0x290], 1
push 0
lea ecx, [ebp - 0x128]
call fcn.100164a4
mov ecx, dword [ebp - 0x290]
cmp ecx, dword [eax]
je 0x1003f68b
push 0
lea ecx, [ebp - 0x128]
call fcn.100164a4
cmp dword [eax], 0
je 0x1003f68b
mov dword [ebp - 0x298], 1
jmp 0x1003f692
and dword [ebp - 0x298], 0
mov eax, dword [ebp - 0x298]
mov dword [ebp - 0x60], eax
mov esi, dword [ebp - 0x60]
push 0
lea ecx, [ebp - 0x128]
call fcn.100164a4
cmp esi, dword [eax]
jge 0x1003f6bb
mov dword [ebp - 0x2a0], 1
jmp 0x1003f6c2
and dword [ebp - 0x2a0], 0
mov eax, dword [ebp - 0x24]
cmp eax, dword [ebp - 0x2a0]
jge 0x1003f6d9
mov dword [ebp - 0x2a8], 1
jmp 0x1003f6e0
and dword [ebp - 0x2a8], 0
push 0
lea ecx, [ebp - 0x128]
call fcn.100164a4
mov ecx, dword [ebp - 0x2a8]
cmp ecx, dword [eax]
jne 0x1003f703
mov dword [ebp - 0x164], 1
jmp 0x1003f70a
and dword [ebp - 0x164], 0
mov eax, dword [ebp - 0x24]
mov dword [ebp - 0x48], eax
mov eax, dword [ebp - 0x48]
cmp eax, dword [ebp - 0x164]
jge 0x1003f727
mov dword [ebp - 0x280], 1
jmp 0x1003f72e
and dword [ebp - 0x280], 0
mov eax, dword [ebp - 0x24]
cmp dword [ebp - 0x280], eax
jg 0x1003f745
mov dword [ebp - 0x364], 1
jmp 0x1003f74c
and dword [ebp - 0x364], 0
mov eax, dword [ebp - 0x24]
mov dword [ebp - 0x41c], eax
mov dword [ebp - 0x308], 0
cmp dword [ebp - 0x60], 0
je 0x1003fa6c
mov dword [ebp - 0x118], 0xfffffffb
mov dword [ebp - 0x310], 0x59cde89c
mov dword [ebp - 0x88], 0
mov dword [ebp - 0x10c], 0xffffffff
mov dword [ebp - 0x26c], 0xdf123efb
mov dword [ebp - 0x224], 4
mov eax, dword [ebp - 0x88]
inc eax
mov dword [ebp - 0x10c], eax
mov eax, dword [ebp - 0x10c]
add eax, dword [ebp - 0x24]
mov dword [ebp - 0x12c], eax
mov eax, dword [ebp - 0x12c]
mov dword [ebp - 0x424], eax
mov eax, dword [ebp - 0x60]
mov dword [ebp - 0x42c], eax
mov eax, 0x3c1dc0ac
test eax, eax
jne 0x1003f7eb
mov dword [ebp - 0x264], 1
jmp 0x1003f7f2
and dword [ebp - 0x264], 0
mov eax, dword [ebp - 0x48]
cmp dword [ebp - 0x264], eax
jl 0x1003f809
mov dword [ebp - 0x16c], 1
jmp 0x1003f810
and dword [ebp - 0x16c], 0
mov eax, dword [ebp - 0x118]
cmp dword [ebp - 0x16c], eax
jg 0x1003f82a
mov dword [ebp - 0x214], 1
jmp 0x1003f831
and dword [ebp - 0x214], 0
mov eax, dword [ebp - 0x60]
cmp dword [ebp - 0x214], eax
jge 0x1003f84e
cmp dword [ebp - 0x48], 0
je 0x1003f84e
mov dword [ebp - 0x174], 1
jmp 0x1003f855
and dword [ebp - 0x174], 0
mov eax, dword [ebp - 0x174]
mov dword [ebp - 0x2a4], eax
mov eax, dword [ebp - 0x2a4]
mov dword [ebp - 0x434], eax
mov esi, dword [ebp - 0x310]
push 0
lea ecx, [ebp - 0x128]
call fcn.100164a4
cmp esi, dword [eax]
jne 0x1003f890
mov dword [ebp - 0x17c], 1
jmp 0x1003f897
and dword [ebp - 0x17c], 0
mov eax, dword [ebp - 0x48]
cmp dword [ebp - 0x17c], eax
jl 0x1003f8ae
mov dword [ebp - 0x21c], 1
jmp 0x1003f8b5
and dword [ebp - 0x21c], 0
mov eax, dword [ebp - 0x118]
cmp dword [ebp - 0x21c], eax
jne 0x1003f8cf
mov dword [ebp - 0x184], 1
jmp 0x1003f8d6
and dword [ebp - 0x184], 0
mov eax, dword [ebp - 0x118]
cmp eax, dword [ebp - 0x184]
jne 0x1003f8f0
mov dword [ebp - 0x318], 1
jmp 0x1003f8f7
and dword [ebp - 0x318], 0
mov eax, dword [ebp - 0x88]
mov dword [ebp - 0x26c], eax
cmp dword [ebp - 0x26c], 0
jne 0x1003f91c
push 2
pop eax
test eax, eax
jne 0x1003f91c
and dword [ebp - 0x18c], 0
jmp 0x1003f926
mov dword [ebp - 0x18c], 1
mov eax, dword [ebp - 0x18c]
mov dword [ebp - 0x224], eax
mov eax, dword [ebp - 0x224]
mov dword [ebp - 0x43c], eax
mov esi, dword [ebp - 0x104]
push 0
lea ecx, [ebp - 0x128]
call fcn.100164a4
sub esi, dword [eax]
cmp esi, dword [ebp - 0x104]
jg 0x1003f967
mov dword [ebp - 0x194], 1
jmp 0x1003f96e
and dword [ebp - 0x194], 0
mov eax, dword [ebp - 0x88]
cmp dword [ebp - 0x194], eax
jl 0x1003f988
mov dword [ebp - 0x294], 1
jmp 0x1003f98f
and dword [ebp - 0x294], 0
mov eax, dword [ebp - 0x88]
imul eax, dword [ebp - 0x294]
sub eax, dword [ebp - 0x88]
sub eax, dword [ebp - 0x320]
cmp eax, 0xde1f
je 0x1003f9c1
cmp dword [ebp - 0x110], 0
jne 0x1003f9c1
and dword [ebp - 0x19c], 0
jmp 0x1003f9cb
mov dword [ebp - 0x19c], 1
mov eax, dword [ebp - 0x19c]
mov dword [ebp - 0x110], eax
push 4
pop eax
shl eax, 0
mov ecx, dword [ebp - 0x48]
imul ecx, dword [ebp - 0x110]
mov edx, dword [ebp - 0x60]
sub edx, ecx
cmp edx, dword [ebp + eax - 0x370]
jge 0x1003fa01
mov dword [ebp - 0x22c], 1
jmp 0x1003fa08
and dword [ebp - 0x22c], 0
mov eax, dword [ebp - 0x24]
add eax, dword [ebp - 0x22c]
je 0x1003fa3d
cmp dword [ebp - 0x104], 0xfffffffe
jle 0x1003fa28
mov dword [ebp - 0x1a4], 1
jmp 0x1003fa2f
and dword [ebp - 0x1a4], 0
mov eax, dword [ebp - 0x1a4]
mov dword [ebp - 0x10c], eax
jmp 0x1003fa6a
mov dword [ebp - 0x328], 0xffffffff
lea eax, [ebp - 0x48]
push eax
lea eax, [ebp - 0x328]
push eax
push 0
push 0x7713
lea eax, [ebp - 0x24]
push eax
push 0x413b
call fcn.1003f20e
add esp, 0x18
jmp 0x1003fad2
mov dword [ebp - 0x330], 0xb134
push 4
pop eax
shl eax, 0
mov ecx, dword [ebp - 0x330]
cmp dword [ebp + eax - 0x370], ecx
je 0x1003fa97
mov dword [ebp - 0x274], 1
jmp 0x1003fa9e
and dword [ebp - 0x274], 0
push 4
pop eax
shl eax, 0
mov eax, dword [ebp + eax - 0x370]
cmp eax, dword [ebp - 0x274]
jg 0x1003fabf
mov dword [ebp - 0x1ac], 1
jmp 0x1003fac6
and dword [ebp - 0x1ac], 0
mov eax, dword [ebp - 0x1ac]
mov dword [ebp - 0x12c], eax
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x128]
call fcn.10016488
push 2
lea ecx, [ebp - 0x3dc]
call fcn.10016406
mov dword [ebp - 4], 1
push 3
lea ecx, [ebp - 0x138]
call fcn.10016406
mov byte [ebp - 4], 2
mov dword [ebp - 0x27c], 0xe5477a75
mov dword [ebp - 0x2d4], 0x74bf7a83
push 0x23e7
push 0xf17
push 1
lea eax, [ebp - 0x6c]
push eax
push 0x1b30
lea eax, [ebp - 0x3dc]
push eax
call fcn.1003f20e
add esp, 0x18
mov dword [ebp - 0x6c], 0
jmp 0x1003fb4e
mov eax, dword [ebp - 0x6c]
inc eax
mov dword [ebp - 0x6c], eax
cmp dword [ebp - 0x6c], 3
jge 0x1003fb6a
push dword [ebp - 0x6c]
lea ecx, [ebp - 0x138]
call fcn.100164a4
mov dword [eax], 0xfffffffb
jmp 0x1003fb47
push 0
lea ecx, [ebp - 0x138]
call fcn.100164a4
mov dword [eax], 1
jmp 0x1003fba3
push 0
lea ecx, [ebp - 0x138]
call fcn.100164a4
mov dword [ebp - 0x234], eax
mov eax, dword [ebp - 0x234]
mov eax, dword [eax]
dec eax
mov ecx, dword [ebp - 0x234]
mov dword [ecx], eax
push 0
lea ecx, [ebp - 0x138]
call fcn.100164a4
cmp dword [eax], 0
jl 0x1003fd98
mov dword [ebp - 0x114], 1
mov dword [ebp - 0x34], 1
mov dword [ebp - 0xc0], 0
jmp 0x1003fbe3
mov eax, dword [ebp - 0xc0]
inc eax
mov dword [ebp - 0xc0], eax
cmp dword [ebp - 0xc0], 1
jge 0x1003fbff
mov eax, dword [ebp - 0xc0]
mov dword [ebp + eax*4 - 0x338], 3
jmp 0x1003fbd6
push 0
lea eax, [ebp - 0x114]
push eax
lea eax, [ebp - 0x34]
push eax
push 0x32e0
lea eax, [ebp - 0x3dc]
push eax
lea eax, [ebp - 0x138]
push eax
call fcn.1004379f
add esp, 0x18
mov eax, dword [ebp - 0x34]
cmp dword [ebp - 0x34], eax
jg 0x1003fc3b
mov dword [ebp - 0x1b4], 1
jmp 0x1003fc42
and dword [ebp - 0x1b4], 0
push 1
lea ecx, [ebp - 0x138]
call fcn.100164a4
push 0
lea ecx, [ebp - 0x138]
call fcn.100164a4
mov eax, dword [eax]
mov dword [ebp - 0x114], eax
mov eax, dword [ebp - 0x114]
cmp dword [ebp - 0x1b4], eax
jge 0x1003fc7e
mov dword [ebp - 0x2bc], 1
jmp 0x1003fc85
and dword [ebp - 0x2bc], 0
mov eax, dword [ebp - 0x34]
cmp dword [ebp - 0x2bc], eax
je 0x1003fc9c
mov dword [ebp - 0x1bc], 1
jmp 0x1003fca3
and dword [ebp - 0x1bc], 0
cmp dword [ebp - 0x1bc], 0x3fa9dfee
je 0x1003fcbb
mov dword [ebp - 0x23c], 1
jmp 0x1003fcc2
and dword [ebp - 0x23c], 0
push 1
lea ecx, [ebp - 0x138]
call fcn.100164a4
mov eax, dword [eax]
sub eax, dword [ebp - 0x23c]
cmp eax, dword [ebp - 0x34]
jne 0x1003fce8
mov dword [ebp - 0x1c4], 1
jmp 0x1003fcef
and dword [ebp - 0x1c4], 0
mov eax, dword [ebp - 0x1c4]
mov dword [ebp - 0x27c], eax
mov eax, dword [ebp - 0x34]
cmp dword [ebp - 0x27c], eax
jne 0x1003fd34
push 1
lea ecx, [ebp - 0x138]
call fcn.100164a4
cmp dword [eax], 0
je 0x1003fd34
push 4
pop eax
imul eax, eax, 0
cmp dword [ebp + eax - 0x338], 0
je 0x1003fd34
mov dword [ebp - 0x1cc], 1
jmp 0x1003fd3b
and dword [ebp - 0x1cc], 0
push 0
lea ecx, [ebp - 0x138]
call fcn.100164a4
mov ecx, dword [ebp - 0x34]
imul ecx, dword [ebp - 0x1cc]
cmp dword [eax], ecx
jle 0x1003fd62
mov dword [ebp - 0x244], 1
jmp 0x1003fd69
and dword [ebp - 0x244], 0
mov eax, dword [ebp - 0x34]
cmp dword [ebp - 0x244], eax
jle 0x1003fd80
mov dword [ebp - 0x1d4], 1
jmp 0x1003fd87
and dword [ebp - 0x1d4], 0
mov eax, dword [ebp - 0x1d4]
mov dword [ebp - 0x2d4], eax
jmp 0x1003fb7f
mov byte [ebp - 0x51], 0
movzx eax, byte [ebp - 0x51]
test eax, eax
je 0x1003fdb8
push 0x5eac
push 0
push 0x4c5b
call fcn.10042b9b
add esp, 0xc
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x138]
call fcn.10016488
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x3dc]
call fcn.10016488
push 3
lea ecx, [ebp - 0x148]
call fcn.10016406
mov dword [ebp - 4], 3
push 3
lea ecx, [ebp - 0x158]
call fcn.10016406
mov byte [ebp - 4], 4
mov dword [ebp - 0x64], 0x34ffdeab
mov dword [ebp - 0x84], 0
jmp 0x1003fe1b
mov eax, dword [ebp - 0x84]
inc eax
mov dword [ebp - 0x84], eax
cmp dword [ebp - 0x84], 3
jge 0x1003fe3d
push dword [ebp - 0x84]
lea ecx, [ebp - 0x148]
call fcn.100164a4
mov dword [eax], 0xb9b55bb2
jmp 0x1003fe0e
push 0
push 0x7161
lea eax, [ebp - 0x158]
push eax
push 0x4d1b
lea eax, [ebp - 0x84]
push eax
push 0x7ac2
push 0x7bc0
call fcn.10042e19
add esp, 0x1c
push 2
lea ecx, [ebp - 0x158]
call fcn.100164a4
mov dword [eax], 2
jmp 0x1003fea2
push 2
lea ecx, [ebp - 0x158]
call fcn.100164a4
mov dword [ebp - 0x29c], eax
mov eax, dword [ebp - 0x29c]
mov eax, dword [eax]
dec eax
mov ecx, dword [ebp - 0x29c]
mov dword [ecx], eax
push 2
lea ecx, [ebp - 0x158]
call fcn.100164a4
cmp dword [eax], 0
jl 0x10040178
mov dword [ebp - 0x3c], 0x5010f7a7
mov dword [ebp - 0x50], 0x4c7b7f60
mov dword [ebp - 0x28], 0xb50f6b3
mov dword [ebp - 0x3c], 2
jmp 0x1003fedd
mov eax, dword [ebp - 0x3c]
dec eax
mov dword [ebp - 0x3c], eax
cmp dword [ebp - 0x3c], 0
jl 0x10040173
push dword [ebp - 0x3c]
lea ecx, [ebp - 0x148]
call fcn.100164a4
cmp dword [eax], 0
jne 0x1003ff06
mov dword [ebp - 0x1e4], 1
jmp 0x1003ff0d
and dword [ebp - 0x1e4], 0
mov eax, dword [ebp - 0x50]
mov dword [ebp - 0x444], eax
mov eax, dword [ebp - 0x50]
mov dword [ebp - 0x28], eax
mov eax, dword [ebp - 0x50]
cmp dword [ebp - 0x28], eax
jl 0x1003ff30
mov dword [ebp - 0x300], 1
jmp 0x1003ff37
and dword [ebp - 0x300], 0
push 2
lea ecx, [ebp - 0x158]
call fcn.100164a4
mov esi, eax
push 2
lea ecx, [ebp - 0x158]
call fcn.100164a4
push dword [eax]
lea ecx, [ebp - 0x148]
call fcn.100164a4
mov ecx, dword [esi]
cmp ecx, dword [eax]
jl 0x1003ff72
mov dword [ebp - 0x1dc], 1
jmp 0x1003ff79
and dword [ebp - 0x1dc], 0
push 2
lea ecx, [ebp - 0x158]
call fcn.100164a4
mov ecx, dword [ebp - 0x1dc]
cmp ecx, dword [eax]
je 0x1003ff9c
mov dword [ebp - 0x24c], 1
jmp 0x1003ffa3
and dword [ebp - 0x24c], 0
cmp dword [ebp - 0x24c], 9
jne 0x1003ffc7
push 0
lea ecx, [ebp - 0x148]
call fcn.100164a4
cmp dword [eax], 0
jne 0x1003ffc7
and dword [ebp - 0x334], 0
jmp 0x1003ffd1
mov dword [ebp - 0x334], 1
push dword [ebp - 0x3c]
lea ecx, [ebp - 0x148]
call fcn.100164a4
push 2
lea ecx, [ebp - 0x158]
call fcn.100164a4
push dword [eax]
lea ecx, [ebp - 0x148]
call fcn.100164a4
mov esi, eax
push dword [ebp - 0x3c]
lea ecx, [ebp - 0x148]
call fcn.100164a4
mov ecx, dword [esi]
cmp ecx, dword [eax]
jg 0x1004001b
mov dword [ebp - 0x284], 1
jmp 0x10040022
and dword [ebp - 0x284], 0
push 2
lea ecx, [ebp - 0x158]
call fcn.100164a4
push dword [eax]
lea ecx, [ebp - 0x148]
call fcn.100164a4
mov esi, eax
push dword [ebp - 0x3c]
lea ecx, [ebp - 0x148]
call fcn.100164a4
mov ecx, dword [ebp - 0x1e4]
add ecx, dword [eax]
add ecx, dword [ebp - 0x284]
cmp dword [esi], ecx
jge 0x100400a9
mov dword [ebp - 0xc4], 0
jmp 0x10040077
mov eax, dword [ebp - 0xc4]
inc eax
mov dword [ebp - 0xc4], eax
cmp dword [ebp - 0xc4], 2
jge 0x10040093
mov eax, dword [ebp - 0xc4]
mov dword [ebp + eax*4 - 0x408], 0x9fe9
jmp 0x1004006a
push 4
pop eax
imul eax, eax, 0
mov dword [ebp + eax - 0x408], 0xee72c34c
jmp 0x1004016e
mov dword [ebp - 0x28], 2
jmp 0x100400b9
mov eax, dword [ebp - 0x28]
dec eax
mov dword [ebp - 0x28], eax
cmp dword [ebp - 0x28], 0
jl 0x10040129
mov dword [ebp - 0x50], 2
jmp 0x100400cf
mov eax, dword [ebp - 0x50]
dec eax
mov dword [ebp - 0x50], eax
cmp dword [ebp - 0x50], 0
jl 0x1004011f
mov dword [ebp - 0xb4], 1
mov dword [ebp - 0xb4], 2
jmp 0x100400f8
mov eax, dword [ebp - 0xb4]
dec eax
mov dword [ebp - 0xb4], eax
cmp dword [ebp - 0xb4], 0
jl 0x1004011d
mov byte [ebp - 0x42], 0
movzx eax, byte [ebp - 0x42]
test eax, eax
je 0x1004011b
push 0
push 0x4130
call fcn.10042520
pop ecx
pop ecx
jmp 0x100400eb
jmp 0x100400c8
cmp dword [ebp - 0x64], 0
je 0x10040127
jmp 0x10040129
jmp 0x100400b2
mov dword [ebp - 0x28], 2
jmp 0x10040139
mov eax, dword [ebp - 0x28]
dec eax
mov dword [ebp - 0x28], eax
cmp dword [ebp - 0x28], 0
jl 0x1004016e
mov dword [ebp - 0x64], 0
jmp 0x1004014f
mov eax, dword [ebp - 0x64]
inc eax
mov dword [ebp - 0x64], eax
cmp dword [ebp - 0x64], 3
jge 0x1004016c
lea eax, [ebp - 0x148]
push eax
lea eax, [ebp - 0x64]
push eax
push 0
call fcn.10042fe9
add esp, 0xc
jmp 0x10040148
jmp 0x10040132
jmp 0x1003fed6
jmp 0x1003fe7e
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x158]
call fcn.10016488
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x148]
call fcn.10016488
mov byte [ebp - 0x100], 0x14
mov byte [ebp - 0xff], 0x57
mov byte [ebp - 0xfe], 7
mov byte [ebp - 0xfd], 0x1d
mov byte [ebp - 0xfc], 0x11
mov byte [ebp - 0xfb], 0x1a
mov byte [ebp - 0xfa], 4
mov byte [ebp - 0xf9], 0x17
mov byte [ebp - 0xf8], 0
mov byte [ebp - 0xf7], 4
mov byte [ebp - 0xf6], 0xa
mov byte [ebp - 0xf5], 0xa
mov byte [ebp - 0xf4], 6
mov byte [ebp - 0xf3], 0xc
mov byte [ebp - 0xf2], 0x10
mov byte [ebp - 0xf1], 0x16
mov byte [ebp - 0xf0], 0x13
mov byte [ebp - 0xef], 5
mov byte [ebp - 0xee], 2
mov byte [ebp - 0xed], 0x17
mov byte [ebp - 0xec], 0xf
mov byte [ebp - 0xeb], 0x13
mov byte [ebp - 0xea], 5
mov byte [ebp - 0xe9], 0x16
mov byte [ebp - 0xe8], 0x19
mov byte [ebp - 0xe7], 0x1c
mov byte [ebp - 0xe6], 8
mov byte [ebp - 0xe5], 0x13
mov byte [ebp - 0xe4], 0x17
mov byte [ebp - 0xe3], 0x11
mov byte [ebp - 0xe2], 9
mov byte [ebp - 0xe1], 0x12
mov byte [ebp - 0xe0], 0x12
mov byte [ebp - 0xdf], 0x19
mov byte [ebp - 0xde], 0xe
mov byte [ebp - 0xdd], 0x1c
mov byte [ebp - 0xdc], 0xc
mov byte [ebp - 0xdb], 2
mov byte [ebp - 0xda], 0x15
mov byte [ebp - 0xd9], 0x1b
mov byte [ebp - 0xd8], 0xd
mov byte [ebp - 0xd7], 0x18
mov byte [ebp - 0xd6], 6
mov byte [ebp - 0xd5], 0xf4
mov byte [ebp - 0xd4], 0xbf
mov byte [ebp - 0xd3], 0x5d
mov byte [ebp - 0xd2], 0xf7
mov byte [ebp - 0xd1], 0xb6
mov byte [ebp - 0xd0], 0xca
mov byte [ebp - 0xcf], 0x18
mov byte [ebp - 0xce], 0x17
mov byte [ebp - 0xcd], 3
mov byte [ebp - 0xcc], 0x1d
mov byte [ebp - 0xcb], 1
mov byte [ebp - 0xca], 6
mov byte [ebp - 0xc9], 0xb
mov byte [ebp - 0xc8], 0xe
mov byte [ebp - 0xc7], 0x16
mov byte [ebp - 0xc6], 0x1b
mov dword [ebp - 0x7c], 0x7e2799ac
mov dword [ebp - 0x44c], 9
mov dword [ebp - 0x454], 0xfffffffe
mov dword [ebp - 0xa4], 0
jmp 0x10040367
mov eax, dword [ebp - 0xa4]
inc eax
mov dword [ebp - 0xa4], eax
cmp dword [ebp - 0xa4], 2
jge 0x10040383
mov eax, dword [ebp - 0xa4]
mov dword [ebp + eax*4 - 0x414], 1
jmp 0x1004035a
mov dword [ebp - 0x7c], 0xffffffee
jmp 0x10040393
mov eax, dword [ebp - 0x7c]
dec eax
mov dword [ebp - 0x7c], eax
cmp dword [ebp - 0x7c], 0xffffffe7
jne 0x10040408
mov dword [ebp - 0x45c], 0xdc7555b7
mov dword [ebp - 0x464], 0x19ac196a
mov dword [ebp - 0x46c], 0
mov dword [ebp - 0x474], 0xc08872fa
mov dword [ebp - 0x47c], 0xd0289a69
mov dword [ebp - 0x484], 0xa50b5f0
mov dword [ebp - 0x48c], 0x5c6f8b8a
mov dword [ebp - 0x1ec], 0xfffffff9
mov eax, dword [ebp - 0x1ec]
dec eax
mov dword [ebp - 0x1ec], eax
push 4
pop eax
imul eax, eax, 0
mov ecx, dword [ebp - 0x7c]
mov dword [ebp + eax - 0x414], ecx
jmp 0x1004038c
xor eax, eax
inc eax
shl eax, 0
movzx eax, byte [ebp + eax - 0x100]
or eax, 0x22
xor ecx, ecx
inc ecx
shl ecx, 0
movzx ecx, byte [ebp + ecx - 0x100]
and ecx, 0x22
sub eax, ecx
xor ecx, ecx
inc ecx
imul ecx, ecx, 0
movzx ecx, byte [ebp + ecx - 0x100]
mov byte [ebp + ecx - 0x3f8], al
mov dword [ebp - 0x18], 2
and dword [ebp - 0x70], 0
jmp 0x10040456
mov eax, dword [ebp - 0x18]
inc eax
inc eax
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], 0x3b
jae 0x10040932
xor eax, eax
inc eax
imul eax, eax, 0
movzx eax, byte [ebp + eax - 0x100]
lea eax, [eax + eax + 2]
cmp dword [ebp - 0x18], eax
jne 0x1004085b
mov dword [ebp - 0x2dc], 0xe414
push 3
lea ecx, [ebp - 0x394]
call fcn.10016406
mov dword [ebp - 4], 5
mov dword [ebp - 0xb8], 0
jmp 0x100404b2
mov eax, dword [ebp - 0xb8]
inc eax
mov dword [ebp - 0xb8], eax
cmp dword [ebp - 0xb8], 3
jge 0x100404d4
push dword [ebp - 0xb8]
lea ecx, [ebp - 0x394]
call fcn.100164a4
mov dword [eax], 0xfffffff7
jmp 0x100404a5
push 0x1060
lea eax, [ebp - 0x2dc]
push eax
push 0
lea eax, [ebp - 0x394]
push eax
call fcn.1003f3d8
add esp, 0x10
mov byte [ebp - 0x41], 0
movzx eax, byte [ebp - 0x41]
test eax, eax
je 0x10040505
push 0
call fcn.100424fc
pop ecx
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x394]
call fcn.10016488
mov eax, dword [ebp - 0x18]
movzx eax, byte [ebp + eax - 0x100]
inc eax
mov dword [ebp - 0x70], eax
mov dword [ebp - 0x20], 0x6444696a
mov dword [ebp - 0xac], 0x164f943a
mov dword [ebp - 0x160], 1
push 3
lea ecx, [ebp - 0x2b8]
call fcn.10016406
mov dword [ebp - 4], 6
mov dword [ebp - 0x2e4], 0x2ef314d4
mov dword [ebp - 0x2c], 0
jmp 0x1004056c
mov eax, dword [ebp - 0x2c]
inc eax
mov dword [ebp - 0x2c], eax
cmp dword [ebp - 0x2c], 1
jge 0x10040582
mov eax, dword [ebp - 0x2c]
mov dword [ebp + eax*4 - 0x35c], 5
jmp 0x10040565
mov dword [ebp - 0x2c], 0
jmp 0x10040592
mov eax, dword [ebp - 0x2c]
inc eax
mov dword [ebp - 0x2c], eax
cmp dword [ebp - 0x2c], 3
jge 0x100405ae
push dword [ebp - 0x2c]
lea ecx, [ebp - 0x2b8]
call fcn.100164a4
mov dword [eax], 0xfffffffc
jmp 0x1004058b
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0x494], eax
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0xac], eax
cmp dword [ebp - 0xac], 0
je 0x100405d9
xor eax, eax
je 0x100405d9
mov dword [ebp - 0x254], 1
jmp 0x100405e0
and dword [ebp - 0x254], 0
mov eax, dword [ebp - 0x20]
cmp eax, dword [ebp - 0x254]
jge 0x100405f7
mov dword [ebp - 0x1f4], 1
jmp 0x100405fe
and dword [ebp - 0x1f4], 0
mov eax, dword [ebp - 0x20]
cmp eax, dword [ebp - 0x1f4]
je 0x10040615
mov dword [ebp - 0x2ac], 1
jmp 0x1004061c
and dword [ebp - 0x2ac], 0
mov eax, dword [ebp - 0x2ac]
sub eax, 6
cmp eax, dword [ebp - 0x20]
jg 0x10040636
mov dword [ebp - 0x1fc], 1
jmp 0x1004063d
and dword [ebp - 0x1fc], 0
push 0xfffffffffffffff6
pop eax
sub eax, dword [ebp - 0x1fc]
mov dword [ebp - 0x25c], eax
push 4
pop eax
imul eax, eax, 0
mov ecx, dword [ebp - 0x25c]
mov dword [ebp + eax - 0x35c], ecx
mov eax, dword [ebp - 0x20]
cmp dword [ebp - 0x25c], eax
jne 0x10040676
mov dword [ebp - 0x204], 1
jmp 0x1004067d
and dword [ebp - 0x204], 0
mov eax, dword [ebp - 0x20]
cmp dword [ebp - 0x204], eax
jge 0x10040694
mov dword [ebp - 0x28c], 1
jmp 0x1004069b
and dword [ebp - 0x28c], 0
mov eax, dword [ebp - 0x20]
cmp dword [ebp - 0x28c], eax
jne 0x100406b2
mov dword [ebp - 0x20c], 1
jmp 0x100406b9
and dword [ebp - 0x20c], 0
mov eax, dword [ebp - 0x20c]
add eax, 0xa
neg eax
mov dword [ebp - 0x160], eax
mov eax, dword [ebp - 0x160]
mov dword [ebp - 0x49c], eax
push 0
lea ecx, [ebp - 0x2b8]
call fcn.100164a4
cmp dword [eax], 0
jne 0x100406ef
cmp dword [ebp - 0xac], 0
mov esi, dword [ebp - 0x20]
push 0
lea ecx, [ebp - 0x2b8]
call fcn.100164a4
imul esi, dword [eax]
push 0
lea ecx, [ebp - 0x2b8]
call fcn.100164a4
cmp esi, dword [eax]
jle 0x10040725
push 0
lea ecx, [ebp - 0x2b8]
call fcn.100164a4
cmp dword [eax], 0
jne 0x10040737
cmp dword [ebp - 0xac], 0
jne 0x10040737
and dword [ebp - 0x168], 0
jmp 0x10040741
mov dword [ebp - 0x168], 1
mov eax, dword [ebp - 0x20]
cmp dword [ebp - 0x168], eax
je 0x10040758
mov dword [ebp - 0x170], 1
jmp 0x1004075f
and dword [ebp - 0x170], 0
push 0
lea ecx, [ebp - 0x2b8]
call fcn.100164a4
mov ecx, dword [ebp - 0x170]
cmp ecx, dword [eax]
jle 0x10040782
mov dword [ebp - 0x178], 1
jmp 0x10040789
and dword [ebp - 0x178], 0
mov esi, dword [ebp - 0x20]
sub esi, dword [ebp - 0x178]
push 2
lea ecx, [ebp - 0x2b8]
call fcn.100164a4
sub esi, dword [eax]
cmp esi, dword [ebp - 0x20]
jl 0x100407b2
mov dword [ebp - 0x180], 1
jmp 0x100407b9
and dword [ebp - 0x180], 0
mov eax, dword [ebp - 0x180]
mov dword [ebp - 0x2e4], eax
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x2b8]
call fcn.10016488
mov eax, dword [ebp - 0x18]
movzx eax, byte [ebp + eax - 0x100]
mov ecx, dword [ebp - 0x18]
lea eax, [ecx + eax - 1]
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x33c], 8
mov dword [ebp - 0x2ec], 0xb5ca9869
mov dword [ebp - 0x2cc], 1
mov dword [ebp - 0x4cc], 0x927f7b6f
lea eax, [ebp - 0x33c]
push eax
push 0x27bf
lea eax, [ebp - 0x2ec]
push eax
lea eax, [ebp - 0x2cc]
push eax
push 0
push 0x3055
call fcn.1004255e
add esp, 0x18
mov byte [ebp - 0x3f], 0
lea eax, [ebp - 0x3f]
push eax
push 1
push 0x1a46
push 0x34e0
call fcn.1003f333
add esp, 0x10
jmp 0x1004044e
mov eax, dword [ebp - 0x18]
movzx eax, byte [ebp + eax - 0xff]
mov ecx, dword [ebp - 0x18]
sub ecx, dword [ebp - 0x70]
movzx ecx, byte [ebp + ecx - 0x102]
movsx ecx, byte [ebp + ecx - 0x3f8]
add eax, ecx
mov ecx, dword [ebp - 0x18]
movzx ecx, byte [ebp + ecx - 0xff]
mov edx, dword [ebp - 0x18]
sub edx, dword [ebp - 0x70]
movzx edx, byte [ebp + edx - 0x102]
movsx edx, byte [ebp + edx - 0x3f8]
and ecx, edx
sub eax, ecx
mov ecx, dword [ebp - 0x18]
movzx ecx, byte [ebp + ecx - 0xff]
mov edx, dword [ebp - 0x18]
sub edx, dword [ebp - 0x70]
movzx edx, byte [ebp + edx - 0x102]
movsx edx, byte [ebp + edx - 0x3f8]
and ecx, edx
sub eax, ecx
mov ecx, dword [ebp - 0x18]
movzx ecx, byte [ebp + ecx - 0x100]
mov byte [ebp + ecx - 0x3f8], al
mov dword [ebp - 0x4c8], 0xa631
mov byte [ebp - 0x5a], 0
movzx eax, byte [ebp - 0x5a]
test eax, eax
je 0x1004090e
push 0x1863
push 0x6eed
push 0x8fe
push 0
push 0x12b0
call fcn.10043732
add esp, 0x14
mov byte [ebp - 0x3d], 0
movzx eax, byte [ebp - 0x3d]
test eax, eax
je 0x10040929
push 0
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.USER32.dll_KillTimer]
and dword [ebp - 0x70], 0
jmp 0x1004044e
mov dword [ebp - 0x14c], 0x3df603fa
mov dword [ebp - 0x1a0], 0xfffffffb
mov dword [ebp - 0x1c], 0xffffffff
mov dword [ebp - 0x360], 0x65969a22
mov byte [ebp - 0x43], 0
movzx eax, byte [ebp - 0x43]
test eax, eax
je 0x1004096b
push 0
call fcn.10042241
pop ecx
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x4b0], eax
mov eax, dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], eax
jl 0x10040988
mov dword [ebp - 0x188], 1
jmp 0x1004098f
and dword [ebp - 0x188], 0
mov eax, dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], eax
jl 0x100409a3
mov dword [ebp - 0x190], 1
jmp 0x100409aa
and dword [ebp - 0x190], 0
mov eax, dword [ebp - 0x188]
cmp eax, dword [ebp - 0x190]
je 0x100409c4
mov dword [ebp - 0x198], 1
jmp 0x100409cb
and dword [ebp - 0x198], 0
mov eax, dword [ebp - 0x1c]
cmp dword [ebp - 0x198], eax
jne 0x100409e2
mov dword [ebp - 0x2f4], 1
jmp 0x100409e9
and dword [ebp - 0x2f4], 0
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x3fc], eax
mov eax, dword [ebp - 0x1c]
sub eax, dword [ebp - 0x1c]
imul eax, dword [ebp - 0x1c]
cmp eax, dword [ebp - 0x1c]
jle 0x10040a0d
mov dword [ebp - 0x1a8], 1
jmp 0x10040a14
and dword [ebp - 0x1a8], 0
mov eax, dword [ebp - 0x14c]
mov dword [ebp - 0x14c], eax
mov eax, dword [ebp - 0x14c]
mov dword [ebp - 0x1a0], eax
mov eax, dword [ebp - 0x1a0]
cmp eax, dword [ebp - 0x1a8]
je 0x10040a46
mov dword [ebp - 0x1b0], 1
jmp 0x10040a4d
and dword [ebp - 0x1b0], 0
mov eax, dword [ebp - 0x1b0]
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x360], eax
xor eax, eax
inc eax
imul eax, eax, 0x1a
mov byte [ebp + eax - 0x3f8], 0
lea eax, [ebp - 0x3f8]
push eax
lea ecx, [ebp - 0x500]
call fcn.10022b6e
mov dword [ebp - 4], 7
mov dword [ebp - 0x78], 0xffffffff
mov dword [ebp - 0x78], 0
jmp 0x10040a9d
mov eax, dword [ebp - 0x78]
inc eax
mov dword [ebp - 0x78], eax
cmp dword [ebp - 0x78], 0xd
jg 0x10040b39
push 4
lea ecx, [ebp - 0x3c4]
call fcn.10016406
mov byte [ebp - 4], 8
mov dword [ebp - 0x68], 0xedc7555b
lea eax, [ebp - 0x3c4]
push eax
push 0
lea eax, [ebp - 0x478]
push eax
push 0x1ca
push 0x7366
call fcn.10041791
add esp, 0x14
mov dword [ebp - 0x68], 0
jmp 0x10040af1
mov eax, dword [ebp - 0x68]
inc eax
mov dword [ebp - 0x68], eax
cmp dword [ebp - 0x68], 3
jg 0x10040b0e
push dword [ebp - 0x68]
lea ecx, [ebp - 0x3c4]
call fcn.100164a4
cmp dword [eax], 0
je 0x10040b0c
jmp 0x10040b0e
jmp 0x10040aea
lea eax, [ebp - 0x78]
push eax
push 0xc6d
push 0
lea eax, [ebp - 0x68]
push eax
call fcn.10042ee1
add esp, 0x10
mov byte [ebp - 4], 7
lea ecx, [ebp - 0x3c4]
call fcn.10016488
jmp 0x10040a96
and dword [ebp - 0x90], 0
jmp 0x10040b4f
mov eax, dword [ebp - 0x90]
inc eax
mov dword [ebp - 0x90], eax
cmp dword [ebp - 0x90], 0x1b
jae 0x10040c12
mov dword [ebp - 0x2fc], 0xe414
push 3
lea ecx, [ebp - 0x3ac]
call fcn.10016406
mov byte [ebp - 4], 9
mov dword [ebp - 0xb0], 0
jmp 0x10040b90
mov eax, dword [ebp - 0xb0]
inc eax
mov dword [ebp - 0xb0], eax
cmp dword [ebp - 0xb0], 3
jge 0x10040bb2
push dword [ebp - 0xb0]
lea ecx, [ebp - 0x3ac]
call fcn.100164a4
mov dword [eax], 0xfffffff7
jmp 0x10040b83
push 0x1e90
lea eax, [ebp - 0x2fc]
push eax
push 0x2282
push 0
lea eax, [ebp - 0x3ac]
push eax
call fcn.1004228c
add esp, 0x14
mov byte [ebp - 0x59], 0
push 0x2b9b
push 0x3e56
lea eax, [ebp - 0x59]
push eax
push 0
call fcn.100420ca
add esp, 0x10
mov byte [ebp - 4], 7
lea ecx, [ebp - 0x3ac]
call fcn.10016488
mov eax, dword [ebp - 0x90]
mov byte [ebp + eax - 0x3f8], 0
jmp 0x10040b42
mov dword [ebp - 0x14], 0x263126ff
mov dword [ebp - 0x38], 0xffffffff
mov dword [ebp - 0xa0], 1
mov dword [ebp - 0x200], 0
cmp dword [ebp - 0x14], 0
je 0x10040c4c
cmp dword [ebp - 0x14], 0
je 0x10040c4c
mov dword [ebp - 0x1b8], 1
jmp 0x10040c53
and dword [ebp - 0x1b8], 0
mov eax, dword [ebp - 0x14]
mov dword [ebp - 0x38], eax
mov eax, dword [ebp - 0x38]
cmp eax, dword [ebp - 0x1b8]
jne 0x10040c70
mov dword [ebp - 0x348], 1
jmp 0x10040c77
and dword [ebp - 0x348], 0
mov eax, dword [ebp - 0x14]
mov dword [ebp - 0x418], eax
mov eax, dword [ebp - 0x14]
mov dword [ebp - 0x4b8], eax
cmp dword [ebp - 0x14], 0
jne 0x10040cd3
mov dword [ebp - 0x304], 0xfffa
mov byte [ebp - 0x49], 0
movzx eax, byte [ebp - 0x49]
test eax, eax
je 0x10040cb3
push 0xae6
push 0
call fcn.10041f37
pop ecx
pop ecx
lea eax, [ebp - 0x304]
push eax
push 0x78d0
push 1
push 0x7d28
call fcn.1003f3d8
add esp, 0x10
jmp 0x10040d7e
mov dword [ebp - 0x80], 0x5f27a412
mov dword [ebp - 0x11c], 0x209c3997
cmp dword [ebp - 0x80], 0
je 0x10040d2a
mov eax, dword [ebp - 0x80]
mov dword [ebp - 0x11c], eax
mov eax, dword [ebp - 0x80]
mov dword [ebp - 0x420], eax
mov eax, dword [ebp - 0x11c]
mov dword [ebp - 0x480], eax
cmp dword [ebp - 0x11c], 0
je 0x10040d2a
cmp dword [ebp - 0x80], 0
je 0x10040d2a
push 7
pop eax
test eax, eax
je 0x10040d2a
mov dword [ebp - 0x1c0], 1
jmp 0x10040d31
and dword [ebp - 0x1c0], 0
imul eax, dword [ebp - 0x1c0], 0xbf11
cmp eax, 0xffffffff
jne 0x10040d4c
mov dword [ebp - 0x1c8], 1
jmp 0x10040d53
and dword [ebp - 0x1c8], 0
mov eax, dword [ebp - 0x80]
cmp dword [ebp - 0x1c8], eax
jg 0x10040d6a
mov dword [ebp - 0x1d0], 1
jmp 0x10040d71
and dword [ebp - 0x1d0], 0
imul eax, dword [ebp - 0x1d0], 0xfffe
mov dword [ebp - 0x38], eax
mov dword [ebp - 0xa0], 5
mov eax, dword [ebp - 0xa0]
cmp dword [ebp - 0x38], eax
mov dword [ebp - 0x38], 0x997
mov eax, dword [ebp - 0x38]
sub eax, 7
mov dword [ebp - 0xa0], eax
mov eax, dword [ebp - 0x14]
cmp dword [ebp - 0xa0], eax
jg 0x10040dbb
mov dword [ebp - 0x358], 1
jmp 0x10040dc2
and dword [ebp - 0x358], 0
mov eax, dword [ebp - 0x14]
mov dword [ebp - 0x428], eax
mov eax, dword [ebp - 0x14]
cmp dword [ebp - 0x38], eax
je 0x10040ddf
mov dword [ebp - 0x1d8], 1
jmp 0x10040de6
and dword [ebp - 0x1d8], 0
mov eax, dword [ebp - 0x14]
cmp dword [ebp - 0x1d8], eax
jle 0x10040dfd
mov dword [ebp - 0x1e0], 1
jmp 0x10040e04
and dword [ebp - 0x1e0], 0
cmp dword [ebp - 0x1e0], 0xfe96
jge 0x10040e1c
mov dword [ebp - 0x1e8], 1
jmp 0x10040e23
and dword [ebp - 0x1e8], 0
mov eax, dword [ebp - 0x14]
cmp dword [ebp - 0x1e8], eax
jg 0x10040e3a
mov dword [ebp - 0x1f0], 1
jmp 0x10040e41
and dword [ebp - 0x1f0], 0
mov eax, dword [ebp - 0x14]
cmp dword [ebp - 0x1f0], eax
je 0x10040e58
mov dword [ebp - 0x15c], 1
jmp 0x10040e5f
and dword [ebp - 0x15c], 0
mov eax, dword [ebp - 0x14]
imul eax, dword [ebp - 0x15c]
imul eax, dword [ebp - 0x14]
mov dword [ebp - 0x200], eax
cmp dword [ebp - 0x200], 0xe2fd
jge 0x10040eb9
push 0x62d4
lea eax, [ebp - 0x38]
push eax
push 0
push 0x4a75
lea eax, [ebp - 0x14]
push eax
call fcn.10042c07
add esp, 0x14
mov byte [ebp - 0x5b], 0
push 0x7880
push 0
push 0x5f68
lea eax, [ebp - 0x5b]
push eax
call fcn.100418c5
add esp, 0x10
jmp 0x10040f1d
mov dword [ebp - 0x30c], 0xc2391700
push 3
lea ecx, [ebp - 0x37c]
call fcn.10016406
mov byte [ebp - 4], 0xa
lea eax, [ebp - 0x4c0]
push eax
lea eax, [ebp - 0x37c]
push eax
push 0
call fcn.10041deb
add esp, 0xc
lea eax, [ebp - 0x30c]
push eax
lea eax, [ebp - 0x37c]
push eax
push 0
push 0x3b05
push 0x4327
call fcn.10043434
add esp, 0x14
mov byte [ebp - 4], 7
lea ecx, [ebp - 0x37c]
call fcn.10016488
push 0x10007be6
lea ecx, [ebp - 0x4e8]
call fcn.10022b6e
mov byte [ebp - 4], 0xb
mov dword [ebp - 0x314], 0xfffffffc
mov dword [ebp - 0x430], 0x485bf25c
mov dword [ebp - 0x488], 0xbeb7161a
mov dword [ebp - 0x350], 0x1813f1a0
mov dword [ebp - 0x30], 0
jmp 0x10040f69
mov eax, dword [ebp - 0x30]
inc eax
mov dword [ebp - 0x30], eax
cmp dword [ebp - 0x30], 4
jge 0x10040f7f
mov eax, dword [ebp - 0x30]
mov dword [ebp + eax*4 - 0x534], 0xdf99
jmp 0x10040f62
mov dword [ebp - 0x30], 0
jmp 0x10040f8f
mov eax, dword [ebp - 0x30]
inc eax
mov dword [ebp - 0x30], eax
cmp dword [ebp - 0x30], 3
jge 0x10040fa5
mov eax, dword [ebp - 0x30]
mov dword [ebp + eax*4 - 0x50c], 0x2c5e
jmp 0x10040f88
push 0x33eb
push 0
push 0xd90
push 0x2705
lea eax, [ebp - 0x350]
push eax
push 0x6837
push 0x4f83
push 0x353
lea eax, [ebp - 0x314]
push eax
call fcn.10041bac
add esp, 0x24
push 4
lea ecx, [ebp - 0x4ac]
call fcn.10016406
mov byte [ebp - 4], 0xc
mov dword [ebp - 0xa8], 1
push 0
push 0x283a
lea eax, [ebp - 0x438]
push eax
push 0x7949
lea eax, [ebp - 0x4ac]
push eax
call fcn.10043215
add esp, 0x14
mov dword [ebp - 0xa8], 0
jmp 0x10041031
mov eax, dword [ebp - 0xa8]
inc eax
mov dword [ebp - 0xa8], eax
cmp dword [ebp - 0xa8], 3
jg 0x100410a3
push 3
lea ecx, [ebp - 0x388]
call fcn.10016406
mov byte [ebp - 4], 0xd
push 0x5f80
push 0x4c2a
push 0
lea eax, [ebp - 0x4bc]
push eax
lea eax, [ebp - 0x388]
push eax
push 0x7070
push 0x577e
push 0x2ea2
call fcn.1004349a
add esp, 0x20
push 0
lea eax, [ebp - 0x388]
push eax
push 0x2131
call fcn.10042149
add esp, 0xc
mov byte [ebp - 4], 0xc
lea ecx, [ebp - 0x388]
call fcn.10016488
jmp 0x10041024
mov byte [ebp - 4], 0xb
lea ecx, [ebp - 0x4ac]
call fcn.10016488
lea ecx, [ebp - 0x4e8]
call fcn.100168d2
cmp eax, dword [ebp + 0xc]
je 0x1004144e
push 3
lea ecx, [ebp - 0x2c8]
call fcn.10016406
mov byte [ebp - 4], 0xe
mov dword [ebp - 0x440], 8
mov dword [ebp - 0x32c], 0xfffffff7
mov dword [ebp - 0x344], 0xe1c97412
mov dword [ebp - 0x490], 0x7a5b7d8c
mov dword [ebp - 0x324], 1
mov dword [ebp - 0x238], 0x6c2e7ccc
push 2
lea ecx, [ebp - 0x3d0]
call fcn.10016406
mov byte [ebp - 4], 0xf
mov dword [ebp - 0x218], 0x8169
push 2
lea ecx, [ebp - 0x3b8]
call fcn.10016406
mov byte [ebp - 4], 0x10
mov dword [ebp - 0x10], 0
jmp 0x1004114f
mov eax, dword [ebp - 0x10]
inc eax
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 3
jge 0x1004116b
push dword [ebp - 0x10]
lea ecx, [ebp - 0x2c8]
call fcn.100164a4
mov dword [eax], 1
jmp 0x10041148
mov dword [ebp - 0x10], 0
jmp 0x1004117b
mov eax, dword [ebp - 0x10]
inc eax
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 2
jge 0x10041197
push dword [ebp - 0x10]
lea ecx, [ebp - 0x3d0]
call fcn.100164a4
mov dword [eax], 0xfffffff6
jmp 0x10041174
mov dword [ebp - 0x10], 0
jmp 0x100411a7
mov eax, dword [ebp - 0x10]
inc eax
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 3
jge 0x100411bd
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0x3a0], 0x78ef
jmp 0x100411a0
mov dword [ebp - 0x10], 0
jmp 0x100411cd
mov eax, dword [ebp - 0x10]
inc eax
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 2
jge 0x100411e9
push dword [ebp - 0x10]
lea ecx, [ebp - 0x3b8]
call fcn.100164a4
mov dword [eax], 0x7b364fe
jmp 0x100411c6
push 2
lea ecx, [ebp - 0x2c8]
call fcn.100164a4
push 0
lea ecx, [ebp - 0x2c8]
call fcn.100164a4
mov eax, dword [eax]
mov dword [ebp - 0x340], eax
push 4
pop eax
shl eax, 0
mov eax, dword [ebp + eax - 0x3a0]
mov dword [ebp - 0x31c], eax
push 4
pop eax
shl eax, 0
mov eax, dword [ebp + eax - 0x3a0]
dec eax
push 4
pop ecx
shl ecx, 0
mov dword [ebp + ecx - 0x3a0], eax
mov eax, dword [ebp - 0x340]
cmp eax, dword [ebp - 0x31c]
jg 0x10041253
mov dword [ebp - 0x220], 1
jmp 0x1004125a
and dword [ebp - 0x220], 0
push 0
lea ecx, [ebp - 0x3d0]
call fcn.100164a4
mov ecx, dword [ebp - 0x344]
imul ecx, dword [eax]
cmp ecx, 0x6ac116e0
jle 0x10041281
cmp dword [ebp - 0x324], 0
jne 0x10041293
mov eax, 0x3631af66
test eax, eax
jne 0x10041293
and dword [ebp - 0x208], 0
jmp 0x1004129d
mov dword [ebp - 0x208], 1
mov eax, dword [ebp - 0x208]
neg eax
je 0x100412bc
mov eax, 0x83f7
test eax, eax
je 0x100412bc
mov dword [ebp - 0x210], 1
jmp 0x100412c3
and dword [ebp - 0x210], 0
mov eax, dword [ebp - 0x210]
mov dword [ebp - 0x218], eax
cmp dword [ebp - 0x218], 0
jne 0x100412f3
push 2
lea ecx, [ebp - 0x2c8]
call fcn.100164a4
cmp dword [eax], 0
jne 0x100412f3
and dword [ebp - 0x228], 0
jmp 0x100412fd
mov dword [ebp - 0x228], 1
mov eax, dword [ebp - 0x220]
cmp eax, dword [ebp - 0x228]
jle 0x10041317
mov dword [ebp - 0x230], 1
jmp 0x1004131e
and dword [ebp - 0x230], 0
push 0
lea ecx, [ebp - 0x2c8]
call fcn.100164a4
mov eax, dword [eax]
cmp eax, dword [ebp - 0x230]
jl 0x10041341
mov dword [ebp - 0x34c], 1
jmp 0x10041348
and dword [ebp - 0x34c], 0
mov eax, dword [ebp - 0x238]
mov dword [ebp - 0x448], eax
mov esi, dword [ebp - 0x238]
push 1
lea ecx, [ebp - 0x3b8]
call fcn.100164a4
cmp esi, dword [eax]
jge 0x10041377
mov dword [ebp - 0x240], 1
jmp 0x1004137e
and dword [ebp - 0x240], 0
mov eax, dword [ebp - 0x240]
mov dword [ebp - 0x32c], eax
mov byte [ebp - 0x3e], 0
movzx eax, byte [ebp - 0x3e]
test eax, eax
je 0x100413aa
push 0x7f9
push 0x61fa
push 0
call fcn.100426dc
add esp, 0xc
mov byte [ebp - 4], 0xf
lea ecx, [ebp - 0x3b8]
call fcn.10016488
mov byte [ebp - 4], 0xe
lea ecx, [ebp - 0x3d0]
call fcn.10016488
mov byte [ebp - 4], 0xb
lea ecx, [ebp - 0x2c8]
call fcn.10016488
push 0x614b
lea eax, [ebp - 0x354]
push eax
lea eax, [ebp - 0x500]
push eax
push 0x2a57
push 0
call fcn.10042c89
add esp, 0x14
push 1
push dword [ebp - 0x354]
lea eax, [ebp - 0x524]
push eax
lea ecx, [ebp - 0x500]
call fcn.100484c6
mov dword [ebp - 0x2d0], eax
mov eax, dword [ebp - 0x2d0]
mov dword [ebp - 0x2d8], eax
mov byte [ebp - 4], 0x11
push dword [ebp - 0x2d8]
lea ecx, [ebp - 0x4e8]
call fcn.10022b9d
mov byte [ebp - 4], 0xb
lea ecx, [ebp - 0x524]
call fcn.10016368
jmp 0x100410b2
mov dword [ebp - 0x58], 7
mov dword [ebp - 0x108], 0x7a2d47e1
mov dword [ebp - 0x270], 0x90aaf75d
mov dword [ebp - 0x8c], 0
jmp 0x10041482
mov eax, dword [ebp - 0x8c]
inc eax
mov dword [ebp - 0x8c], eax
cmp dword [ebp - 0x8c], 3
jge 0x1004149e
mov eax, dword [ebp - 0x8c]
mov dword [ebp + eax*4 - 0x9c], 0x7865925e
jmp 0x10041475
push 4
pop eax
shl eax, 0
mov eax, dword [ebp + eax - 0x9c]
mov dword [ebp - 0x4d0], eax
push 4
pop eax
shl eax, 1
push 4
pop ecx
imul ecx, ecx, 0
mov ecx, dword [ebp + ecx - 0x9c]
cmp dword [ebp + eax - 0x9c], ecx
jg 0x100414d8
mov dword [ebp - 0x2e0], 1
jmp 0x100414df
and dword [ebp - 0x2e0], 0
push 4
pop eax
shl eax, 0
mov eax, dword [ebp + eax - 0x9c]
mov dword [ebp - 0x450], eax
cmp dword [ebp - 0x58], 0xfffffffa
jg 0x10041504
mov dword [ebp - 0x248], 1
jmp 0x1004150b
and dword [ebp - 0x248], 0
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x9c]
imul eax, dword [ebp - 0x248]
cmp eax, dword [ebp - 0x58]
jl 0x10041530
mov dword [ebp - 0x250], 1
jmp 0x10041537
and dword [ebp - 0x250], 0
cmp dword [ebp - 0x250], 0x55a6
jle 0x1004154f
mov dword [ebp - 0x258], 1
jmp 0x10041556
and dword [ebp - 0x258], 0
push 4
pop eax
imul eax, eax, 0
mov ecx, dword [ebp - 0x258]
sub ecx, dword [ebp + eax - 0x9c]
push 4
pop eax
shl eax, 0
imul ecx, dword [ebp + eax - 0x9c]
test ecx, ecx
je 0x1004157f
cmp dword [ebp - 0x58], 0
push 4
pop eax
shl eax, 0
mov eax, dword [ebp + eax - 0x9c]
mov dword [ebp - 0x498], eax
mov eax, dword [ebp - 0x58]
mov dword [ebp - 0x458], eax
push 4
pop eax
shl eax, 0
imul eax, dword [ebp + eax - 0x9c], 0xb9c6
test eax, eax
jge 0x100415bc
mov dword [ebp - 0x2e8], 1
jmp 0x100415c3
and dword [ebp - 0x2e8], 0
push 4
pop eax
shl eax, 0
mov eax, dword [ebp + eax - 0x9c]
mov dword [ebp - 0x4c4], eax
mov eax, 0x1480
test eax, eax
jne 0x100415e9
cmp dword [ebp - 0x58], 0
je 0x10041727
mov dword [ebp - 0xbc], 0
mov dword [ebp - 0x13c], 0xfa2e5769
cmp dword [ebp - 0xbc], 0
je 0x100416fc
cmp dword [ebp - 0xbc], 0
jne 0x100416b5
cmp dword [ebp - 0xbc], 0
je 0x100416b5
mov dword [ebp - 0x13c], 4
mov eax, dword [ebp - 0x13c]
mov dword [ebp - 0x460], eax
mov eax, dword [ebp - 0x58]
mov dword [ebp - 0x4a0], eax
mov eax, dword [ebp - 0x13c]
mov dword [ebp - 0x468], eax
push 4
pop eax
shl eax, 0
cmp dword [ebp + eax - 0x9c], 0xfffffffb
jbe 0x1004166b
mov dword [ebp - 0x2f0], 1
jmp 0x10041672
and dword [ebp - 0x2f0], 0
push 4
pop eax
shl eax, 0
mov eax, dword [ebp + eax - 0x9c]
mov dword [ebp - 0x4b4], eax
push 4
pop eax
shl eax, 1
mov eax, dword [ebp + eax - 0x9c]
mov dword [ebp - 0x470], eax
mov eax, dword [ebp - 0x58]
mov dword [ebp - 0x108], eax
cmp dword [ebp - 0x108], 0
jne 0x100416b5
mov dword [ebp - 0x260], 1
jmp 0x100416bc
and dword [ebp - 0x260], 0
cmp dword [ebp - 0x260], 0x51f8
je 0x100416d4
mov dword [ebp - 0x268], 1
jmp 0x100416db
and dword [ebp - 0x268], 0
push 4
pop eax
shl eax, 0
mov ecx, dword [ebp - 0x268]
sub ecx, dword [ebp + eax - 0x9c]
je 0x100416fc
mov dword [ebp - 0x2f8], 1
jmp 0x10041703
and dword [ebp - 0x2f8], 0
mov eax, dword [ebp - 0xbc]
mov dword [ebp - 0x400], eax
mov dword [ebp - 0x270], 0xfffffffc
mov eax, dword [ebp - 0x270]
mov dword [ebp - 0x108], eax
jmp 0x10041743
mov byte [ebp - 0x40], 0
push 0x271e
push 0
push 0x11ae
lea eax, [ebp - 0x40]
push eax
call fcn.10042d45
add esp, 0x10
lea eax, [ebp - 0x4e8]
push eax
mov ecx, dword [ebp + 8]
call fcn.1001630f
mov eax, dword [ebp - 0x278]
or eax, 1
mov dword [ebp - 0x278], eax
mov byte [ebp - 4], 7
lea ecx, [ebp - 0x4e8]
call fcn.10016368
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x500]
call fcn.10016368
mov eax, dword [ebp + 8]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop esi
mov esp, ebp
pop ebp
ret