Function at 0x1004ef9f
Capabilities:
Delete directory
Get common file path

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x1008462e
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x3d0
push esi
push edi
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x1b4], 0x1df82d83
mov dword [ebp - 0x30], 0x876a47cd
mov dword [ebp - 0x18], 0
jmp 0x1004efe7
mov eax, dword [ebp - 0x18]
inc eax
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], 0xd
jg 0x1004f349
push 1
lea ecx, [ebp - 0x238]
call fcn.100160cf
and dword [ebp - 4], 0
mov dword [ebp - 0x1c], 0x78c38ec3
mov dword [ebp - 0x258], 0xffffffff
mov dword [ebp - 0xa4], 0
jmp 0x1004f02c
mov eax, dword [ebp - 0xa4]
inc eax
mov dword [ebp - 0xa4], eax
cmp dword [ebp - 0xa4], 1
jge 0x1004f04e
push dword [ebp - 0xa4]
lea ecx, [ebp - 0x238]
call fcn.1001613c
mov dword [eax], 1
jmp 0x1004f01f
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x194], eax
push 0
lea ecx, [ebp - 0x238]
call fcn.1001613c
mov ecx, dword [ebp - 0x194]
mov dword [eax], ecx
cmp dword [ebp - 0x194], 0
jne 0x1004f10e
cmp dword [ebp - 0x1c], 0x1a4e
jle 0x1004f08e
mov dword [ebp - 0x228], 1
jmp 0x1004f095
and dword [ebp - 0x228], 0
mov eax, dword [ebp - 0x18]
cmp dword [ebp - 0x228], eax
jle 0x1004f0ac
mov dword [ebp - 0x220], 1
jmp 0x1004f0b3
and dword [ebp - 0x220], 0
mov eax, dword [ebp - 0x220]
sub eax, 0x5145b2c2
cmp eax, dword [ebp - 0x18]
je 0x1004f0cf
mov dword [ebp - 0x23c], 1
jmp 0x1004f0d6
and dword [ebp - 0x23c], 0
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x368], eax
push 0
lea ecx, [ebp - 0x238]
call fcn.1001613c
mov eax, dword [eax]
mov dword [ebp - 0x1b4], eax
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x30], eax
mov eax, dword [ebp - 0x1b4]
add eax, dword [ebp - 0x30]
jne 0x1004f10e
and dword [ebp - 0x13c], 0
jmp 0x1004f118
mov dword [ebp - 0x13c], 1
mov eax, dword [ebp - 0x1c]
cmp dword [ebp - 0x13c], eax
jge 0x1004f12f
mov dword [ebp - 0x1f4], 1
jmp 0x1004f136
and dword [ebp - 0x1f4], 0
cmp dword [ebp - 0x1f4], 0
jl 0x1004f14b
mov dword [ebp - 0x144], 1
jmp 0x1004f152
and dword [ebp - 0x144], 0
mov eax, dword [ebp - 0x144]
shl eax, 3
mov dword [ebp - 0x258], eax
mov dword [ebp - 0x30], 0
jmp 0x1004f171
mov eax, dword [ebp - 0x30]
inc eax
mov dword [ebp - 0x30], eax
cmp dword [ebp - 0x30], 0
jg 0x1004f335
mov dword [ebp - 0x260], 7
mov dword [ebp - 0xe8], 0
jmp 0x1004f19e
mov eax, dword [ebp - 0xe8]
inc eax
mov dword [ebp - 0xe8], eax
cmp dword [ebp - 0xe8], 2
jge 0x1004f1ba
mov eax, dword [ebp - 0xe8]
mov dword [ebp + eax*4 - 0x250], 0xd881
jmp 0x1004f191
mov dword [ebp - 0x1c], 0
jmp 0x1004f1ca
mov eax, dword [ebp - 0x1c]
dec eax
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], 0
jl 0x1004f330
push dword [ebp - 0x1c]
lea ecx, [ebp - 0x238]
call fcn.1001613c
cmp dword [eax], 0x623b
jne 0x1004f1f6
mov dword [ebp - 0x1c4], 1
jmp 0x1004f1fd
and dword [ebp - 0x1c4], 0
push 4
pop eax
shl eax, 0
cmp dword [ebp + eax - 0x250], 0
je 0x1004f220
push 0xfffffffffffffff8
pop eax
test eax, eax
je 0x1004f220
mov dword [ebp - 0x1bc], 1
jmp 0x1004f227
and dword [ebp - 0x1bc], 0
mov eax, dword [ebp - 0x30]
cmp dword [ebp - 0x1bc], eax
jle 0x1004f23e
mov dword [ebp - 0x14c], 1
jmp 0x1004f245
and dword [ebp - 0x14c], 0
push 4
pop eax
shl eax, 0
mov eax, dword [ebp + eax - 0x250]
cmp eax, dword [ebp - 0x14c]
jl 0x1004f266
mov dword [ebp - 0x214], 1
jmp 0x1004f26d
and dword [ebp - 0x214], 0
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x250]
push dword [ebp - 0x30]
lea ecx, [ebp - 0x238]
call fcn.1001613c
mov esi, eax
push dword [ebp - 0x1c]
lea ecx, [ebp - 0x238]
call fcn.1001613c
mov ecx, dword [esi]
cmp ecx, dword [eax]
jl 0x1004f2aa
mov dword [ebp - 0x154], 1
jmp 0x1004f2b1
and dword [ebp - 0x154], 0
push dword [ebp - 0x1c]
lea ecx, [ebp - 0x238]
call fcn.1001613c
mov ecx, dword [ebp - 0x154]
cmp ecx, dword [eax]
je 0x1004f2d5
mov dword [ebp - 0x15c], 1
jmp 0x1004f2dc
and dword [ebp - 0x15c], 0
mov eax, dword [ebp - 0x1c4]
cmp eax, dword [ebp - 0x15c]
jle 0x1004f2f6
mov dword [ebp - 0x1fc], 1
jmp 0x1004f2fd
and dword [ebp - 0x1fc], 0
mov eax, dword [ebp - 0x1fc]
mov dword [ebp - 0x260], eax
mov byte [ebp - 0x4e], 0
movzx eax, byte [ebp - 0x4e]
test eax, eax
je 0x1004f32b
push 0xb15
push 0
push 0
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.USER32.dll_RedrawWindow]
jmp 0x1004f1c3
jmp 0x1004f16a
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x238]
call fcn.10016137
jmp 0x1004efe0
mov dword [ebp - 0xc8], 0x3ae35568
mov dword [ebp - 0x74], 1
mov dword [ebp - 0x98], 0
jmp 0x1004f373
mov eax, dword [ebp - 0x98]
inc eax
mov dword [ebp - 0x98], eax
cmp dword [ebp - 0x98], 3
jge 0x1004f38f
mov eax, dword [ebp - 0x98]
mov dword [ebp + eax*4 - 0x3d0], 0x3009
jmp 0x1004f366
mov dword [ebp - 0xc8], 0xffffffee
jmp 0x1004f3a8
mov eax, dword [ebp - 0xc8]
inc eax
mov dword [ebp - 0xc8], eax
cmp dword [ebp - 0xc8], 0x17
jle 0x1004f575
mov dword [ebp - 0xa0], 1
mov dword [ebp - 0xa0], 0x11
jmp 0x1004f3d8
mov eax, dword [ebp - 0xa0]
inc eax
mov dword [ebp - 0xa0], eax
cmp dword [ebp - 0xa0], 0x1c
jl 0x1004f544
mov dword [ebp - 0xe0], 0xffffffff
mov byte [ebp - 0x51], 0
movzx eax, byte [ebp - 0x51]
test eax, eax
je 0x1004f401
call dword [sym.imp.USER32.dll_GetCapture]
mov dword [ebp - 0xe0], 0
jmp 0x1004f41a
mov eax, dword [ebp - 0xe0]
inc eax
mov dword [ebp - 0xe0], eax
cmp dword [ebp - 0xe0], 4
je 0x1004f53f
mov dword [ebp - 0x74], 0xffffc085
mov dword [ebp - 0x74], 0
jmp 0x1004f43e
mov eax, dword [ebp - 0x74]
inc eax
mov dword [ebp - 0x74], eax
cmp dword [ebp - 0x74], 2
jg 0x1004f53a
mov dword [ebp - 0xa8], 0
mov byte [ebp - 0x3d], 0
movzx eax, byte [ebp - 0x3d]
test eax, eax
je 0x1004f46b
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.USER32.dll_IsWindow]
mov dword [ebp - 0xa8], 2
jmp 0x1004f484
mov eax, dword [ebp - 0xa8]
dec eax
mov dword [ebp - 0xa8], eax
cmp dword [ebp - 0xa8], 0
jl 0x1004f535
mov dword [ebp - 0xd0], 0x746a1c17
mov dword [ebp - 0xd0], 2
jmp 0x1004f4b4
mov eax, dword [ebp - 0xd0]
dec eax
mov dword [ebp - 0xd0], eax
cmp dword [ebp - 0xd0], 0
jl 0x1004f530
mov byte [ebp - 0x45], 0
movzx eax, byte [ebp - 0x45]
test eax, eax
je 0x1004f4d1
push 0
call dword [sym.imp.GDI32.dll_CreateRectRgnIndirect]
mov byte [ebp - 0x31], 0
movzx eax, byte [ebp - 0x31]
test eax, eax
je 0x1004f52b
push 0x12c3
push 0x73
push 0xe00
push 0
push 0x2315
push 0x1449
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.USER32.dll_GetDC]
push eax
push 0x1888
push 0x1f37
push 0x52b
push 0x26f7
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.USER32.dll_GetDC]
push eax
call dword [sym.imp.GDI32.dll_MaskBlt]
jmp 0x1004f4a7
jmp 0x1004f477
jmp 0x1004f437
jmp 0x1004f40d
jmp 0x1004f3cb
mov byte [ebp - 0x50], 0
movzx eax, byte [ebp - 0x50]
test eax, eax
je 0x1004f570
push 0
push 0xffc
push 0xb93
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.USER32.dll_GetDC]
push eax
call dword [sym.imp.GDI32.dll_GetDIBColorTable]
jmp 0x1004f39b
mov dword [ebp - 0xb0], 6
push 1
lea ecx, [ebp - 0x354]
call fcn.100160cf
mov dword [ebp - 4], 1
mov dword [ebp - 0x344], 0xfffffffc
mov dword [ebp - 0x348], 0xffffffff
mov dword [ebp - 0x58], 0xd0714ad
mov dword [ebp - 0x37c], 1
mov dword [ebp - 0x248], 0xfe936be8
mov dword [ebp - 0x20], 0
jmp 0x1004f5d2
mov eax, dword [ebp - 0x20]
inc eax
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], 1
jge 0x1004f5ee
push dword [ebp - 0x20]
lea ecx, [ebp - 0x354]
call fcn.1001613c
mov dword [eax], 0x7a7c2039
jmp 0x1004f5cb
mov dword [ebp - 0x20], 0
jmp 0x1004f5fe
mov eax, dword [ebp - 0x20]
inc eax
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], 1
jge 0x1004f614
mov eax, dword [ebp - 0x20]
mov dword [ebp + eax*4 - 0x244], 0x36de0184
jmp 0x1004f5f7
mov dword [ebp - 0xb0], 0
jmp 0x1004f62d
mov eax, dword [ebp - 0xb0]
dec eax
mov dword [ebp - 0xb0], eax
cmp dword [ebp - 0xb0], 0xfffffffd
jg 0x1004f6e6
mov dword [ebp - 0xf0], 0x2167fa5c
mov dword [ebp - 0x358], 0xffffffff
mov dword [ebp - 0x268], 1
mov dword [ebp - 0xf0], 0
jmp 0x1004f671
mov eax, dword [ebp - 0xf0]
dec eax
mov dword [ebp - 0xf0], eax
cmp dword [ebp - 0xf0], 0
jl 0x1004f6bb
mov dword [ebp - 0x380], 0x11151c3
mov dword [ebp - 0x320], 0xa97963ba
mov dword [ebp - 0x324], 0x49f6d4a0
mov dword [ebp - 0x164], 0xfffffffc
mov eax, dword [ebp - 0x164]
inc eax
mov dword [ebp - 0x164], eax
mov dword [ebp - 0x268], 0xfffffff6
jmp 0x1004f664
mov dword [ebp - 0x58], 0
jmp 0x1004f6cb
mov eax, dword [ebp - 0x58]
inc eax
mov dword [ebp - 0x58], eax
cmp dword [ebp - 0x58], 1
jge 0x1004f6e1
mov eax, dword [ebp - 0x58]
mov dword [ebp + eax*4 - 0x244], 0xbefcdf11
jmp 0x1004f6c4
jmp 0x1004f620
mov eax, dword [ebp - 0x58]
mov dword [ebp - 0x248], eax
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x354]
call fcn.10016137
mov dword [ebp - 0x94], 0xffffffff
push 2
lea ecx, [ebp - 0x374]
call fcn.100160cf
mov dword [ebp - 4], 2
mov dword [ebp - 0x2dc], 0x7e8e
mov dword [ebp - 0x2d8], 0x7e8e
mov dword [ebp - 0x2d4], 0x7e8e
mov dword [ebp - 0x2d0], 0x7e8e
lea ecx, [ebp - 0x11d]
call fcn.10008c23
push eax
lea eax, [ebp - 0x2cc]
push eax
lea eax, [ebp - 0x2dc]
push eax
lea ecx, [ebp - 0x3a4]
call fcn.1001614b
push dword [eax + 4]
push dword [eax]
lea ecx, [ebp - 0x134]
call fcn.10016111
mov byte [ebp - 4], 3
mov dword [ebp - 0x10c], 0xfffffff6
mov dword [ebp - 0x32c], 0
mov dword [ebp - 0x334], 0x1d66bd5d
mov dword [ebp - 0x33c], 0xffffffff
mov dword [ebp - 0x388], 0
mov dword [ebp - 0xb8], 0
jmp 0x1004f7c8
mov eax, dword [ebp - 0xb8]
inc eax
mov dword [ebp - 0xb8], eax
cmp dword [ebp - 0xb8], 3
jge 0x1004f7e4
mov eax, dword [ebp - 0xb8]
mov dword [ebp + eax*4 - 0x100], 0xe3245f1d
jmp 0x1004f7bb
mov byte [ebp - 0x4d], 0
movzx eax, byte [ebp - 0x4d]
test eax, eax
je 0x1004f7f8
push 0
call dword [sym.imp.KERNEL32.dll_RemoveDirectoryW]
push 4
pop eax
imul eax, eax, 0
mov dword [ebp + eax - 0x100], 3
jmp 0x1004f826
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x100]
dec eax
push 4
pop ecx
imul ecx, ecx, 0
mov dword [ebp + ecx - 0x100], eax
push 4
pop eax
imul eax, eax, 0
cmp dword [ebp + eax - 0x100], 0
jl 0x1004fc38
push 3
lea ecx, [ebp - 0x2b0]
call fcn.100160cf
mov byte [ebp - 4], 4
mov dword [ebp - 0x124], 1
mov dword [ebp - 0x1e4], 0xd4763c6d
mov dword [ebp - 0x390], 0xfffffff8
mov dword [ebp - 0x38c], 0
mov dword [ebp - 0xd8], 0
jmp 0x1004f88c
mov eax, dword [ebp - 0xd8]
inc eax
mov dword [ebp - 0xd8], eax
cmp dword [ebp - 0xd8], 3
jge 0x1004f8ae
push dword [ebp - 0xd8]
lea ecx, [ebp - 0x2b0]
call fcn.1001613c
mov dword [eax], 0xfffffffe
jmp 0x1004f87f
push 4
pop eax
imul eax, eax, 0
push dword [ebp + eax - 0x100]
lea ecx, [ebp - 0x134]
call fcn.1001613c
cmp dword [eax], 0
ja 0x1004f8d7
mov dword [ebp - 0x1cc], 1
jmp 0x1004f8de
and dword [ebp - 0x1cc], 0
push 4
pop eax
shl eax, 1
mov eax, dword [ebp + eax - 0x100]
cmp dword [ebp - 0x1cc], eax
jl 0x1004f8fe
mov dword [ebp - 0x16c], 1
jmp 0x1004f905
and dword [ebp - 0x16c], 0
mov eax, dword [ebp - 0x16c]
mov dword [ebp - 0x10c], eax
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x100]
mov dword [ebp - 0x378], eax
push 4
pop eax
imul eax, eax, 0
push dword [ebp + eax - 0x100]
lea ecx, [ebp - 0x134]
call fcn.1001613c
cmp dword [eax], 0
je 0x1004f95f
push 2
lea ecx, [ebp - 0x134]
call fcn.1001613c
cmp dword [eax], 0
je 0x1004f95f
mov dword [ebp - 0x224], 1
jmp 0x1004f966
and dword [ebp - 0x224], 0
push 4
pop eax
imul eax, eax, 0
push dword [ebp + eax - 0x100]
lea ecx, [ebp - 0x134]
call fcn.1001613c
mov ecx, dword [ebp - 0x224]
cmp ecx, dword [eax]
jg 0x1004f994
mov dword [ebp - 0x174], 1
jmp 0x1004f99b
and dword [ebp - 0x174], 0
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x100]
cmp dword [ebp - 0x174], eax
jne 0x1004f9bc
mov dword [ebp - 0x1d4], 1
jmp 0x1004f9c3
and dword [ebp - 0x1d4], 0
cmp dword [ebp - 0x1d4], 0xbb35
jge 0x1004f9db
mov dword [ebp - 0x17c], 1
jmp 0x1004f9e2
and dword [ebp - 0x17c], 0
cmp dword [ebp - 0x17c], 0xffffffff
jl 0x1004f9f7
mov dword [ebp - 0x204], 1
jmp 0x1004f9fe
and dword [ebp - 0x204], 0
push 0
lea ecx, [ebp - 0x2b0]
call fcn.1001613c
mov ecx, dword [ebp - 0x204]
cmp ecx, dword [eax]
jle 0x1004fa21
mov dword [ebp - 0x184], 1
jmp 0x1004fa28
and dword [ebp - 0x184], 0
mov eax, dword [ebp - 0x10c]
cmp dword [ebp - 0x184], eax
je 0x1004fa42
mov dword [ebp - 0x1dc], 1
jmp 0x1004fa49
and dword [ebp - 0x1dc], 0
mov eax, dword [ebp - 0x1dc]
add eax, 0x77e0
cmp eax, 0xfffffff8
jge 0x1004fa65
mov dword [ebp - 0x18c], 1
jmp 0x1004fa6c
and dword [ebp - 0x18c], 0
xor eax, eax
inc eax
sub eax, dword [ebp - 0x18c]
cmp eax, dword [ebp - 0x124]
jg 0x1004fa89
mov dword [ebp - 0x21c], 1
jmp 0x1004fa90
and dword [ebp - 0x21c], 0
cmp dword [ebp - 0x21c], 0xc88f
jne 0x1004faa8
mov dword [ebp - 0x284], 1
jmp 0x1004faaf
and dword [ebp - 0x284], 0
push 4
pop eax
imul eax, eax, 0
push dword [ebp + eax - 0x100]
lea ecx, [ebp - 0x134]
call fcn.1001613c
push 2
lea ecx, [ebp - 0x134]
call fcn.1001613c
cmp dword [eax], 0
jne 0x1004fae0
cmp dword [ebp - 0x10c], 0
push 4
pop eax
imul eax, eax, 0
push dword [ebp + eax - 0x100]
lea ecx, [ebp - 0x134]
call fcn.1001613c
mov dword [eax], 0x169f
imul esi, dword [ebp - 0x124], 0x169f
inc esi
push 0
lea ecx, [ebp - 0x2b0]
call fcn.1001613c
cmp esi, dword [eax]
jge 0x1004fbf5
push 1
lea ecx, [ebp - 0x2fc]
call fcn.100160cf
mov byte [ebp - 4], 5
push 3
lea ecx, [ebp - 0x308]
call fcn.100160cf
mov byte [ebp - 4], 6
mov dword [ebp - 0x24], 0
jmp 0x1004fb50
mov eax, dword [ebp - 0x24]
inc eax
mov dword [ebp - 0x24], eax
cmp dword [ebp - 0x24], 1
jge 0x1004fb69
push dword [ebp - 0x24]
lea ecx, [ebp - 0x2fc]
call fcn.1001613c
or dword [eax], 0xffffffff
jmp 0x1004fb49
mov dword [ebp - 0x24], 0
jmp 0x1004fb79
mov eax, dword [ebp - 0x24]
inc eax
mov dword [ebp - 0x24], eax
cmp dword [ebp - 0x24], 3
jge 0x1004fb95
push dword [ebp - 0x24]
lea ecx, [ebp - 0x308]
call fcn.1001613c
mov dword [eax], 0x6d4c01e0
jmp 0x1004fb72
mov dword [ebp - 0x1e4], 0x1404fc4b
mov eax, dword [ebp - 0x1e4]
mov dword [ebp - 0x19c], eax
push 0
lea ecx, [ebp - 0x2fc]
call fcn.1001613c
mov ecx, dword [ebp - 0x19c]
mov dword [eax], ecx
push 2
lea ecx, [ebp - 0x308]
call fcn.1001613c
mov ecx, dword [ebp - 0x19c]
mov dword [eax], ecx
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x308]
call fcn.10016137
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x2fc]
call fcn.10016137
jmp 0x1004fc24
mov dword [ebp - 0x20c], 0x820a
mov eax, dword [ebp - 0x20c]
dec eax
mov dword [ebp - 0x20c], eax
mov byte [ebp - 0x52], 0
movzx eax, byte [ebp - 0x52]
test eax, eax
je 0x1004fc24
push 0
push 0
push 0
call dword [sym.imp.KERNEL32.dll_FindResourceW]
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x2b0]
call fcn.10016137
jmp 0x1004f80b
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x134]
call fcn.10016137
mov dword [ebp - 0xc0], 0
jmp 0x1004fc60
mov eax, dword [ebp - 0xc0]
inc eax
mov dword [ebp - 0xc0], eax
cmp dword [ebp - 0xc0], 2
jge 0x1004fc82
push dword [ebp - 0xc0]
lea ecx, [ebp - 0x374]
call fcn.1001613c
mov dword [eax], 7
jmp 0x1004fc53
mov dword [ebp - 0x10], 0x5540d7f8
mov dword [ebp - 0x11c], 0x951ea66e
mov dword [ebp - 0x3c], 0xbd2ab60e
mov dword [ebp - 0x60], 0
mov dword [ebp - 0x2f0], 3
mov dword [ebp - 0x2ec], 3
mov dword [ebp - 0x2e8], 3
mov dword [ebp - 0x2e4], 3
lea ecx, [ebp - 0x111]
call fcn.10008c23
push eax
lea eax, [ebp - 0x2e0]
push eax
lea eax, [ebp - 0x2f0]
push eax
lea ecx, [ebp - 0x3c4]
call fcn.1001614b
push dword [eax + 4]
push dword [eax]
lea ecx, [ebp - 0x364]
call fcn.10016111
mov byte [ebp - 4], 7
mov dword [ebp - 0x8c], 0
jmp 0x1004fd1b
mov eax, dword [ebp - 0x8c]
inc eax
mov dword [ebp - 0x8c], eax
cmp dword [ebp - 0x8c], 1
jge 0x1004fd37
mov eax, dword [ebp - 0x8c]
mov dword [ebp + eax*4 - 0x264], 0xffffffff
jmp 0x1004fd0e
mov dword [ebp - 0x10], 0xf
jmp 0x1004fd47
mov eax, dword [ebp - 0x10]
dec eax
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 4
jl 0x1004fdbb
mov dword [ebp - 0x84], 0x5e1f6f08
mov dword [ebp - 0x290], 0xffffffff
mov eax, dword [ebp - 0x84]
mov ecx, dword [ebp - 0x10]
sub ecx, dword [ebp - 0x84]
sub eax, ecx
cmp dword [ebp - 0x84], eax
jle 0x1004fd86
mov dword [ebp - 0x254], 1
jmp 0x1004fd8d
and dword [ebp - 0x254], 0
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x11c], eax
xor eax, eax
inc eax
sub eax, dword [ebp - 0x11c]
mov dword [ebp - 0x3c], eax
mov eax, dword [ebp - 0x3c]
mov dword [ebp - 0x31c], eax
xor eax, eax
sub eax, dword [ebp - 0x84]
mov dword [ebp - 0x290], eax
jmp 0x1004fd40
mov eax, dword [ebp - 0x3c]
mov dword [ebp - 0x3c], eax
mov eax, dword [ebp - 0x3c]
cmp dword [ebp - 0x10], eax
je 0x1004fdd5
mov dword [ebp - 0x25c], 1
jmp 0x1004fddc
and dword [ebp - 0x25c], 0
mov eax, dword [ebp - 0x60]
mov ecx, dword [ebp - 0x60]
dec ecx
mov dword [ebp - 0x60], ecx
test eax, eax
je 0x1004fe88
mov eax, dword [ebp - 0x60]
mov dword [ebp - 0x10], eax
mov eax, dword [ebp - 0x3c]
cmp dword [ebp - 0x10], eax
jl 0x1004fe08
mov dword [ebp - 0x1a4], 1
jmp 0x1004fe0f
and dword [ebp - 0x1a4], 0
cmp dword [ebp - 0x1a4], 0x9843
jge 0x1004fe25
cmp dword [ebp - 0x10], 0
je 0x1004fe25
cmp dword [ebp - 0x10], 0
cmp dword [ebp - 0x60], 0
je 0x1004fe3d
cmp dword [ebp - 0x10], 0
je 0x1004fe3d
mov dword [ebp - 0x1ec], 1
jmp 0x1004fe44
and dword [ebp - 0x1ec], 0
mov eax, dword [ebp - 0x3c]
cmp dword [ebp - 0x1ec], eax
jne 0x1004fe5b
mov dword [ebp - 0x1ac], 1
jmp 0x1004fe62
and dword [ebp - 0x1ac], 0
mov eax, dword [ebp - 0x1ac]
sub eax, 0x28e48792
cmp dword [ebp - 0x11c], eax
je 0x1004fe81
mov dword [ebp - 0x22c], 1
jmp 0x1004fe88
and dword [ebp - 0x22c], 0
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x280], eax
push 3
lea ecx, [ebp - 0x364]
call fcn.1001613c
mov ecx, dword [ebp - 0x280]
mov dword [eax], ecx
push 4
pop eax
imul eax, eax, 0
mov ecx, dword [ebp - 0x60]
mov dword [ebp + eax - 0x264], ecx
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x364]
call fcn.10016137
mov dword [ebp - 0x94], 7
jmp 0x1004fede
mov eax, dword [ebp - 0x94]
inc eax
mov dword [ebp - 0x94], eax
cmp dword [ebp - 0x94], 0xf
jg 0x1004ffa5
mov dword [ebp - 0x128], 0xf1d8987f
mov dword [ebp - 0x68], 0
mov dword [ebp - 0x9c], 0
jmp 0x1004ff15
mov eax, dword [ebp - 0x9c]
inc eax
mov dword [ebp - 0x9c], eax
cmp dword [ebp - 0x9c], 4
jge 0x1004ff31
mov eax, dword [ebp - 0x9c]
mov dword [ebp + eax*4 - 0x3b4], 0x841b3c69
jmp 0x1004ff08
mov dword [ebp - 0x68], 0
jmp 0x1004ff41
mov eax, dword [ebp - 0x68]
inc eax
mov dword [ebp - 0x68], eax
cmp dword [ebp - 0x68], 3
jg 0x1004ff8e
mov dword [ebp - 0x88], 0
mov eax, dword [ebp - 0x68]
cmp dword [ebp + eax*4 - 0x3b4], 0
je 0x1004ff60
jmp 0x1004ff8e
mov dword [ebp - 0x88], 3
jmp 0x1004ff79
mov eax, dword [ebp - 0x88]
dec eax
mov dword [ebp - 0x88], eax
cmp dword [ebp - 0x88], 0
jl 0x1004ff8c
cmp dword [ebp - 0x68], 0
je 0x1004ff8a
jmp 0x1004ff8c
jmp 0x1004ff6c
jmp 0x1004ff3a
call fcn.1004c9c2
mov eax, dword [ebp - 0x128]
dec eax
mov dword [ebp - 0x128], eax
jmp 0x1004fed1
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x374]
call fcn.10016137
mov dword [ebp - 0x2a4], 0xa5d6c05b
mov dword [ebp - 0x2a0], 0xa5d6c05b
mov dword [ebp - 0x29c], 0xa5d6c05b
mov dword [ebp - 0x298], 0xa5d6c05b
mov dword [ebp - 0x78], 3
mov dword [ebp - 0x138], 0xbca7b5cf
mov dword [ebp - 0x140], 5
mov dword [ebp - 0x150], 0xffffffff
mov dword [ebp - 0x78], 0
jmp 0x10050011
mov eax, dword [ebp - 0x78]
inc eax
mov dword [ebp - 0x78], eax
cmp dword [ebp - 0x78], 3
jg 0x100501e3
mov dword [ebp - 0x5c], 0xd03248c6
mov dword [ebp - 0x158], 9
mov dword [ebp - 0x5c], 0
jmp 0x1005003c
mov eax, dword [ebp - 0x5c]
inc eax
mov dword [ebp - 0x5c], eax
cmp dword [ebp - 0x5c], 3
jg 0x100501de
mov dword [ebp - 0x2c], 0
mov byte [ebp - 0x32], 0
movzx eax, byte [ebp - 0x32]
test eax, eax
je 0x1005006d
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.USER32.dll_GetDC]
push eax
call dword [sym.imp.GDI32.dll_CreateHalftonePalette]
mov dword [ebp - 0x2c], 0
jmp 0x1005007d
mov eax, dword [ebp - 0x2c]
inc eax
mov dword [ebp - 0x2c], eax
cmp dword [ebp - 0x2c], 3
jg 0x100501d9
mov dword [ebp - 0xac], 0x307d7c11
mov dword [ebp - 0x26c], 0x51fa4c82
mov dword [ebp - 0xac], 3
jmp 0x100500b4
mov eax, dword [ebp - 0xac]
dec eax
mov dword [ebp - 0xac], eax
cmp dword [ebp - 0xac], 0
jl 0x10050115
mov dword [ebp - 0xb4], 0xffffffff
mov dword [ebp - 0xb4], 0
jmp 0x100500e0
mov eax, dword [ebp - 0xb4]
inc eax
mov dword [ebp - 0xb4], eax
cmp dword [ebp - 0xb4], 3
jg 0x10050113
mov byte [ebp - 0x34], 0
movzx eax, byte [ebp - 0x34]
test eax, eax
je 0x10050102
push 0x17fd
push 0
call dword [sym.imp.KERNEL32.dll_GetSystemDirectoryW]
mov eax, dword [ebp - 0x2c]
cmp dword [ebp + eax*4 - 0x2a4], 0
je 0x10050111
jmp 0x100500d3
jmp 0x100500d3
jmp 0x100500a7
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp + eax*4 - 0x2a4]
mov dword [ebp - 0x328], eax
cmp dword [ebp - 0x2c], 0
jne 0x1005017a
cmp dword [ebp - 0x78], 0x14ab
jl 0x10050140
mov dword [ebp - 0x28c], 1
jmp 0x10050147
and dword [ebp - 0x28c], 0
mov eax, dword [ebp - 0x2c]
mov dword [ebp - 0x138], eax
mov eax, dword [ebp - 0x138]
mov dword [ebp - 0x140], eax
mov eax, dword [ebp - 0x140]
mov dword [ebp - 0x384], eax
cmp dword [ebp - 0x26c], 0
jne 0x1005017a
and dword [ebp - 0x148], 0
jmp 0x10050184
mov dword [ebp - 0x148], 1
mov eax, dword [ebp - 0x148]
mov dword [ebp - 0x150], eax
mov eax, dword [ebp - 0x150]
mov dword [ebp - 0x158], eax
cmp dword [ebp - 0x158], 0xaed1
jne 0x100501b4
mov dword [ebp - 0x160], 1
jmp 0x100501bb
and dword [ebp - 0x160], 0
mov eax, dword [ebp - 0x5c]
add eax, dword [ebp - 0x160]
imul eax, eax, 0xec3
mov ecx, dword [ebp - 0x5c]
mov dword [ebp + ecx*4 - 0x2a4], eax
jmp 0x10050076
jmp 0x10050035
jmp 0x1005000a
mov byte [ebp - 0x33], 0
movzx eax, byte [ebp - 0x33]
test eax, eax
je 0x100501f5
call dword [sym.imp.KERNEL32.dll_IsDebuggerPresent]
push 1
lea eax, [ebp - 0x3dc]
push eax
xor edx, edx
inc edx
xor ecx, ecx
call fcn.1004c227
pop ecx
pop ecx
mov esi, eax
lea edi, [ebp - 0x39c]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
lea esi, [ebp - 0x39c]
lea edi, [ebp - 0x2bc]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov dword [ebp - 0x80], 0xfffffffb
mov dword [ebp - 0x64], 0xffffffff
mov dword [ebp - 0x70], 0xffffffff
mov dword [ebp - 0x180], 0xfffffff6
mov dword [ebp - 0xbc], 0
jmp 0x1005025c
mov eax, dword [ebp - 0xbc]
inc eax
mov dword [ebp - 0xbc], eax
cmp dword [ebp - 0xbc], 1
jge 0x10050278
mov eax, dword [ebp - 0xbc]
mov dword [ebp + eax*4 - 0x108], 0
jmp 0x1005024f
mov eax, dword [ebp - 0x80]
mov dword [ebp - 0x64], eax
mov eax, dword [ebp - 0x64]
mov dword [ebp - 0x70], eax
mov dword [ebp - 0x80], 0
jmp 0x10050294
mov eax, dword [ebp - 0x80]
dec eax
mov dword [ebp - 0x80], eax
cmp dword [ebp - 0x80], 0
jl 0x100503e3
mov dword [ebp - 0x64], 0
jmp 0x100502ae
mov eax, dword [ebp - 0x64]
dec eax
mov dword [ebp - 0x64], eax
cmp dword [ebp - 0x64], 0
jl 0x100503de
mov dword [ebp - 0x104], 0x68939f5f
mov dword [ebp - 0x178], 2
mov dword [ebp - 0x318], 9
mov dword [ebp - 0x314], 9
mov dword [ebp - 0x310], 9
mov dword [ebp - 0x30c], 9
mov dword [ebp - 0x70], 0
jmp 0x10050304
mov eax, dword [ebp - 0x70]
inc eax
mov dword [ebp - 0x70], eax
cmp dword [ebp - 0x70], 0
jg 0x100503d9
mov dword [ebp - 0x44], 0xffffffff
mov dword [ebp - 0x330], 0xc9995890
mov dword [ebp - 0x44], 0
jmp 0x1005032f
mov eax, dword [ebp - 0x44]
inc eax
mov dword [ebp - 0x44], eax
cmp dword [ebp - 0x44], 0
jg 0x100503d4
mov eax, dword [ebp - 0x44]
mov eax, dword [ebp + eax*4 - 0x108]
mov dword [ebp - 0x340], eax
mov eax, dword [ebp - 0x104]
inc eax
mov dword [ebp - 0x104], eax
mov eax, dword [ebp - 0x44]
mov eax, dword [ebp + eax*4 - 0x108]
cmp dword [ebp - 0x104], eax
jg 0x1005037e
mov eax, dword [ebp - 0x44]
cmp dword [ebp + eax*4 - 0x108], 0
jne 0x1005037e
and dword [ebp - 0x168], 0
jmp 0x10050388
mov dword [ebp - 0x168], 1
cmp dword [ebp - 0x168], 0x16
je 0x1005039d
mov dword [ebp - 0x170], 1
jmp 0x100503a4
and dword [ebp - 0x170], 0
mov eax, dword [ebp - 0x170]
mov dword [ebp - 0x178], eax
mov eax, dword [ebp - 0x178]
mov dword [ebp - 0x180], eax
push 4
pop eax
imul eax, eax, 3
mov ecx, dword [ebp - 0x180]
mov dword [ebp + eax - 0x318], ecx
jmp 0x10050328
jmp 0x100502fd
jmp 0x100502a7
jmp 0x1005028d
mov dword [ebp - 0xcc], 0xa61928c1
mov dword [ebp - 0xc4], 0
jmp 0x10050406
mov eax, dword [ebp - 0xc4]
inc eax
mov dword [ebp - 0xc4], eax
cmp dword [ebp - 0xc4], 2
jge 0x10050422
mov eax, dword [ebp - 0xc4]
mov dword [ebp + eax*4 - 0x3bc], 0x3718
jmp 0x100503f9
mov dword [ebp - 0xcc], 0
jmp 0x1005043b
mov eax, dword [ebp - 0xcc]
dec eax
mov dword [ebp - 0xcc], eax
cmp dword [ebp - 0xcc], 0xffffffe4
jg 0x10050617
mov dword [ebp - 0xd4], 1
mov dword [ebp - 0xd4], 0xffffffec
jmp 0x1005046b
mov eax, dword [ebp - 0xd4]
inc eax
mov dword [ebp - 0xd4], eax
cmp dword [ebp - 0xd4], 0xe
je 0x10050612
push 2
lea ecx, [ebp - 0x278]
call fcn.100160cf
mov dword [ebp - 4], 8
mov dword [ebp - 0x7c], 0xfffffffc
mov dword [ebp - 0x294], 0x6f93bd5d
mov dword [ebp - 0xdc], 0
jmp 0x100504b6
mov eax, dword [ebp - 0xdc]
inc eax
mov dword [ebp - 0xdc], eax
cmp dword [ebp - 0xdc], 2
jge 0x100504d8
push dword [ebp - 0xdc]
lea ecx, [ebp - 0x278]
call fcn.1001613c
mov dword [eax], 0x49f845d8
jmp 0x100504a9
mov dword [ebp - 0x7c], 0
jmp 0x100504e8
mov eax, dword [ebp - 0x7c]
inc eax
mov dword [ebp - 0x7c], eax
cmp dword [ebp - 0x7c], 1
jg 0x100505fe
mov dword [ebp - 0xe4], 0
jmp 0x1005050b
mov eax, dword [ebp - 0xe4]
inc eax
mov dword [ebp - 0xe4], eax
cmp dword [ebp - 0xe4], 1
jge 0x10050524
mov eax, dword [ebp - 0xe4]
mov dword [ebp + eax*4 - 0x4c], 0xffffffff
jmp 0x100504fe
mov byte [ebp - 0x4f], 0
movzx eax, byte [ebp - 0x4f]
test eax, eax
je 0x1005054b
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.USER32.dll_GetDC]
push eax
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.USER32.dll_ReleaseDC]
push 4
pop eax
imul eax, eax, 0
mov dword [ebp + eax - 0x4c], 1
jmp 0x10050570
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x4c]
dec eax
push 4
pop ecx
imul ecx, ecx, 0
mov dword [ebp + ecx - 0x4c], eax
push 4
pop eax
imul eax, eax, 0
cmp dword [ebp + eax - 0x4c], 0
jl 0x100505f9
push 4
pop eax
imul eax, eax, 0
push dword [ebp + eax - 0x4c]
lea ecx, [ebp - 0x278]
call fcn.1001613c
cmp dword [eax], 0
jne 0x100505de
push 4
pop eax
imul eax, eax, 0
push dword [ebp + eax - 0x4c]
lea ecx, [ebp - 0x278]
call fcn.1001613c
push dword [ebp - 0x7c]
lea ecx, [ebp - 0x278]
call fcn.1001613c
cmp dword [eax], 0
jne 0x100505d5
mov eax, 0xa8fecf79
test eax, eax
jne 0x100505d5
push 4
pop eax
imul eax, eax, 0
cmp dword [ebp + eax - 0x4c], 1
je 0x100505de
and dword [ebp - 0x188], 0
jmp 0x100505e8
mov dword [ebp - 0x188], 1
mov eax, dword [ebp - 0x188]
mov dword [ebp - 0x294], eax
jmp 0x1005055b
jmp 0x100504e1
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x278]
call fcn.10016137
jmp 0x1005045e
jmp 0x1005042e
mov dword [ebp - 0x14], 0x48d327cb
mov dword [ebp - 0x110], 1
mov dword [ebp - 0x218], 0xc1932e3c
mov dword [ebp - 0x6c], 0xf6f49c23
mov dword [ebp - 0x118], 7
mov dword [ebp - 0x14], 0xffffffed
jmp 0x10050653
mov eax, dword [ebp - 0x14]
inc eax
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], 2
jl 0x10050a30
mov dword [ebp - 0x28], 0
mov dword [ebp - 0x1d0], 0x737b78f1
mov dword [ebp - 0x240], 0x8e972ce3
mov dword [ebp - 0xec], 0
jmp 0x10050691
mov eax, dword [ebp - 0xec]
inc eax
mov dword [ebp - 0xec], eax
cmp dword [ebp - 0xec], 1
jge 0x100506ad
mov eax, dword [ebp - 0xec]
mov dword [ebp + eax*4 - 0x90], 0x972c40a9
jmp 0x10050684
mov eax, dword [ebp - 0x28]
cmp dword [ebp - 0x14], eax
jne 0x100506c1
mov dword [ebp - 0x1a8], 1
jmp 0x100506c8
and dword [ebp - 0x1a8], 0
mov eax, dword [ebp - 0x28]
cmp dword [ebp - 0x28], eax
jge 0x100506dc
mov dword [ebp - 0x190], 1
jmp 0x100506e3
and dword [ebp - 0x190], 0
cmp dword [ebp - 0x190], 0xffffffff
jne 0x100506f8
mov dword [ebp - 0x198], 1
jmp 0x100506ff
and dword [ebp - 0x198], 0
mov eax, dword [ebp - 0x14]
cmp dword [ebp - 0x198], eax
jle 0x10050716
mov dword [ebp - 0x1a0], 1
jmp 0x1005071d
and dword [ebp - 0x1a0], 0
cmp dword [ebp - 0x1a0], 0xfffb
je 0x10050735
mov dword [ebp - 0x27c], 1
jmp 0x1005073c
and dword [ebp - 0x27c], 0
mov eax, dword [ebp - 0x14]
mov dword [ebp - 0x338], eax
cmp dword [ebp - 0x1a8], 0x8213af72
jb 0x1005075d
mov dword [ebp - 0x1b0], 1
jmp 0x10050764
and dword [ebp - 0x1b0], 0
mov eax, dword [ebp - 0x1b0]
add eax, 0x29694d2b
je 0x10050789
cmp dword [ebp - 0x14], 0
je 0x10050789
cmp dword [ebp - 0x14], 0
je 0x10050789
mov dword [ebp - 0x1b8], 1
jmp 0x10050790
and dword [ebp - 0x1b8], 0
mov eax, dword [ebp - 0x28]
cmp dword [ebp - 0x1b8], eax
jg 0x100507a7
mov dword [ebp - 0x1c0], 1
jmp 0x100507ae
and dword [ebp - 0x1c0], 0
mov eax, dword [ebp - 0x28]
imul eax, dword [ebp - 0x1c0]
mov dword [ebp - 0x110], eax
mov eax, dword [ebp - 0x218]
cmp dword [ebp - 0x110], eax
jge 0x100507d8
mov dword [ebp - 0x1c8], 1
jmp 0x100507df
and dword [ebp - 0x1c8], 0
mov eax, dword [ebp - 0x1c8]
mov dword [ebp - 0x6c], eax
cmp dword [ebp - 0x6c], 0
je 0x100508ae
mov dword [ebp - 0x6c], 0
jmp 0x10050802
mov eax, dword [ebp - 0x6c]
dec eax
mov dword [ebp - 0x6c], eax
cmp dword [ebp - 0x6c], 0
jl 0x100508ac
push 3
lea ecx, [ebp - 0x2c8]
call fcn.100160cf
mov dword [ebp - 4], 9
mov dword [ebp - 0xf4], 0
jmp 0x10050839
mov eax, dword [ebp - 0xf4]
inc eax
mov dword [ebp - 0xf4], eax
cmp dword [ebp - 0xf4], 3
jge 0x1005085b
push dword [ebp - 0xf4]
lea ecx, [ebp - 0x2c8]
call fcn.1001613c
mov dword [eax], 0x91b7
jmp 0x1005082c
mov byte [ebp - 0x35], 0
movzx eax, byte [ebp - 0x35]
test eax, eax
je 0x10050872
push 0x29b
call dword [sym.imp.KERNEL32.dll_SetErrorMode]
push 1
lea ecx, [ebp - 0x2c8]
call fcn.1001613c
cmp dword [eax], 0
je 0x10050898
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x2c8]
call fcn.10016137
jmp 0x100507fb
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x2c8]
call fcn.10016137
jmp 0x100507fb
jmp 0x100508cb
mov dword [ebp - 0x288], 0xf5e4d8d9
push 4
pop eax
imul eax, eax, 0
mov ecx, dword [ebp - 0x288]
mov dword [ebp + eax - 0x90], ecx
push 4
pop eax
imul eax, eax, 0
cmp dword [ebp + eax - 0x90], 0
je 0x10050a0a
push 0xfffffffffffffff8
pop eax
test eax, eax
je 0x1005095d
push 0xfffffffffffffffd
pop eax
test eax, eax
je 0x10050909
mov eax, dword [ebp - 0x110]
mov dword [ebp - 0x1d0], eax
mov eax, dword [ebp - 0x1d0]
add eax, dword [ebp - 0x28]
cmp eax, 0xe213633e
je 0x1005091b
mov eax, 0xffff
test eax, eax
jne 0x1005091b
and dword [ebp - 0x1d8], 0
jmp 0x10050925
mov dword [ebp - 0x1d8], 1
mov eax, dword [ebp - 0x28]
cmp dword [ebp - 0x1d8], eax
jle 0x1005093c
mov dword [ebp - 0x1e0], 1
jmp 0x10050943
and dword [ebp - 0x1e0], 0
mov eax, dword [ebp - 0x118]
cmp dword [ebp - 0x1e0], eax
je 0x1005095d
mov dword [ebp - 0x1f0], 1
jmp 0x10050964
and dword [ebp - 0x1f0], 0
mov eax, dword [ebp - 0x118]
mov dword [ebp - 0x1e8], eax
push 4
pop eax
imul eax, eax, 0
mov ecx, dword [ebp - 0x1e8]
mov dword [ebp + eax - 0x90], ecx
mov eax, dword [ebp - 0x1e8]
sub eax, dword [ebp - 0x1f0]
jne 0x100509aa
push 4
pop eax
imul eax, eax, 0
cmp dword [ebp + eax - 0x90], 0
jne 0x100509aa
and dword [ebp - 0x1f8], 0
jmp 0x100509b4
mov dword [ebp - 0x1f8], 1
mov eax, dword [ebp - 0x14]
cmp dword [ebp - 0x1f8], eax
jle 0x100509cb
mov dword [ebp - 0x200], 1
jmp 0x100509d2
and dword [ebp - 0x200], 0
mov eax, dword [ebp - 0x28]
cmp dword [ebp - 0x200], eax
je 0x100509e9
mov dword [ebp - 0x208], 1
jmp 0x100509f0
and dword [ebp - 0x208], 0
mov eax, dword [ebp - 0x208]
sub eax, dword [ebp - 0x28]
cmp eax, dword [ebp - 0x14]
jge 0x10050a0a
mov dword [ebp - 0x210], 1
jmp 0x10050a11
and dword [ebp - 0x210], 0
mov eax, dword [ebp - 0x118]
imul eax, dword [ebp - 0x210]
imul eax, dword [ebp - 0x218]
mov dword [ebp - 0x240], eax
jmp 0x1005064c
cmp dword [ebp - 0x2bc], 0
je 0x10050a4d
push 4
push dword [ebp - 0x2b4]
push dword [ebp - 0x2b8]
call dword [ebp - 0x2bc]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop edi
pop esi
mov esp, ebp
pop ebp
ret