Function at 0x1004a5a1
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 0x1007f8b1
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x9ec
push esi
and dword [ebp - 0x18], 0
movzx eax, byte [ebp + 0xc]
test eax, eax
je 0x1004ef6d
mov eax, dword [ebp + 8]
mov dword [ebp - 0x20], eax
push 2
lea ecx, [ebp - 0x6b4]
call fcn.10018602
and dword [ebp - 4], 0
push 2
lea ecx, [ebp - 0x708]
call fcn.10018602
mov byte [ebp - 4], 1
mov dword [ebp - 0x604], 0xffffffff
mov dword [ebp - 0x30], 0
jmp 0x1004a612
mov eax, dword [ebp - 0x30]
inc eax
mov dword [ebp - 0x30], eax
cmp dword [ebp - 0x30], 2
jge 0x1004a62b
push dword [ebp - 0x30]
lea ecx, [ebp - 0x6b4]
call fcn.100186a0
and dword [eax], 0
jmp 0x1004a60b
mov dword [ebp - 0x30], 0
jmp 0x1004a63b
mov eax, dword [ebp - 0x30]
inc eax
mov dword [ebp - 0x30], eax
cmp dword [ebp - 0x30], 1
jge 0x1004a64e
mov eax, dword [ebp - 0x30]
mov dword [ebp + eax*4 - 0x78], 3
jmp 0x1004a634
mov dword [ebp - 0x30], 0
jmp 0x1004a65e
mov eax, dword [ebp - 0x30]
inc eax
mov dword [ebp - 0x30], eax
cmp dword [ebp - 0x30], 2
jge 0x1004a67a
push dword [ebp - 0x30]
lea ecx, [ebp - 0x708]
call fcn.100186a0
mov dword [eax], 0xfffffff8
jmp 0x1004a657
push 4
pop eax
imul eax, eax, 0
mov dword [ebp + eax - 0x78], 1
jmp 0x1004a69f
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x78]
dec eax
push 4
pop ecx
imul ecx, ecx, 0
mov dword [ebp + ecx - 0x78], eax
push 4
pop eax
imul eax, eax, 0
cmp dword [ebp + eax - 0x78], 0
jl 0x1004a890
mov dword [ebp - 0x34], 4
mov dword [ebp - 0x518], 3
mov dword [ebp - 0x34], 0
jmp 0x1004a6d1
mov eax, dword [ebp - 0x34]
inc eax
mov dword [ebp - 0x34], eax
cmp dword [ebp - 0x34], 1
jg 0x1004a709
push 4
pop eax
imul eax, eax, 0
push dword [ebp + eax - 0x78]
lea ecx, [ebp - 0x6b4]
call fcn.100186a0
mov esi, eax
push 4
pop eax
imul eax, eax, 0
push dword [ebp + eax - 0x78]
lea ecx, [ebp - 0x6b4]
call fcn.100186a0
mov ecx, dword [esi]
mov dword [eax], ecx
jmp 0x1004a6ca
mov dword [ebp - 0x34], 0
jmp 0x1004a719
mov eax, dword [ebp - 0x34]
inc eax
mov dword [ebp - 0x34], eax
cmp dword [ebp - 0x34], 1
jg 0x1004a88b
mov dword [ebp - 0x1fc], 0xfffffffc
mov eax, dword [ebp - 0x1fc]
cmp dword [ebp - 0x1fc], eax
jne 0x1004a774
mov eax, dword [ebp - 0x1fc]
sub eax, 0xa
cmp eax, dword [ebp - 0x34]
jge 0x1004a755
mov dword [ebp - 0x2e4], 1
jmp 0x1004a75c
and dword [ebp - 0x2e4], 0
cmp dword [ebp - 0x2e4], 0xa41a80d1
jae 0x1004a774
mov dword [ebp - 0x4dc], 1
jmp 0x1004a77b
and dword [ebp - 0x4dc], 0
imul eax, dword [ebp - 0x4dc], 0
test eax, eax
jne 0x1004a795
cmp dword [ebp - 0x34], 0
jne 0x1004a795
and dword [ebp - 0x4e4], 0
jmp 0x1004a79f
mov dword [ebp - 0x4e4], 1
push 0
lea ecx, [ebp - 0x6b4]
call fcn.100186a0
mov ecx, dword [ebp - 0x4e4]
cmp ecx, dword [eax]
jg 0x1004a7c2
mov dword [ebp - 0x510], 1
jmp 0x1004a7c9
and dword [ebp - 0x510], 0
mov eax, dword [ebp - 0x510]
mov dword [ebp - 0x518], eax
mov eax, dword [ebp - 0x1fc]
cmp dword [ebp - 0x518], eax
jl 0x1004a7ef
mov dword [ebp - 0x29c], 1
jmp 0x1004a7f6
and dword [ebp - 0x29c], 0
push 0
lea ecx, [ebp - 0x708]
call fcn.100186a0
mov ecx, dword [ebp - 0x29c]
mov dword [eax], ecx
mov eax, dword [ebp - 0x34]
add eax, dword [ebp - 0x29c]
cmp eax, 0x874b
jge 0x1004a827
mov dword [ebp - 0x530], 1
jmp 0x1004a82e
and dword [ebp - 0x530], 0
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x78]
cmp dword [ebp - 0x530], eax
jne 0x1004a84c
mov dword [ebp - 0x6b8], 1
jmp 0x1004a853
and dword [ebp - 0x6b8], 0
mov eax, dword [ebp - 0x34]
mov dword [ebp - 0x7d8], eax
push 4
pop eax
imul eax, eax, 0
mov esi, dword [ebp + eax - 0x78]
push 0
lea ecx, [ebp - 0x708]
call fcn.100186a0
add esi, dword [eax]
mov dword [ebp - 0x604], esi
cmp dword [ebp - 0x34], 0
je 0x1004a886
jmp 0x1004a712
jmp 0x1004a712
jmp 0x1004a68a
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x708]
call fcn.10018684
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x6b4]
call fcn.10018684
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0x534], eax
push 4
lea ecx, [ebp - 0x79c]
call fcn.10018602
mov dword [ebp - 4], 2
mov dword [ebp - 0x20c], 0xfffffff9
mov dword [ebp - 0x210], 0
jmp 0x1004a8ee
mov eax, dword [ebp - 0x210]
inc eax
mov dword [ebp - 0x210], eax
cmp dword [ebp - 0x210], 4
jge 0x1004a910
push dword [ebp - 0x210]
lea ecx, [ebp - 0x79c]
call fcn.100186a0
mov dword [eax], 6
jmp 0x1004a8e1
push 0x14e5
push 0x6937
lea eax, [ebp - 0x79c]
push eax
push 0x3dd9
push 0
push 0x7ead
call fcn.10049290
add esp, 0x18
mov dword [ebp - 0x20c], 0
jmp 0x1004a94e
mov eax, dword [ebp - 0x20c]
inc eax
mov dword [ebp - 0x20c], eax
cmp dword [ebp - 0x20c], 0x13
je 0x1004aa24
mov dword [ebp - 0x168], 0x9552053
mov byte [ebp - 0xa9], 0
movzx eax, byte [ebp - 0xa9]
test eax, eax
je 0x1004a98b
push 1
push 0x5345
push 0x4ef6
call fcn.10048972
add esp, 0xc
mov dword [ebp - 0x168], 0xffffffee
jmp 0x1004a9a4
mov eax, dword [ebp - 0x168]
inc eax
mov dword [ebp - 0x168], eax
cmp dword [ebp - 0x168], 2
jne 0x1004aa1f
mov dword [ebp - 0x1b0], 0xfffffffd
mov dword [ebp - 0x1b0], 0xfffffff8
jmp 0x1004a9d0
mov eax, dword [ebp - 0x1b0]
inc eax
mov dword [ebp - 0x1b0], eax
cmp dword [ebp - 0x1b0], 8
jne 0x1004a9fa
mov byte [ebp - 0x81], 0
movzx eax, byte [ebp - 0x81]
test eax, eax
je 0x1004a9f8
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.USER32.dll_GetWindowTextLengthA]
jmp 0x1004a9c3
mov byte [ebp - 0xa6], 0
movzx eax, byte [ebp - 0xa6]
test eax, eax
je 0x1004aa1a
push 0x6ad2
push 0
call fcn.10049d12
pop ecx
pop ecx
jmp 0x1004a997
jmp 0x1004a941
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x79c]
call fcn.10018684
mov eax, dword [ebp - 0x534]
movzx eax, word [eax]
cmp eax, 0x5a4d
je 0x1004aa48
jmp 0x1004efa6
mov dword [ebp - 0x1b4], 0x25b9b55b
mov dword [ebp - 0x170], 0
jmp 0x1004aa6b
mov eax, dword [ebp - 0x170]
inc eax
mov dword [ebp - 0x170], eax
cmp dword [ebp - 0x170], 1
jge 0x1004aa87
mov eax, dword [ebp - 0x170]
mov dword [ebp + eax*4 - 0x85c], 0x689351f2
jmp 0x1004aa5e
mov dword [ebp - 0x1b4], 0
jmp 0x1004aaa0
mov eax, dword [ebp - 0x1b4]
inc eax
mov dword [ebp - 0x1b4], eax
cmp dword [ebp - 0x1b4], 0
jle 0x1004aafe
mov dword [ebp - 0x134], 0xfffffffd
mov dword [ebp - 0x134], 0
jmp 0x1004aacc
mov eax, dword [ebp - 0x134]
inc eax
mov dword [ebp - 0x134], eax
cmp dword [ebp - 0x134], 0
jg 0x1004aaf1
mov byte [ebp - 0xa8], 0
movzx eax, byte [ebp - 0xa8]
test eax, eax
je 0x1004aaef
push 1
call fcn.100489d4
pop ecx
jmp 0x1004aabf
cmp dword [ebp - 0x134], 0
je 0x1004aafc
jmp 0x1004aafe
jmp 0x1004aa93
mov eax, dword [ebp - 0x534]
mov ecx, dword [ebp - 0x20]
add ecx, dword [eax + 0x3c]
mov dword [ebp - 0x98], ecx
mov eax, dword [ebp - 0x98]
cmp dword [eax], 0x4550
je 0x1004ab23
jmp 0x1004efa6
mov dword [ebp - 0xec], 0xfffffff7
mov dword [ebp - 0x178], 0
jmp 0x1004ab46
mov eax, dword [ebp - 0x178]
inc eax
mov dword [ebp - 0x178], eax
cmp dword [ebp - 0x178], 2
jge 0x1004ab62
mov eax, dword [ebp - 0x178]
mov dword [ebp + eax*4 - 0x828], 0
jmp 0x1004ab39
mov dword [ebp - 0xec], 0x1a
jmp 0x1004ab7b
mov eax, dword [ebp - 0xec]
inc eax
mov dword [ebp - 0xec], eax
cmp dword [ebp - 0xec], 0x1a
je 0x1004abd1
mov dword [ebp - 0x138], 0xba772304
mov dword [ebp - 0x138], 0
jmp 0x1004aba7
mov eax, dword [ebp - 0x138]
inc eax
mov dword [ebp - 0x138], eax
cmp dword [ebp - 0x138], 1
jg 0x1004abc4
mov eax, dword [ebp - 0x138]
cmp dword [ebp + eax*4 - 0x828], 0
je 0x1004abc2
jmp 0x1004abc4
jmp 0x1004ab9a
cmp dword [ebp - 0xec], 0
je 0x1004abcf
jmp 0x1004abd1
jmp 0x1004ab6e
push 8
pop eax
imul eax, eax, 0
mov ecx, dword [ebp - 0x98]
lea eax, [ecx + eax + 0x78]
mov dword [ebp - 0x48], eax
mov eax, dword [ebp - 0x48]
cmp dword [eax + 4], 0
jne 0x1004abf2
jmp 0x1004efa6
mov dword [ebp - 0x180], 0x25b9b55b
mov dword [ebp - 0x1bc], 0
jmp 0x1004ac15
mov eax, dword [ebp - 0x1bc]
inc eax
mov dword [ebp - 0x1bc], eax
cmp dword [ebp - 0x1bc], 1
jge 0x1004ac31
mov eax, dword [ebp - 0x1bc]
mov dword [ebp + eax*4 - 0x804], 0x689351f2
jmp 0x1004ac08
mov dword [ebp - 0x180], 0
jmp 0x1004ac4a
mov eax, dword [ebp - 0x180]
inc eax
mov dword [ebp - 0x180], eax
cmp dword [ebp - 0x180], 0
jle 0x1004acb5
mov dword [ebp - 0x118], 0xfffffffd
mov dword [ebp - 0x118], 0
jmp 0x1004ac76
mov eax, dword [ebp - 0x118]
inc eax
mov dword [ebp - 0x118], eax
cmp dword [ebp - 0x118], 0
jg 0x1004aca8
mov byte [ebp - 0x83], 0
push 0x2813
push 0x6c3f
push 0
lea eax, [ebp - 0x83]
push eax
push 0x1c33
call fcn.100499b9
add esp, 0x14
jmp 0x1004ac69
cmp dword [ebp - 0x118], 0
je 0x1004acb3
jmp 0x1004acb5
jmp 0x1004ac3d
and dword [ebp - 0x24], 0
mov eax, dword [ebp - 0x98]
movzx eax, word [eax + 0x14]
mov ecx, dword [ebp - 0x98]
lea eax, [ecx + eax + 0x18]
mov dword [ebp - 0xd8], eax
and dword [ebp - 0x2a4], 0
jmp 0x1004acf8
mov eax, dword [ebp - 0x2a4]
inc eax
mov dword [ebp - 0x2a4], eax
mov eax, dword [ebp - 0xd8]
add eax, 0x28
mov dword [ebp - 0xd8], eax
mov eax, dword [ebp - 0x98]
movzx eax, word [eax + 6]
cmp dword [ebp - 0x2a4], eax
jge 0x1004ad79
mov eax, dword [ebp - 0xd8]
mov eax, dword [eax + 0xc]
mov dword [ebp - 0x2d8], eax
mov eax, dword [ebp - 0x48]
mov eax, dword [eax]
cmp eax, dword [ebp - 0x2d8]
jb 0x1004ad74
mov eax, dword [ebp - 0x98]
push dword [eax + 0x38]
mov eax, dword [ebp - 0xd8]
push dword [eax + 8]
call fcn.10048604
pop ecx
pop ecx
add eax, dword [ebp - 0x2d8]
mov dword [ebp - 0x60c], eax
mov eax, dword [ebp - 0x48]
mov eax, dword [eax]
cmp eax, dword [ebp - 0x60c]
jae 0x1004ad74
push 0x5601
push 0
lea eax, [ebp - 0x24]
push eax
lea eax, [ebp - 0xd8]
push eax
call fcn.10049358
add esp, 0x10
jmp 0x1004ad79
jmp 0x1004acdc
cmp dword [ebp - 0x24], 0
jne 0x1004ad84
jmp 0x1004efa6
mov eax, dword [ebp - 0x48]
mov ecx, dword [ebp - 0x24]
add ecx, dword [eax]
add ecx, dword [ebp - 0x20]
mov dword [ebp - 0x14], ecx
mov dword [ebp - 0x2ac], 0x6f1b
mov dword [ebp - 0x2cc], 4
mov dword [ebp - 0x2c4], 0xe5f36f6d
mov dword [ebp - 0x778], 0x693e93
mov dword [ebp - 0x774], 0x693e93
mov dword [ebp - 0x770], 0x693e93
mov dword [ebp - 0x76c], 0x693e93
lea ecx, [ebp - 0x291]
call fcn.10009273
push eax
lea eax, [ebp - 0x768]
push eax
lea eax, [ebp - 0x778]
push eax
lea ecx, [ebp - 0x940]
call fcn.100186af
push dword [eax + 4]
push dword [eax]
lea ecx, [ebp - 0x59c]
call fcn.1001865e
mov dword [ebp - 4], 3
mov dword [ebp - 0x664], 0xc43
mov dword [ebp - 0x70], 0
jmp 0x1004ae2e
mov eax, dword [ebp - 0x70]
inc eax
mov dword [ebp - 0x70], eax
cmp dword [ebp - 0x70], 1
jge 0x1004ae44
mov eax, dword [ebp - 0x70]
mov dword [ebp + eax*4 - 0x288], 1
jmp 0x1004ae27
mov dword [ebp - 0x70], 0
jmp 0x1004ae54
mov eax, dword [ebp - 0x70]
inc eax
mov dword [ebp - 0x70], eax
cmp dword [ebp - 0x70], 4
jge 0x1004ae6a
mov eax, dword [ebp - 0x70]
mov dword [ebp + eax*4 - 0x950], 1
jmp 0x1004ae4d
mov eax, dword [ebp - 0x2cc]
mov dword [ebp - 0x2c4], eax
mov eax, dword [ebp - 0x2c4]
cmp dword [ebp - 0x2ac], eax
jl 0x1004ae99
cmp dword [ebp - 0x2ac], 0
je 0x1004ae99
mov dword [ebp - 0x4d4], 1
jmp 0x1004aea0
and dword [ebp - 0x4d4], 0
push 1
lea ecx, [ebp - 0x59c]
call fcn.100186a0
mov ecx, dword [ebp - 0x4d4]
mov dword [eax], ecx
push 1
lea ecx, [ebp - 0x59c]
call fcn.100186a0
cmp dword [eax], 0xc5b1510a
jbe 0x1004aed6
mov dword [ebp - 0x4b0], 1
jmp 0x1004aedd
and dword [ebp - 0x4b0], 0
mov eax, dword [ebp - 0x2cc]
add eax, dword [ebp - 0x4b0]
je 0x1004aef8
push 1
lea ecx, [ebp - 0x59c]
call fcn.100186a0
mov eax, dword [ebp - 0x664]
cmp dword [ebp - 0x2ac], eax
jne 0x1004af12
mov dword [ebp - 0x2e0], 1
jmp 0x1004af19
and dword [ebp - 0x2e0], 0
cmp dword [ebp - 0x2e0], 0x1c3f
jge 0x1004af31
mov dword [ebp - 0x418], 1
jmp 0x1004af38
and dword [ebp - 0x418], 0
cmp dword [ebp - 0x418], 7
jl 0x1004af4d
mov dword [ebp - 0x66c], 1
jmp 0x1004af54
and dword [ebp - 0x66c], 0
mov eax, dword [ebp - 0x2c4]
mov dword [ebp - 0x860], eax
push 1
lea ecx, [ebp - 0x59c]
call fcn.100186a0
mov eax, dword [ebp - 0x2cc]
mov dword [ebp - 0x814], eax
push 1
lea ecx, [ebp - 0x59c]
call fcn.100186a0
push 4
pop eax
imul eax, eax, 0
push 4
pop ecx
imul ecx, ecx, 0
mov ecx, dword [ebp + ecx - 0x288]
cmp dword [ebp + eax - 0x288], ecx
je 0x1004afae
mov dword [ebp - 0x2e8], 1
jmp 0x1004afb5
and dword [ebp - 0x2e8], 0
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x288]
cmp dword [ebp - 0x2e8], eax
jg 0x1004afd6
mov dword [ebp - 0x52c], 1
jmp 0x1004afdd
and dword [ebp - 0x52c], 0
push 4
pop eax
shl eax, 0
mov ecx, dword [ebp - 0x52c]
mov dword [ebp + eax - 0x950], ecx
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x59c]
call fcn.10018684
xor ecx, ecx
call fcn.10030685
push eax
call fcn.10066f88
pop ecx
push 2
lea ecx, [ebp - 0x810]
call fcn.10018602
mov dword [ebp - 4], 4
push 2
lea ecx, [ebp - 0x6c4]
call fcn.10018602
mov byte [ebp - 4], 5
mov dword [ebp - 0x1c4], 0xed9ba07e
mov dword [ebp - 0xf4], 0
jmp 0x1004b055
mov eax, dword [ebp - 0xf4]
inc eax
mov dword [ebp - 0xf4], eax
cmp dword [ebp - 0xf4], 2
jge 0x1004b077
push dword [ebp - 0xf4]
lea ecx, [ebp - 0x810]
call fcn.100186a0
mov dword [eax], 0x6482
jmp 0x1004b048
push 0x9fc
lea eax, [ebp - 0x6c4]
push eax
push 0
push 0xd3f
push 0x4e40
lea eax, [ebp - 0xf4]
push eax
call fcn.1004a4a8
add esp, 0x18
push 1
lea ecx, [ebp - 0x6c4]
call fcn.100186a0
and dword [eax], 0
jmp 0x1004b0d4
push 1
lea ecx, [ebp - 0x6c4]
call fcn.100186a0
mov dword [ebp - 0x2f0], eax
mov eax, dword [ebp - 0x2f0]
mov eax, dword [eax]
inc eax
mov ecx, dword [ebp - 0x2f0]
mov dword [ecx], eax
push 1
lea ecx, [ebp - 0x6c4]
call fcn.100186a0
cmp dword [eax], 1
jg 0x1004b10d
mov dword [ebp - 0x674], 0xb34e6d4f
push 0
lea eax, [ebp - 0x674]
push eax
push 0x3dfa
push 0x424f
call fcn.10049acf
add esp, 0x10
jmp 0x1004b0b0
mov dword [ebp - 0x1c4], 0
jmp 0x1004b126
mov eax, dword [ebp - 0x1c4]
dec eax
mov dword [ebp - 0x1c4], eax
cmp dword [ebp - 0x1c4], 0xffffffe5
jne 0x1004b15f
mov dword [ebp - 0x67c], 0x7a5b7d8c
mov byte [ebp - 0x7d], 0
movzx eax, byte [ebp - 0x7d]
test eax, eax
je 0x1004b153
push 1
push 0x6787
call fcn.10048a05
pop ecx
pop ecx
mov dword [ebp - 0x67c], 0x9ee1c974
jmp 0x1004b119
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x6c4]
call fcn.10018684
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x810]
call fcn.10018684
mov dword [ebp - 0xdc], 0xffffffff
mov dword [ebp - 0x328], 0
mov dword [ebp - 0x2a8], 0xe7ed6f18
mov dword [ebp - 0x684], 0x9193c1de
mov dword [ebp - 0x290], 0xb441791e
mov dword [ebp - 0x428], 0x7ad11e75
mov dword [ebp - 0x310], 0xf171
mov dword [ebp - 0x60], 0
jmp 0x1004b1d3
mov eax, dword [ebp - 0x60]
inc eax
mov dword [ebp - 0x60], eax
cmp dword [ebp - 0x60], 1
jge 0x1004b1e9
mov eax, dword [ebp - 0x60]
mov dword [ebp + eax*4 - 0x318], 0xf55e00fe
jmp 0x1004b1cc
mov dword [ebp - 0x60], 0
jmp 0x1004b1f9
mov eax, dword [ebp - 0x60]
inc eax
mov dword [ebp - 0x60], eax
cmp dword [ebp - 0x60], 2
jge 0x1004b20f
mov eax, dword [ebp - 0x60]
mov dword [ebp + eax*4 - 0x618], 0xbfbd3aeb
jmp 0x1004b1f2
mov eax, dword [ebp - 0xdc]
mov dword [ebp - 0x868], eax
mov eax, dword [ebp - 0x2a8]
mov dword [ebp - 0x838], eax
mov eax, dword [ebp - 0x428]
cmp dword [ebp - 0x2a8], eax
jl 0x1004b241
mov dword [ebp - 0x420], 1
jmp 0x1004b248
and dword [ebp - 0x420], 0
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x318]
cmp dword [ebp - 0x420], eax
jge 0x1004b269
mov dword [ebp - 0x2f8], 1
jmp 0x1004b270
and dword [ebp - 0x2f8], 0
push 4
pop eax
shl eax, 0
mov eax, dword [ebp + eax - 0x618]
imul eax, dword [ebp - 0x2f8]
cmp eax, 0xffffffff
jl 0x1004b295
mov dword [ebp - 0x4b8], 1
jmp 0x1004b29c
and dword [ebp - 0x4b8], 0
mov eax, dword [ebp - 0x684]
imul eax, dword [ebp - 0x4b8]
cmp eax, 0x25a95506
je 0x1004b2bc
mov dword [ebp - 0x300], 1
jmp 0x1004b2c3
and dword [ebp - 0x300], 0
mov eax, dword [ebp - 0x2a8]
cmp dword [ebp - 0x300], eax
jl 0x1004b2e6
mov eax, 0xce094bf7
test eax, eax
je 0x1004b2e6
mov dword [ebp - 0x308], 1
jmp 0x1004b2ed
and dword [ebp - 0x308], 0
mov eax, dword [ebp - 0x428]
cmp dword [ebp - 0x308], eax
jle 0x1004b307
mov dword [ebp - 0x504], 1
jmp 0x1004b30e
and dword [ebp - 0x504], 0
mov eax, dword [ebp - 0x310]
cmp dword [ebp - 0x504], eax
jg 0x1004b328
mov dword [ebp - 0x430], 1
jmp 0x1004b32f
and dword [ebp - 0x430], 0
mov eax, dword [ebp - 0x310]
cmp dword [ebp - 0x430], eax
jne 0x1004b349
mov dword [ebp - 0x4c0], 1
jmp 0x1004b350
and dword [ebp - 0x4c0], 0
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x318]
cmp dword [ebp - 0x4c0], eax
je 0x1004b371
mov dword [ebp - 0x320], 1
jmp 0x1004b378
and dword [ebp - 0x320], 0
mov eax, dword [ebp - 0x320]
shl eax, 2
cmp dword [ebp - 0xdc], eax
jle 0x1004b395
mov dword [ebp - 0x438], 1
jmp 0x1004b39c
and dword [ebp - 0x438], 0
mov eax, dword [ebp - 0x290]
inc eax
mov dword [ebp - 0x290], eax
mov eax, dword [ebp - 0x290]
mov dword [ebp - 0x328], eax
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x618]
mov ecx, dword [ebp - 0x438]
lea eax, [ecx + eax - 0xd983]
cmp dword [ebp - 0x328], eax
jg 0x1004b3e3
mov dword [ebp - 0x51c], 1
jmp 0x1004b3ea
and dword [ebp - 0x51c], 0
push 4
pop eax
imul eax, eax, 0
mov ecx, dword [ebp - 0x51c]
mov dword [ebp + eax - 0x618], ecx
mov dword [ebp - 0xdc], 0xffffffe9
jmp 0x1004b416
mov eax, dword [ebp - 0xdc]
inc eax
mov dword [ebp - 0xdc], eax
cmp dword [ebp - 0xdc], 0x2d
jne 0x1004b475
mov byte [ebp - 0x87], 0
push 0x6d28
push 0x47
push 0x6549
lea eax, [ebp - 0x87]
push eax
push 1
push 0x3eb1
push 0x374b
call fcn.10048a32
add esp, 0x1c
mov byte [ebp - 0x85], 0
movzx eax, byte [ebp - 0x85]
test eax, eax
je 0x1004b473
push 0
push 0x3295
push 0x1270
call fcn.10049228
add esp, 0xc
jmp 0x1004b409
mov byte [ebp - 0x280], 8
mov byte [ebp - 0x27f], 0x79
mov byte [ebp - 0x27e], 4
mov byte [ebp - 0x27d], 8
mov byte [ebp - 0x27c], 0
mov byte [ebp - 0x27b], 9
mov byte [ebp - 0x27a], 7
mov byte [ebp - 0x279], 7
mov byte [ebp - 0x278], 9
mov byte [ebp - 0x277], 6
mov byte [ebp - 0x276], 5
mov byte [ebp - 0x275], 1
mov byte [ebp - 0x274], 3
mov byte [ebp - 0x273], 6
mov byte [ebp - 0x272], 6
mov byte [ebp - 0x271], 6
mov byte [ebp - 0x270], 1
mov byte [ebp - 0x26f], 4
mov byte [ebp - 0x26e], 0x4a
mov byte [ebp - 0x26d], 0x2c
mov byte [ebp - 0x26c], 0xa8
mov byte [ebp - 0x26b], 0x42
mov byte [ebp - 0x26a], 0xa
mov byte [ebp - 0x269], 0x6b
mov byte [ebp - 0x268], 0x6a
mov byte [ebp - 0x267], 0x5a
mov byte [ebp - 0x266], 0x8f
mov byte [ebp - 0x265], 0xc6
mov byte [ebp - 0x264], 0x2a
mov byte [ebp - 0x263], 0x77
mov byte [ebp - 0x262], 0x2b
mov byte [ebp - 0x261], 0xf6
mov byte [ebp - 0x260], 0x5e
mov byte [ebp - 0x25f], 0x92
mov byte [ebp - 0x25e], 0x19
mov byte [ebp - 0x25d], 0xae
mov byte [ebp - 0x25c], 0x13
mov byte [ebp - 0x25b], 0xe0
mov byte [ebp - 0x25a], 0x82
mov byte [ebp - 0x259], 0x41
mov byte [ebp - 0x258], 0x85
mov byte [ebp - 0x257], 0xb2
mov byte [ebp - 0x256], 3
mov byte [ebp - 0x255], 0
mov byte [ebp - 0x254], 0xa5
mov byte [ebp - 0x253], 0xe1
mov byte [ebp - 0x252], 0x5f
mov byte [ebp - 0x251], 0xd6
mov byte [ebp - 0x250], 0xc1
mov byte [ebp - 0x24f], 0x84
mov byte [ebp - 0x24e], 0x16
mov byte [ebp - 0x24d], 0x6c
mov byte [ebp - 0x24c], 0xbb
mov byte [ebp - 0x24b], 0xa6
mov byte [ebp - 0x24a], 0x95
mov byte [ebp - 0x249], 0x4e
mov byte [ebp - 0x248], 0x1e
mov byte [ebp - 0x247], 0xe4
mov byte [ebp - 0x246], 0x34
mov byte [ebp - 0x245], 0xdf
mov byte [ebp - 0x244], 0x51
mov byte [ebp - 0x243], 0x89
mov byte [ebp - 0x242], 0x31
mov byte [ebp - 0x241], 0x9e
mov byte [ebp - 0x240], 0x62
mov byte [ebp - 0x23f], 0x95
mov byte [ebp - 0x23e], 0x60
mov byte [ebp - 0x23d], 0xf8
mov byte [ebp - 0x23c], 0x16
mov byte [ebp - 0x23b], 0xd4
mov byte [ebp - 0x23a], 0xc8
mov byte [ebp - 0x239], 0xb8
mov byte [ebp - 0x238], 0xaa
mov byte [ebp - 0x237], 0xe1
mov byte [ebp - 0x236], 0x50
mov byte [ebp - 0x235], 0xd0
mov byte [ebp - 0x234], 0x16
mov byte [ebp - 0x233], 0x4b
mov byte [ebp - 0x232], 0x4e
mov byte [ebp - 0x231], 0xfd
mov byte [ebp - 0x230], 0x19
mov byte [ebp - 0x22f], 0x18
mov byte [ebp - 0x22e], 0xa
mov byte [ebp - 0x22d], 0x18
mov byte [ebp - 0x22c], 0x71
mov byte [ebp - 0x22b], 9
mov byte [ebp - 0x22a], 0x83
mov byte [ebp - 0x229], 0xfd
mov byte [ebp - 0x228], 0x94
mov byte [ebp - 0x227], 0x42
mov byte [ebp - 0x226], 0x1c
mov byte [ebp - 0x225], 0xf8
mov byte [ebp - 0x224], 0x22
mov byte [ebp - 0x223], 2
mov byte [ebp - 0x222], 2
xor eax, eax
inc eax
shl eax, 0
movzx eax, byte [ebp + eax - 0x280]
or eax, 0x49
xor ecx, ecx
inc ecx
shl ecx, 0
movzx ecx, byte [ebp + ecx - 0x280]
and ecx, 0x49
sub eax, ecx
xor ecx, ecx
inc ecx
imul ecx, ecx, 0
movzx ecx, byte [ebp + ecx - 0x280]
mov byte [ebp + ecx - 0x550], al
mov dword [ebp - 0x28], 2
and dword [ebp - 0x11c], 0
jmp 0x1004b75f
mov eax, dword [ebp - 0x28]
inc eax
inc eax
mov dword [ebp - 0x28], eax
cmp dword [ebp - 0x28], 0x5f
jae 0x1004b83d
xor eax, eax
inc eax
imul eax, eax, 0
movzx eax, byte [ebp + eax - 0x280]
lea eax, [eax + eax + 2]
cmp dword [ebp - 0x28], eax
jne 0x1004b7a9
mov eax, dword [ebp - 0x28]
movzx eax, byte [ebp + eax - 0x280]
inc eax
mov dword [ebp - 0x11c], eax
mov eax, dword [ebp - 0x28]
movzx eax, byte [ebp + eax - 0x280]
mov ecx, dword [ebp - 0x28]
lea eax, [ecx + eax - 1]
mov dword [ebp - 0x28], eax
jmp 0x1004b757
mov eax, dword [ebp - 0x28]
movzx eax, byte [ebp + eax - 0x27f]
mov ecx, dword [ebp - 0x28]
sub ecx, dword [ebp - 0x11c]
movzx ecx, byte [ebp + ecx - 0x282]
movsx ecx, byte [ebp + ecx - 0x550]
add eax, ecx
mov ecx, dword [ebp - 0x28]
movzx ecx, byte [ebp + ecx - 0x27f]
mov edx, dword [ebp - 0x28]
sub edx, dword [ebp - 0x11c]
movzx edx, byte [ebp + edx - 0x282]
movsx edx, byte [ebp + edx - 0x550]
and ecx, edx
sub eax, ecx
mov ecx, dword [ebp - 0x28]
movzx ecx, byte [ebp + ecx - 0x27f]
mov edx, dword [ebp - 0x28]
sub edx, dword [ebp - 0x11c]
movzx edx, byte [ebp + edx - 0x282]
movsx edx, byte [ebp + edx - 0x550]
and ecx, edx
sub eax, ecx
mov ecx, dword [ebp - 0x28]
movzx ecx, byte [ebp + ecx - 0x280]
mov byte [ebp + ecx - 0x550], al
and dword [ebp - 0x11c], 0
jmp 0x1004b757
xor eax, eax
inc eax
imul eax, eax, 0xa
mov byte [ebp + eax - 0x550], 0
mov dword [ebp - 0xc8], 0xa115252c
push 3
lea ecx, [ebp - 0x7b4]
call fcn.10018602
mov dword [ebp - 4], 6
mov dword [ebp - 0x68c], 0
mov dword [ebp - 0x68], 0
jmp 0x1004b883
mov eax, dword [ebp - 0x68]
inc eax
mov dword [ebp - 0x68], eax
cmp dword [ebp - 0x68], 3
jge 0x1004b899
mov eax, dword [ebp - 0x68]
mov dword [ebp + eax*4 - 0x8fc], 0xc033
jmp 0x1004b87c
mov dword [ebp - 0x68], 0
jmp 0x1004b8a9
mov eax, dword [ebp - 0x68]
inc eax
mov dword [ebp - 0x68], eax
cmp dword [ebp - 0x68], 3
jge 0x1004b8c5
push dword [ebp - 0x68]
lea ecx, [ebp - 0x7b4]
call fcn.100186a0
mov dword [eax], 0x7222631
jmp 0x1004b8a2
mov dword [ebp - 0xc8], 0
jmp 0x1004b8de
mov eax, dword [ebp - 0xc8]
inc eax
mov dword [ebp - 0xc8], eax
cmp dword [ebp - 0xc8], 3
jge 0x1004b8fa
mov eax, dword [ebp - 0xc8]
mov dword [ebp + eax*4 - 0x8fc], 0x3638
jmp 0x1004b8d1
push 0
lea eax, [ebp - 0x68c]
push eax
push 0x6b4b
push 0xd1e
lea eax, [ebp - 0xc8]
push eax
lea eax, [ebp - 0x7b4]
push eax
call fcn.10049d5e
add esp, 0x18
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x7b4]
call fcn.10018684
lea eax, [ebp - 0x550]
push eax
lea ecx, [ebp - 0x9c8]
call fcn.100267c4
mov dword [ebp - 0x694], eax
mov eax, dword [ebp - 0x694]
mov dword [ebp - 0x69c], eax
mov dword [ebp - 4], 7
push 0xa
xor edx, edx
mov ecx, dword [ebp - 0x69c]
call fcn.1003064a
pop ecx
mov dword [ebp - 0x5c0], eax
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x9c8]
call fcn.10018564
push 1
lea ecx, [ebp - 0x820]
call fcn.10018602
mov dword [ebp - 4], 8
mov dword [ebp - 0x188], 0xfffffffe
push 1
lea eax, [ebp - 0x870]
push eax
push 0x77cb
push 0x2ba4
lea eax, [ebp - 0x820]
push eax
call fcn.10048bd0
add esp, 0x14
mov byte [ebp - 0xa3], 0
movzx eax, byte [ebp - 0xa3]
test eax, eax
je 0x1004b9f7
push 0x402
push 0x660d
push 0x76bc
push 0xac8
push 0
push 0x4298
call fcn.10049194
add esp, 0x18
mov dword [ebp - 0x188], 0
jmp 0x1004ba10
mov eax, dword [ebp - 0x188]
inc eax
mov dword [ebp - 0x188], eax
cmp dword [ebp - 0x188], 0
jg 0x1004ba35
mov byte [ebp - 0x89], 0
movzx eax, byte [ebp - 0x89]
test eax, eax
je 0x1004ba33
push 0
call fcn.10049452
pop ecx
jmp 0x1004ba03
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x820]
call fcn.10018684
and dword [ebp - 0x1cc], 0
jmp 0x1004ba5a
mov eax, dword [ebp - 0x1cc]
inc eax
mov dword [ebp - 0x1cc], eax
cmp dword [ebp - 0x1cc], 0xb
jae 0x1004ba73
mov eax, dword [ebp - 0x1cc]
mov byte [ebp + eax - 0x550], 0
jmp 0x1004ba4d
mov dword [ebp - 0x190], 0xd6c05baf
mov dword [ebp - 0x190], 1
jmp 0x1004ba96
mov eax, dword [ebp - 0x190]
dec eax
mov dword [ebp - 0x190], eax
cmp dword [ebp - 0x190], 0xfffffff5
jg 0x1004baef
mov dword [ebp - 0x1d4], 0
mov dword [ebp - 0x1d4], 0
jmp 0x1004bac2
mov eax, dword [ebp - 0x1d4]
inc eax
mov dword [ebp - 0x1d4], eax
cmp dword [ebp - 0x1d4], 0x18
jge 0x1004baed
mov byte [ebp - 0xa7], 0
movzx eax, byte [ebp - 0xa7]
test eax, eax
je 0x1004baeb
push 0
push 0x7626
call fcn.10048d8e
pop ecx
pop ecx
jmp 0x1004bab5
jmp 0x1004ba89
mov dword [ebp - 0x198], 0
mov dword [ebp - 0x198], 0x12
jmp 0x1004bb12
mov eax, dword [ebp - 0x198]
dec eax
mov dword [ebp - 0x198], eax
cmp dword [ebp - 0x198], 0xfffffffc
jne 0x1004bb58
mov dword [ebp - 0x6a4], 0
mov byte [ebp - 0x8b], 0
movzx eax, byte [ebp - 0x8b]
test eax, eax
je 0x1004bb4b
push 0x749
push 0
push 0xac5
call fcn.10048d1d
add esp, 0xc
cmp dword [ebp - 0x6a4], 0
je 0x1004bb56
jmp 0x1004bb58
jmp 0x1004bb05
mov byte [ebp - 0x154], 9
mov byte [ebp - 0x153], 0xec
mov byte [ebp - 0x152], 0
mov byte [ebp - 0x151], 1
mov byte [ebp - 0x150], 8
mov byte [ebp - 0x14f], 1
mov byte [ebp - 0x14e], 6
mov byte [ebp - 0x14d], 9
mov byte [ebp - 0x14c], 1
mov byte [ebp - 0x14b], 0xf
mov byte [ebp - 0x14a], 2
mov byte [ebp - 0x149], 1
mov byte [ebp - 0x148], 3
mov byte [ebp - 0x147], 5
mov byte [ebp - 0x146], 4
mov byte [ebp - 0x145], 6
mov byte [ebp - 0x144], 5
mov byte [ebp - 0x143], 5
mov byte [ebp - 0x142], 7
mov byte [ebp - 0x141], 7
mov byte [ebp - 0x140], 4
mov byte [ebp - 0x13f], 0x9e
mov byte [ebp - 0x13e], 0x55
mov byte [ebp - 0x13d], 0x93
mov byte [ebp - 0x13c], 0xf6
xor eax, eax
inc eax
shl eax, 0
movzx eax, byte [ebp + eax - 0x154]
or eax, 0xdc
xor ecx, ecx
inc ecx
shl ecx, 0
movzx ecx, byte [ebp + ecx - 0x154]
and ecx, 0xdc
sub eax, ecx
xor ecx, ecx
inc ecx
imul ecx, ecx, 0
movzx ecx, byte [ebp + ecx - 0x154]
mov byte [ebp + ecx - 0x580], al
mov dword [ebp - 0x3c], 2
and dword [ebp - 0x1dc], 0
jmp 0x1004bc5d
mov eax, dword [ebp - 0x3c]
inc eax
inc eax
mov dword [ebp - 0x3c], eax
cmp dword [ebp - 0x3c], 0x19
jae 0x1004bd13
xor eax, eax
inc eax
imul eax, eax, 0
movzx eax, byte [ebp + eax - 0x154]
lea eax, [eax + eax + 2]
cmp dword [ebp - 0x3c], eax
jne 0x1004bca7
mov eax, dword [ebp - 0x3c]
movzx eax, byte [ebp + eax - 0x154]
inc eax
mov dword [ebp - 0x1dc], eax
mov eax, dword [ebp - 0x3c]
movzx eax, byte [ebp + eax - 0x154]
mov ecx, dword [ebp - 0x3c]
lea eax, [ecx + eax - 1]
mov dword [ebp - 0x3c], eax
jmp 0x1004bc55
mov eax, dword [ebp - 0x3c]
movzx eax, byte [ebp + eax - 0x153]
mov ecx, dword [ebp - 0x3c]
sub ecx, dword [ebp - 0x1dc]
movzx ecx, byte [ebp + ecx - 0x156]
movsx ecx, byte [ebp + ecx - 0x580]
or eax, ecx
mov ecx, dword [ebp - 0x3c]
movzx ecx, byte [ebp + ecx - 0x153]
mov edx, dword [ebp - 0x3c]
sub edx, dword [ebp - 0x1dc]
movzx edx, byte [ebp + edx - 0x156]
movsx edx, byte [ebp + edx - 0x580]
and ecx, edx
sub eax, ecx
mov ecx, dword [ebp - 0x3c]
movzx ecx, byte [ebp + ecx - 0x154]
mov byte [ebp + ecx - 0x580], al
and dword [ebp - 0x1dc], 0
jmp 0x1004bc55
xor eax, eax
inc eax
imul eax, eax, 0xa
mov byte [ebp + eax - 0x580], 0
mov dword [ebp - 0x544], 0xa5d6c05b
mov dword [ebp - 0x540], 0xa5d6c05b
mov dword [ebp - 0x53c], 0xa5d6c05b
mov dword [ebp - 0x538], 0xa5d6c05b
mov dword [ebp - 0x54], 0x8da8e97e
mov dword [ebp - 0xfc], 0xfffffff8
mov dword [ebp - 0x54], 0
jmp 0x1004bd6a
mov eax, dword [ebp - 0x54]
inc eax
mov dword [ebp - 0x54], eax
cmp dword [ebp - 0x54], 3
jg 0x1004bd89
mov byte [ebp - 0xa5], 0
push 1
lea eax, [ebp - 0xa5]
push eax
call fcn.10048c77
pop ecx
pop ecx
jmp 0x1004bd63
mov dword [ebp - 0xfc], 0xa1e1c5a3
cmp dword [ebp - 0xfc], 0
je 0x1004be07
cmp dword [ebp - 0x54], 1
jg 0x1004bdae
mov dword [ebp - 0x6f4], 1
jmp 0x1004bdb5
and dword [ebp - 0x6f4], 0
xor eax, eax
je 0x1004bdc0
cmp dword [ebp - 0xfc], 0
mov eax, dword [ebp - 0xfc]
mov dword [ebp - 0x848], eax
mov eax, dword [ebp - 0xfc]
mov dword [ebp - 0x878], eax
push 4
pop eax
imul eax, eax, 3
mov eax, dword [ebp + eax - 0x544]
mov dword [ebp - 0x858], eax
push 4
pop eax
shl eax, 0
cmp dword [ebp + eax - 0x544], 0
je 0x1004be07
mov dword [ebp - 0x330], 1
jmp 0x1004be0e
and dword [ebp - 0x330], 0
push 4
pop eax
imul eax, eax, 3
mov eax, dword [ebp + eax - 0x544]
cmp dword [ebp - 0x330], eax
jge 0x1004be2f
mov dword [ebp - 0x6fc], 1
jmp 0x1004be36
and dword [ebp - 0x6fc], 0
push 4
pop eax
shl eax, 0
mov eax, dword [ebp + eax - 0x544]
mov dword [ebp - 0x880], eax
push 4
pop eax
shl eax, 0
mov eax, dword [ebp + eax - 0x544]
cmp dword [ebp - 0x54], eax
je 0x1004be67
mov dword [ebp - 0x440], 1
jmp 0x1004be6e
and dword [ebp - 0x440], 0
mov eax, dword [ebp - 0x54]
imul eax, dword [ebp - 0x440]
add eax, 0x4374
cmp eax, 0xfffffffd
jne 0x1004bea0
or eax, 0xffffffff
jne 0x1004bea0
push 4
pop eax
imul eax, eax, 0
cmp dword [ebp + eax - 0x544], 0
jne 0x1004bea0
and dword [ebp - 0x6e0], 0
jmp 0x1004beaa
mov dword [ebp - 0x6e0], 1
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x544]
mov dword [ebp - 0x888], eax
push 4
pop eax
shl eax, 1
cmp dword [ebp + eax - 0x544], 0xdd253d97
jbe 0x1004bedf
xor eax, eax
je 0x1004bedf
mov dword [ebp - 0x338], 1
jmp 0x1004bee6
and dword [ebp - 0x338], 0
cmp dword [ebp - 0x338], 0x39150040
jle 0x1004befe
mov dword [ebp - 0x4c8], 1
jmp 0x1004bf05
and dword [ebp - 0x4c8], 0
mov eax, dword [ebp - 0x4c8]
dec eax
sub eax, dword [ebp - 0x54]
cmp eax, 0x891c
jle 0x1004bf22
mov dword [ebp - 0x340], 1
jmp 0x1004bf29
and dword [ebp - 0x340], 0
mov eax, dword [ebp - 0x340]
mov dword [ebp - 0x54], eax
lea eax, [ebp - 0x580]
push eax
lea ecx, [ebp - 0x980]
call fcn.100267c4
mov dword [ebp - 0x630], eax
mov eax, dword [ebp - 0x630]
mov dword [ebp - 0x5a8], eax
mov dword [ebp - 4], 9
push 0xa
xor edx, edx
mov ecx, dword [ebp - 0x5a8]
call fcn.1003064a
pop ecx
mov dword [ebp - 0x6f8], eax
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x980]
call fcn.10018564
mov dword [ebp - 0x38], 0xc2e0cf57
mov dword [ebp - 0x1e4], 0xffffffff
mov dword [ebp - 0x38], 0xfffffffa
jmp 0x1004bfa3
mov eax, dword [ebp - 0x38]
dec eax
mov dword [ebp - 0x38], eax
cmp dword [ebp - 0x38], 0xfffffff0
jge 0x1004c107
mov dword [ebp - 0x448], 0x8b5131d8
mov dword [ebp - 0x5fc], 0
mov dword [ebp - 0x1a0], 0
jmp 0x1004bfda
mov eax, dword [ebp - 0x1a0]
inc eax
mov dword [ebp - 0x1a0], eax
cmp dword [ebp - 0x1a0], 4
jge 0x1004bff6
mov eax, dword [ebp - 0x1a0]
mov dword [ebp + eax*4 - 0x8e0], 0x416db6d0
jmp 0x1004bfcd
push 4
pop eax
imul eax, eax, 3
mov eax, dword [ebp + eax - 0x8e0]
mov dword [ebp - 0x448], eax
mov eax, dword [ebp - 0x448]
neg eax
cmp eax, dword [ebp - 0x1e4]
jg 0x1004c025
mov dword [ebp - 0x358], 1
jmp 0x1004c02c
and dword [ebp - 0x358], 0
cmp dword [ebp - 0x38], 0x9a2b82bf
jne 0x1004c041
mov dword [ebp - 0x348], 1
jmp 0x1004c048
and dword [ebp - 0x348], 0
cmp dword [ebp - 0x348], 0xf58382bd
jae 0x1004c060
mov dword [ebp - 0x50c], 1
jmp 0x1004c067
and dword [ebp - 0x50c], 0
imul eax, dword [ebp - 0x50c], 0x746e
test eax, eax
je 0x1004c086
xor eax, eax
inc eax
je 0x1004c086
mov dword [ebp - 0x350], 1
jmp 0x1004c08d
and dword [ebp - 0x350], 0
cmp dword [ebp - 0x350], 0xfffffffd
je 0x1004c0a2
mov dword [ebp - 0x450], 1
jmp 0x1004c0a9
and dword [ebp - 0x450], 0
push 4
pop eax
imul eax, eax, 3
mov eax, dword [ebp + eax - 0x8e0]
cmp dword [ebp - 0x450], eax
jge 0x1004c0ca
mov dword [ebp - 0x4d0], 1
jmp 0x1004c0d1
and dword [ebp - 0x4d0], 0
mov eax, dword [ebp - 0x38]
imul eax, dword [ebp - 0x358]
cmp eax, dword [ebp - 0x4d0]
jl 0x1004c0ef
mov dword [ebp - 0x360], 1
jmp 0x1004c0f6
and dword [ebp - 0x360], 0
mov eax, dword [ebp - 0x360]
mov dword [ebp - 0x5fc], eax
jmp 0x1004bf9c
mov eax, dword [ebp - 0x1e4]
cmp dword [ebp - 0x38], eax
jge 0x1004c11e
mov dword [ebp - 0x5a0], 1
jmp 0x1004c125
and dword [ebp - 0x5a0], 0
cmp dword [ebp - 0x1e4], 0x6e52
jge 0x1004c13d
mov dword [ebp - 0x458], 1
jmp 0x1004c144
and dword [ebp - 0x458], 0
imul eax, dword [ebp - 0x458], 0x7fb0
cmp eax, 0x4067
jge 0x1004c161
mov dword [ebp - 0x368], 1
jmp 0x1004c168
and dword [ebp - 0x368], 0
mov eax, dword [ebp - 0x1e4]
imul eax, dword [ebp - 0x368]
mov ecx, 0xda2a
sub ecx, eax
cmp ecx, dword [ebp - 0x38]
jl 0x1004c18d
mov dword [ebp - 0x5b0], 1
jmp 0x1004c194
and dword [ebp - 0x5b0], 0
push 0xfffffffffffffff7
pop eax
test eax, eax
je 0x1004c1b7
mov byte [ebp - 0x8d], 0
movzx eax, byte [ebp - 0x8d]
test eax, eax
je 0x1004c1b5
push 0
call fcn.10049c05
pop ecx
jmp 0x1004c208
mov dword [ebp - 0x5b8], 0x3253674f
mov dword [ebp - 0x670], 0x2cbd4dae
mov dword [ebp - 0x38], 0
jmp 0x1004c1db
mov eax, dword [ebp - 0x38]
inc eax
mov dword [ebp - 0x38], eax
cmp dword [ebp - 0x38], 0xe
jge 0x1004c1eb
cmp dword [ebp - 0x38], 0
je 0x1004c1e9
jmp 0x1004c1eb
jmp 0x1004c1d4
lea eax, [ebp - 0x670]
push eax
lea eax, [ebp - 0x5b8]
push eax
push 1
push 0xd26
call fcn.10048cd0
add esp, 0x10
and dword [ebp - 0x1a8], 0
jmp 0x1004c21e
mov eax, dword [ebp - 0x1a8]
inc eax
mov dword [ebp - 0x1a8], eax
cmp dword [ebp - 0x1a8], 0xb
jae 0x1004c237
mov eax, dword [ebp - 0x1a8]
mov byte [ebp + eax - 0x580], 0
jmp 0x1004c211
push dword [ebp - 0x6f8]
push dword [ebp - 0x5c0]
call fcn.1004584e
pop ecx
pop ecx
mov dword [ebp - 0x460], eax
mov dword [ebp - 0x1ec], 0
mov dword [ebp - 0x744], 0
mov dword [ebp - 0x740], 0
mov dword [ebp - 0x73c], 0
mov dword [ebp - 0x738], 0
mov dword [ebp - 0x1ec], 0x15
jmp 0x1004c29b
mov eax, dword [ebp - 0x1ec]
dec eax
mov dword [ebp - 0x1ec], eax
cmp dword [ebp - 0x1ec], 0xffffffff
jg 0x1004c2f9
mov dword [ebp - 0x4ec], 1
mov dword [ebp - 0x678], 0x37c04ccb
mov eax, dword [ebp - 0x4ec]
inc eax
mov dword [ebp - 0x4ec], eax
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x744]
mov dword [ebp - 0x370], eax
push 4
pop eax
shl eax, 0
mov ecx, dword [ebp - 0x370]
mov dword [ebp + eax - 0x744], ecx
mov eax, dword [ebp - 0x370]
mov dword [ebp - 0x678], eax
jmp 0x1004c28e
lea eax, [ebp - 0x460]
push eax
push 0
push 0x69b8
lea eax, [ebp - 0x98]
push eax
call fcn.10049bb5
add esp, 0x10
push 0xf
push 5
call fcn.1004584e
pop ecx
pop ecx
add eax, dword [ebp - 0x460]
mov ecx, dword [ebp - 0x14]
mov dword [ecx + 4], eax
mov dword [ebp - 0x44], 0
mov dword [ebp - 0x2c], 0xfffffff7
mov dword [ebp - 0x12c], 2
push 2
lea ecx, [ebp - 0x7cc]
call fcn.10018602
mov dword [ebp - 4], 0xa
lea eax, [ebp - 0x7cc]
push eax
push 1
lea eax, [ebp - 0x864]
push eax
call fcn.10048d1d
add esp, 0xc
cmp dword [ebp - 0x44], 0x7516a205
jge 0x1004c386
mov dword [ebp - 0x378], 1
jmp 0x1004c38d
and dword [ebp - 0x378], 0
cmp dword [ebp - 0x378], 0x902d
jl 0x1004c3a5
mov dword [ebp - 0x4d8], 1
jmp 0x1004c3ac
and dword [ebp - 0x4d8], 0
mov eax, dword [ebp - 0x44]
cmp eax, dword [ebp - 0x4d8]
jge 0x1004c3c3
mov dword [ebp - 0x380], 1
jmp 0x1004c3ca
and dword [ebp - 0x380], 0
mov eax, 0x565e
sub eax, dword [ebp - 0x380]
imul eax, dword [ebp - 0x44]
cmp eax, 0xfff6
jbe 0x1004c3ec
mov dword [ebp - 0x468], 1
jmp 0x1004c3f3
and dword [ebp - 0x468], 0
mov eax, dword [ebp - 0x44]
imul eax, dword [ebp - 0x468]
test eax, eax
jne 0x1004c410
cmp dword [ebp - 0x44], 0
jne 0x1004c410
and dword [ebp - 0x388], 0
jmp 0x1004c41a
mov dword [ebp - 0x388], 1
mov eax, dword [ebp - 0x44]
cmp eax, dword [ebp - 0x388]
jne 0x1004c431
mov dword [ebp - 0x4f0], 1
jmp 0x1004c438
and dword [ebp - 0x4f0], 0
mov eax, dword [ebp - 0x4f0]
mov dword [ebp - 0x2c], eax
mov dword [ebp - 0x44], 2
jmp 0x1004c451
cmp dword [ebp - 0x44], 0x30
jne 0x1004c8c7
mov dword [ebp - 0x1b8], 0
push 2
lea ecx, [ebp - 0x2bc]
call fcn.10018602
mov byte [ebp - 4], 0xb
mov dword [ebp - 0x3b0], 0x262a889e
mov dword [ebp - 0x754], 3
mov dword [ebp - 0x750], 3
mov dword [ebp - 0x74c], 3
mov dword [ebp - 0x748], 3
mov dword [ebp - 0x764], 0xbc21425
mov dword [ebp - 0x760], 0xbc21425
mov dword [ebp - 0x75c], 0xbc21425
mov dword [ebp - 0x758], 0xbc21425
mov dword [ebp - 0x160], 0
jmp 0x1004c4e9
mov eax, dword [ebp - 0x160]
inc eax
mov dword [ebp - 0x160], eax
cmp dword [ebp - 0x160], 2
jge 0x1004c50b
push dword [ebp - 0x160]
lea ecx, [ebp - 0x2bc]
call fcn.100186a0
mov dword [eax], 0x5ab9
jmp 0x1004c4dc
mov dword [ebp - 0x2c], 0
jmp 0x1004c51b
mov eax, dword [ebp - 0x2c]
inc eax
mov dword [ebp - 0x2c], eax
cmp dword [ebp - 0x2c], 2
jne 0x1004c5de
mov dword [ebp - 0x390], 0x5589
push 3
lea ecx, [ebp - 0x784]
call fcn.10018602
mov byte [ebp - 4], 0xc
mov dword [ebp - 0x1f4], 0
jmp 0x1004c559
mov eax, dword [ebp - 0x1f4]
inc eax
mov dword [ebp - 0x1f4], eax
cmp dword [ebp - 0x1f4], 3
jge 0x1004c57b
push dword [ebp - 0x1f4]
lea ecx, [ebp - 0x784]
call fcn.100186a0
mov dword [eax], 1
jmp 0x1004c54c
push 1
lea eax, [ebp - 0x390]
push eax
call fcn.10048d8e
pop ecx
pop ecx
lea eax, [ebp - 0x390]
push eax
lea eax, [ebp - 0x12c]
push eax
lea eax, [ebp - 0x1b8]
push eax
push 0x5c43
push 0x1d59
lea eax, [ebp - 0x2bc]
push eax
lea eax, [ebp - 0x2c]
push eax
lea eax, [ebp - 0x44]
push eax
push 1
lea eax, [ebp - 0x784]
push eax
call fcn.10048dd1
add esp, 0x28
mov byte [ebp - 4], 0xb
lea ecx, [ebp - 0x784]
call fcn.10018684
jmp 0x1004c514
push 0
lea ecx, [ebp - 0x2bc]
call fcn.100186a0
cmp dword [eax], 0
jne 0x1004c70c
mov eax, dword [ebp - 0x2c]
mov dword [ebp - 0x8bc], eax
push 0
lea ecx, [ebp - 0x2bc]
call fcn.100186a0
cmp dword [eax], 0xe1b4
jl 0x1004c61e
mov dword [ebp - 0x470], 1
jmp 0x1004c625
and dword [ebp - 0x470], 0
mov eax, dword [ebp - 0x12c]
cmp dword [ebp - 0x470], eax
jle 0x1004c638
xor eax, eax
inc eax
jne 0x1004c653
push 0
lea ecx, [ebp - 0x2bc]
call fcn.100186a0
cmp dword [eax], 0
jne 0x1004c653
and dword [ebp - 0x398], 0
jmp 0x1004c65d
mov dword [ebp - 0x398], 1
cmp dword [ebp - 0x398], 0xffffffff
jle 0x1004c678
mov eax, 0xd1c1bbb8
test eax, eax
jne 0x1004c678
and dword [ebp - 0x4e0], 0
jmp 0x1004c682
mov dword [ebp - 0x4e0], 1
mov eax, dword [ebp - 0x2c]
cmp dword [ebp - 0x4e0], eax
jl 0x1004c699
mov dword [ebp - 0x5c8], 1
jmp 0x1004c6a0
and dword [ebp - 0x5c8], 0
push 0
lea ecx, [ebp - 0x2bc]
call fcn.100186a0
mov eax, dword [ebp - 0x2c]
add eax, dword [ebp - 0x44]
jne 0x1004c6c7
cmp dword [ebp - 0x1b8], 0
jne 0x1004c6c7
and dword [ebp - 0x3a0], 0
jmp 0x1004c6d1
mov dword [ebp - 0x3a0], 1
mov eax, dword [ebp - 0x12c]
cmp dword [ebp - 0x3a0], eax
jle 0x1004c6eb
mov dword [ebp - 0x6c8], 1
jmp 0x1004c6f2
and dword [ebp - 0x6c8], 0
mov eax, dword [ebp - 0x1b8]
mov dword [ebp - 0x86c], eax
xor eax, eax
inc eax
jne 0x1004c70c
and dword [ebp - 0x478], 0
jmp 0x1004c716
mov dword [ebp - 0x478], 1
push 0
lea ecx, [ebp - 0x2bc]
call fcn.100186a0
mov ecx, dword [ebp - 0x478]
cmp ecx, dword [eax]
jne 0x1004c739
mov dword [ebp - 0x3a8], 1
jmp 0x1004c740
and dword [ebp - 0x3a8], 0
cmp dword [ebp - 0x3a8], 0x4b39
jl 0x1004c758
mov dword [ebp - 0x4f8], 1
jmp 0x1004c75f
and dword [ebp - 0x4f8], 0
mov eax, dword [ebp - 0x4f8]
sub eax, dword [ebp - 0x12c]
mov dword [ebp - 0x3b0], eax
mov eax, dword [ebp - 0x3b0]
mov dword [ebp - 0x12c], eax
push 4
pop eax
imul eax, eax, 3
mov ecx, dword [ebp - 0x2c]
cmp dword [ebp + eax - 0x754], ecx
jge 0x1004c79b
mov dword [ebp - 0x480], 1
jmp 0x1004c7a2
and dword [ebp - 0x480], 0
mov esi, dword [ebp - 0x2c]
add esi, dword [ebp - 0x480]
push 1
lea ecx, [ebp - 0x2bc]
call fcn.100186a0
cmp esi, dword [eax]
jg 0x1004c7c8
mov dword [ebp - 0x3b8], 1
jmp 0x1004c7cf
and dword [ebp - 0x3b8], 0
push 4
pop eax
imul eax, eax, 3
mov eax, dword [ebp + eax - 0x754]
cmp dword [ebp - 0x3b8], eax
jle 0x1004c802
push 0
lea ecx, [ebp - 0x2bc]
call fcn.100186a0
cmp dword [eax], 0
je 0x1004c802
mov dword [ebp - 0x5d0], 1
jmp 0x1004c809
and dword [ebp - 0x5d0], 0
mov eax, dword [ebp - 0x2c]
mov dword [ebp - 0x8a4], eax
mov eax, dword [ebp - 0x2c]
cmp dword [ebp - 0x1b8], eax
jge 0x1004c829
mov dword [ebp - 0x4e8], 1
jmp 0x1004c830
and dword [ebp - 0x4e8], 0
push 1
lea ecx, [ebp - 0x2bc]
call fcn.100186a0
mov ecx, dword [ebp - 0x4e8]
cmp ecx, dword [eax]
jl 0x1004c853
mov dword [ebp - 0x3c0], 1
jmp 0x1004c85a
and dword [ebp - 0x3c0], 0
cmp dword [ebp - 0x3c0], 0xf85e
je 0x1004c872
mov dword [ebp - 0x488], 1
jmp 0x1004c879
and dword [ebp - 0x488], 0
mov esi, dword [ebp - 0x44]
add esi, dword [ebp - 0x488]
push 1
lea ecx, [ebp - 0x7cc]
call fcn.100186a0
add esi, dword [eax]
push 4
pop eax
imul eax, eax, 3
mov dword [ebp + eax - 0x764], esi
push 4
pop eax
imul eax, eax, 3
mov eax, dword [ebp + eax - 0x764]
sub eax, 0xa941
mov dword [ebp - 0x2c], eax
mov byte [ebp - 4], 0xa
lea ecx, [ebp - 0x2bc]
call fcn.10018684
jmp 0x1004c44a
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x7cc]
call fcn.10018684
and dword [ebp - 0x10c], 0
mov dword [ebp - 0x1e8], 5
mov dword [ebp - 0x680], 1
mov dword [ebp - 0x874], 0xfffffffc
mov dword [ebp - 0x1e8], 0
jmp 0x1004c914
mov eax, dword [ebp - 0x1e8]
inc eax
mov dword [ebp - 0x1e8], eax
cmp dword [ebp - 0x1e8], 0xa
jne 0x1004c966
mov dword [ebp - 0x5d8], 0xfffffff6
push 0
lea eax, [ebp - 0x680]
push eax
lea eax, [ebp - 0x5d8]
push eax
push 0x4a5d
call fcn.10049cc0
add esp, 0x10
mov byte [ebp - 0xa1], 0
movzx eax, byte [ebp - 0xa1]
test eax, eax
je 0x1004c964
push 0
push 0x23e1
call fcn.100496ac
pop ecx
pop ecx
jmp 0x1004c907
mov eax, dword [ebp - 0x14]
cmp dword [eax + 0x18], 0
jbe 0x1004c984
push 1
lea eax, [ebp - 0x14]
push eax
lea eax, [ebp - 0x10c]
push eax
call fcn.10049141
add esp, 0xc
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 - 0x10c]
mov dword [ebp - 0xc4], eax
and dword [ebp - 0x104], 0
jmp 0x1004c9b5
mov eax, dword [ebp - 0x104]
inc eax
mov dword [ebp - 0x104], eax
mov eax, dword [ebp - 0x104]
cmp eax, dword [ebp - 0xc4]
jge 0x1004ca4d
mov eax, dword [ebp - 0x14]
mov ecx, dword [ebp - 0x14]
mov eax, dword [eax + 0x14]
sub eax, dword [ecx + 0x18]
cmp dword [ebp - 0x104], eax
jae 0x1004ca01
lea eax, [ebp - 0x104]
push eax
lea eax, [ebp - 0x14]
push eax
lea eax, [ebp - 0x20]
push eax
lea eax, [ebp - 0x3c8]
push eax
push 1
lea eax, [ebp - 0x24]
push eax
call fcn.10049194
add esp, 0x18
jmp 0x1004ca19
push 1
lea eax, [ebp - 0xd8]
push eax
lea eax, [ebp - 0x3c8]
push eax
call fcn.10049228
add esp, 0xc
lea eax, [ebp - 0x20]
push eax
lea eax, [ebp - 0x3c8]
push eax
push 0x5a15
lea eax, [ebp - 0x10]
push eax
push 1
lea eax, [ebp - 0x24]
push eax
call fcn.10049290
add esp, 0x18
lea eax, [ebp - 0x10]
push eax
push 0
call fcn.10049c89
pop ecx
pop ecx
jmp 0x1004c9a8
mov dword [ebp - 0xe0], 0xfffffff9
mov dword [ebp - 0xe0], 0
jmp 0x1004ca70
mov eax, dword [ebp - 0xe0]
dec eax
mov dword [ebp - 0xe0], eax
cmp dword [ebp - 0xe0], 0xfffffffc
jle 0x1004ccfc
mov dword [ebp - 0x590], 0xe56f9b2c
mov dword [ebp - 0x58c], 0xe56f9b2c
mov dword [ebp - 0x588], 0xe56f9b2c
mov dword [ebp - 0x584], 0xe56f9b2c
push 4
pop eax
imul eax, eax, 0
mov dword [ebp + eax - 0x590], 0xfffffff3
jmp 0x1004cad3
push 4
pop eax
imul eax, eax, 0
cmp dword [ebp + eax - 0x590], 0x1b
jg 0x1004ccf7
mov dword [ebp - 0x124], 0xae5a60d0
push 2
lea ecx, [ebp - 0x574]
call fcn.10018602
mov dword [ebp - 4], 0xd
mov dword [ebp - 0x1c0], 0
jmp 0x1004cb1e
mov eax, dword [ebp - 0x1c0]
inc eax
mov dword [ebp - 0x1c0], eax
cmp dword [ebp - 0x1c0], 2
jge 0x1004cb40
push dword [ebp - 0x1c0]
lea ecx, [ebp - 0x574]
call fcn.100186a0
mov dword [eax], 0xfffffffa
jmp 0x1004cb11
mov dword [ebp - 0x124], 3
jmp 0x1004cb59
cmp dword [ebp - 0x124], 0xa
jl 0x1004cccc
mov dword [ebp - 0x58], 0
mov dword [ebp - 0x58], 0
jmp 0x1004cb7d
mov byte [ebp - 0x91], 0
push 0
lea eax, [ebp - 0x91]
push eax
call fcn.1004a1ee
pop ecx
pop ecx
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x574]
call fcn.10018684
jmp 0x1004cab8
jmp 0x1004ca63
push 1
lea eax, [ebp - 0x14]
push eax
push 0x7a46
lea eax, [ebp - 0x10c]
push eax
push 0x2e8e
call fcn.100493c6
add esp, 0x14
mov dword [ebp - 0x1c], 0x3b26bdde
mov dword [ebp - 0x2c0], 0x6038
mov dword [ebp - 0x688], 1
mov dword [ebp - 0x5f0], 0xffffffff
mov dword [ebp - 0x200], 0
jmp 0x1004cd59
mov eax, dword [ebp - 0x200]
inc eax
mov dword [ebp - 0x200], eax
cmp dword [ebp - 0x200], 3
jge 0x1004cd75
mov eax, dword [ebp - 0x200]
mov dword [ebp + eax*4 - 0x528], 0
jmp 0x1004cd4c
mov dword [ebp - 0x1c], 0
jmp 0x1004cd85
cmp dword [ebp - 0x1c], 0xffffffe5
jne 0x1004cde5
mov dword [ebp - 0x1c8], 0
jmp 0x1004cda4
cmp dword [ebp - 0x1c8], 2
jge 0x1004cdc0
mov eax, dword [ebp - 0x1c8]
mov dword [ebp + eax*4 - 0x734], 0x318d5816
jmp 0x1004cd97
push 4
pop eax
shl eax, 0
cmp dword [ebp + eax - 0x734], 0
je 0x1004cdd2
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], 0
je 0x1004ce01
xor eax, eax
je 0x1004ce01
mov dword [ebp - 0x3d8], 1
jmp 0x1004ce08
and dword [ebp - 0x3d8], 0
mov eax, dword [ebp - 0x1c]
cmp dword [ebp - 0x3d8], eax
jne 0x1004ce1f
mov dword [ebp - 0x3e0], 1
jmp 0x1004ce26
and dword [ebp - 0x3e0], 0
push 4
pop eax
shl eax, 1
cmp dword [ebp + eax - 0x528], 0
jne 0x1004ce44
mov eax, dword [ebp + 0x10]
mov dword [ebp - 0x5ec], eax
mov eax, dword [ebp - 0x5ec]
mov dword [ebp - 0x5f4], eax
mov eax, dword [ebp - 0x5f4]
movzx eax, byte [eax]
test eax, eax
je 0x1004efa6
push 0x2270
push 0x93
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.USER32.dll_SetClassLongA]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop esi
mov esp, ebp
pop ebp
ret