Function at 0x1002ca95
Capabilities:
Get file attributes

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x1007e211
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x384
push esi
movzx eax, byte [ebp + 8]
test eax, eax
je 0x1002cb14
mov eax, dword [ebp + 0xc]
mov dword [ebp - 0x208], eax
mov eax, dword [ebp + 0x10]
mov dword [ebp - 0x274], eax
mov eax, dword [ebp - 0x208]
mov dword [ebp - 0x74], eax
mov eax, dword [ebp - 0x274]
mov dword [ebp - 0x27c], eax
mov eax, dword [ebp - 0x74]
mov eax, dword [eax]
mov ecx, dword [ebp - 0x74]
mov ecx, dword [ecx]
mov ecx, dword [ecx + 0xc]
mov eax, dword [eax + 8]
mov edx, dword [ebp - 0x27c]
mov edx, dword [edx]
mov dword [eax + ecx*4], edx
mov eax, dword [ebp - 0x74]
mov eax, dword [eax]
mov eax, dword [eax + 0xc]
inc eax
mov ecx, dword [ebp - 0x74]
mov ecx, dword [ecx]
mov dword [ecx + 0xc], eax
jmp 0x1002dfa7
mov eax, dword [ebp + 0x1c]
mov dword [ebp - 0x284], eax
lea eax, [ebp + 0x14]
mov dword [ebp - 0x22c], eax
mov eax, dword [ebp + 0x18]
mov dword [ebp - 0x4c], eax
mov eax, dword [ebp - 0x4c]
mov eax, dword [eax]
mov ecx, dword [ebp - 0x284]
add ecx, dword [eax]
mov dword [ebp - 0x21c], ecx
mov dword [ebp - 0x28], 0xa4f833fc
mov dword [ebp - 0x40], 0x39c9
mov dword [ebp - 0x78], 0x39b8842b
mov dword [ebp - 0x30], 0xc63b8821
mov dword [ebp - 0x48], 0xacb2d505
mov dword [ebp - 0xd0], 0x1f23
mov dword [ebp - 0x240], 0x4681
mov dword [ebp - 0x70], 0
jmp 0x1002cb86
mov eax, dword [ebp - 0x70]
inc eax
mov dword [ebp - 0x70], eax
cmp dword [ebp - 0x70], 3
jge 0x1002cb9c
mov eax, dword [ebp - 0x70]
mov dword [ebp + eax*4 - 0xc8], 0xfffffff6
jmp 0x1002cb7f
mov dword [ebp - 0x28], 2
jmp 0x1002cbac
mov eax, dword [ebp - 0x28]
dec eax
mov dword [ebp - 0x28], eax
cmp dword [ebp - 0x28], 0
jl 0x1002cbce
mov byte [ebp - 0x21], 0
movzx eax, byte [ebp - 0x21]
test eax, eax
je 0x1002cbcc
push 0x3a00
push 1
call fcn.1002a1e3
pop ecx
pop ecx
jmp 0x1002cba5
push 4
pop eax
shl eax, 0
cmp dword [ebp + eax - 0xc8], 0
jne 0x1002cbed
cmp dword [ebp - 0x40], 0
jne 0x1002cbed
and dword [ebp - 0x16c], 0
jmp 0x1002cbf7
mov dword [ebp - 0x16c], 1
push 4
pop eax
shl eax, 0
mov eax, dword [ebp + eax - 0xc8]
add eax, dword [ebp - 0x16c]
je 0x1002cc28
push 4
pop eax
imul eax, eax, 0
cmp dword [ebp + eax - 0xc8], 0
je 0x1002cc28
mov dword [ebp - 0x1d4], 1
jmp 0x1002cc2f
and dword [ebp - 0x1d4], 0
push 4
pop eax
shl eax, 1
mov eax, dword [ebp + eax - 0xc8]
cmp dword [ebp - 0x1d4], eax
jge 0x1002cc4f
mov dword [ebp - 0x26c], 1
jmp 0x1002cc56
and dword [ebp - 0x26c], 0
mov eax, dword [ebp - 0x40]
cmp dword [ebp - 0x40], eax
je 0x1002cc6a
mov dword [ebp - 0x1cc], 1
jmp 0x1002cc71
and dword [ebp - 0x1cc], 0
mov eax, dword [ebp - 0x1cc]
mov dword [ebp - 0x78], eax
mov eax, dword [ebp - 0x78]
push 4
pop ecx
shl ecx, 0
imul eax, dword [ebp + ecx - 0xc8]
test eax, eax
je 0x1002cca1
cmp dword [ebp - 0x30], 0
je 0x1002cca1
mov dword [ebp - 0x204], 1
jmp 0x1002cca8
and dword [ebp - 0x204], 0
mov eax, dword [ebp - 0x30]
mov dword [ebp - 0x348], eax
xor eax, eax
inc eax
cmp eax, 0xffffffff
jge 0x1002ccc5
mov dword [ebp - 0xbc], 1
jmp 0x1002cccc
and dword [ebp - 0xbc], 0
mov eax, dword [ebp - 0xbc]
sub eax, dword [ebp - 0x48]
imul eax, dword [ebp - 0x48]
test eax, eax
je 0x1002ccf2
mov eax, 0x2599
test eax, eax
je 0x1002ccf2
mov dword [ebp - 0x150], 1
jmp 0x1002ccf9
and dword [ebp - 0x150], 0
mov eax, dword [ebp - 0x150]
mov dword [ebp - 0xd0], eax
mov eax, dword [ebp - 0xd0]
mov dword [ebp - 0x318], eax
mov eax, dword [ebp - 0x48]
mov dword [ebp - 0x320], eax
mov eax, dword [ebp - 0x48]
mov dword [ebp - 0x328], eax
mov eax, dword [ebp - 0x240]
cmp dword [ebp - 0x78], eax
jl 0x1002cd3a
mov dword [ebp - 0x1d0], 1
jmp 0x1002cd41
and dword [ebp - 0x1d0], 0
push 4
pop eax
shl eax, 0
mov ecx, dword [ebp - 0x40]
imul ecx, dword [ebp - 0x1d0]
cmp dword [ebp + eax - 0xc8], ecx
jl 0x1002cd66
mov dword [ebp - 0xd8], 1
jmp 0x1002cd6d
and dword [ebp - 0xd8], 0
mov eax, 0xffff
sub eax, dword [ebp - 0xd8]
push 4
pop ecx
shl ecx, 0
cmp eax, dword [ebp + ecx - 0xc8]
jle 0x1002cd93
mov dword [ebp - 0x200], 1
jmp 0x1002cd9a
and dword [ebp - 0x200], 0
push 4
pop eax
shl eax, 1
mov eax, dword [ebp + eax - 0xc8]
mov dword [ebp - 0x28], eax
mov eax, dword [ebp - 0x28]
mov dword [ebp - 0x330], eax
cmp dword [ebp - 0x30], 0
je 0x1002cdca
cmp dword [ebp - 0x40], 0
je 0x1002cdca
mov dword [ebp - 0x158], 1
jmp 0x1002cdd1
and dword [ebp - 0x158], 0
mov eax, dword [ebp - 0x30]
cmp dword [ebp - 0x158], eax
jne 0x1002cde8
mov dword [ebp - 0xe0], 1
jmp 0x1002cdef
and dword [ebp - 0xe0], 0
mov eax, dword [ebp - 0x30]
cmp dword [ebp - 0xe0], eax
je 0x1002ce06
mov dword [ebp - 0x198], 1
jmp 0x1002ce0d
and dword [ebp - 0x198], 0
mov eax, dword [ebp - 0x198]
mov dword [ebp - 0x30], eax
mov eax, dword [ebp - 0x4c]
mov eax, dword [eax]
add eax, 8
mov dword [ebp - 0x64], eax
mov dword [ebp - 0x1c], 0xd214c405
mov dword [ebp - 0x3c], 0xfffffffc
mov dword [ebp - 0x58], 0xffffffff
mov dword [ebp - 0x1b8], 0x23dd972c
mov dword [ebp - 0x280], 0xffffffff
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], 0
jne 0x1002cf73
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], 0
je 0x1002cf6a
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x338], eax
mov eax, dword [ebp - 0x3c]
mov dword [ebp - 0x340], eax
mov eax, dword [ebp - 0x3c]
cmp dword [ebp - 0x3c], eax
je 0x1002ce90
mov dword [ebp - 0xe8], 1
jmp 0x1002ce97
and dword [ebp - 0xe8], 0
mov dword [ebp - 0x1c], 0
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x2d0], eax
mov eax, dword [ebp - 0xe8]
mov dword [ebp - 0x3c], eax
mov eax, dword [ebp - 0x3c]
mov dword [ebp - 0x380], eax
mov eax, dword [ebp - 0x3c]
sub eax, dword [ebp - 0x58]
cmp eax, 0xe3ca3691
jbe 0x1002ced2
mov dword [ebp - 0x160], 1
jmp 0x1002ced9
and dword [ebp - 0x160], 0
mov eax, dword [ebp - 0x58]
cmp dword [ebp - 0x160], eax
jl 0x1002cef0
mov dword [ebp - 0xf0], 1
jmp 0x1002cef7
and dword [ebp - 0xf0], 0
mov eax, dword [ebp - 0xf0]
mov dword [ebp - 0x1b8], eax
cmp dword [ebp - 0x1b8], 0xa98ceef9
jae 0x1002cf1b
mov dword [ebp - 0xf8], 1
jmp 0x1002cf22
and dword [ebp - 0xf8], 0
cmp dword [ebp - 0xf8], 0x2659
jne 0x1002cf3a
mov dword [ebp - 0x168], 1
jmp 0x1002cf41
and dword [ebp - 0x168], 0
cmp dword [ebp - 0x168], 1
jb 0x1002cf56
mov dword [ebp - 0x100], 1
jmp 0x1002cf5d
and dword [ebp - 0x100], 0
cmp dword [ebp - 0x100], 0
jne 0x1002cf73
xor eax, eax
jne 0x1002cf73
and dword [ebp - 0x1a0], 0
jmp 0x1002cf7d
mov dword [ebp - 0x1a0], 1
mov eax, dword [ebp - 0x58]
cmp dword [ebp - 0x1a0], eax
jl 0x1002cf94
mov dword [ebp - 0x108], 1
jmp 0x1002cf9b
and dword [ebp - 0x108], 0
mov eax, dword [ebp - 0x58]
cmp dword [ebp - 0x108], eax
jle 0x1002cfb2
mov dword [ebp - 0x170], 1
jmp 0x1002cfb9
and dword [ebp - 0x170], 0
mov eax, dword [ebp - 0x170]
mov dword [ebp - 0x280], eax
mov byte [ebp - 0x1d], 0
movzx eax, byte [ebp - 0x1d]
test eax, eax
je 0x1002cfd9
push 0
call dword [sym.imp.KERNEL32.dll_GetFileAttributesW]
and dword [ebp - 0x84], 0
jmp 0x1002cff7
mov eax, dword [ebp - 0x84]
inc eax
mov dword [ebp - 0x84], eax
mov eax, dword [ebp - 0x64]
inc eax
inc eax
mov dword [ebp - 0x64], eax
mov eax, dword [ebp - 0x4c]
mov eax, dword [eax]
mov eax, dword [eax + 4]
sub eax, 8
shr eax, 1
cmp dword [ebp - 0x84], eax
jae 0x1002dd1a
push 1
lea ecx, [ebp - 0x1e0]
call fcn.10017fd3
and dword [ebp - 4], 0
mov dword [ebp - 0x1e4], 0x7a501900
mov dword [ebp - 0x1c8], 7
push 0
lea eax, [ebp - 0x30c]
push eax
push 0x859
push 0x5533
push 0x20d3
lea eax, [ebp - 0x1e0]
push eax
call fcn.1002fbc0
add esp, 0x18
push 0
lea ecx, [ebp - 0x1e0]
call fcn.10018040
mov dword [eax], 0xfffffff6
jmp 0x1002d095
push 0
lea ecx, [ebp - 0x1e0]
call fcn.10018040
mov dword [ebp - 0x110], eax
mov eax, dword [ebp - 0x110]
mov eax, dword [eax]
inc eax
mov ecx, dword [ebp - 0x110]
mov dword [ecx], eax
push 0
lea ecx, [ebp - 0x1e0]
call fcn.10018040
cmp dword [eax], 0xffffffff
jne 0x1002d1f4
mov dword [ebp - 0x118], 0xfffffffe
mov dword [ebp - 0x38], 9
push 0x641c
push 0x4648
push 0x1de0
lea eax, [ebp - 0x38]
push eax
lea eax, [ebp - 0x1c8]
push eax
lea eax, [ebp - 0x1e0]
push eax
lea eax, [ebp - 0x1e4]
push eax
push 0x3ad5
lea eax, [ebp - 0x118]
push eax
push 1
call fcn.1002a218
add esp, 0x28
mov dword [ebp - 0x38], 0xfffffff3
jmp 0x1002d10a
mov eax, dword [ebp - 0x38]
inc eax
mov dword [ebp - 0x38], eax
cmp dword [ebp - 0x38], 7
jg 0x1002d1ef
mov dword [ebp - 0x248], 0
mov dword [ebp - 0x298], 0xfffffffd
mov dword [ebp - 0x294], 0xfffffffd
mov dword [ebp - 0x290], 0xfffffffd
mov dword [ebp - 0x28c], 0xfffffffd
lea ecx, [ebp - 0xad]
call fcn.100092c3
push eax
lea eax, [ebp - 0x288]
push eax
lea eax, [ebp - 0x298]
push eax
lea ecx, [ebp - 0x388]
call fcn.1001804f
push dword [eax + 4]
push dword [eax]
lea ecx, [ebp - 0x358]
call fcn.10018015
mov byte [ebp - 4], 1
lea eax, [ebp - 0x1c8]
push eax
lea eax, [ebp - 0x358]
push eax
push 1
lea eax, [ebp - 0x118]
push eax
push 0x75ee
lea eax, [ebp - 0x248]
push eax
lea eax, [ebp - 0x38]
push eax
push 0x453d
lea eax, [ebp - 0x1e0]
push eax
call fcn.1002ad79
add esp, 0x24
mov byte [ebp - 0x1e], 0
push 0x5a62
push 0x1bcd
push 0
push 0x34f2
lea eax, [ebp - 0x1e]
push eax
call fcn.1002b7a7
add esp, 0x14
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x358]
call fcn.1001803b
jmp 0x1002d103
jmp 0x1002d071
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x1e0]
call fcn.1001803b
mov dword [ebp - 0x138], 0xe9d0
mov dword [ebp - 0x324], 0x304b25b3
mov dword [ebp - 0xac], 1
mov dword [ebp - 0x268], 1
mov dword [ebp - 0x8c], 0x272a727
mov dword [ebp - 0x180], 0xa66e58d0
mov dword [ebp - 0x210], 0xfffffffd
mov dword [ebp - 0x178], 0
mov dword [ebp - 0x68], 0
jmp 0x1002d263
mov eax, dword [ebp - 0x68]
inc eax
mov dword [ebp - 0x68], eax
cmp dword [ebp - 0x68], 3
jge 0x1002d279
mov eax, dword [ebp - 0x68]
mov dword [ebp + eax*4 - 0x368], 0xec5e
jmp 0x1002d25c
mov eax, dword [ebp - 0x178]
inc eax
mov dword [ebp - 0x178], eax
cmp dword [ebp - 0xac], 0
je 0x1002d323
imul eax, dword [ebp - 0xac], 0xffffffff
push 4
pop ecx
imul ecx, ecx, 0
cmp eax, dword [ebp + ecx - 0x368]
jg 0x1002d2b5
mov dword [ebp - 0x120], 1
jmp 0x1002d2bc
and dword [ebp - 0x120], 0
cmp dword [ebp - 0x120], 0x593c
je 0x1002d2d4
mov dword [ebp - 0x1a8], 1
jmp 0x1002d2db
and dword [ebp - 0x1a8], 0
mov eax, dword [ebp - 0x138]
add eax, dword [ebp - 0x1a8]
cmp eax, dword [ebp - 0x8c]
jle 0x1002d2fb
mov dword [ebp - 0x128], 1
jmp 0x1002d302
and dword [ebp - 0x128], 0
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x368]
cmp dword [ebp - 0x128], eax
jle 0x1002d323
mov dword [ebp - 0x130], 1
jmp 0x1002d32a
and dword [ebp - 0x130], 0
mov eax, dword [ebp - 0x8c]
mov dword [ebp - 0x180], eax
mov eax, dword [ebp - 0x180]
sub eax, dword [ebp - 0x210]
mov ecx, dword [ebp - 0x130]
sub ecx, dword [ebp - 0x268]
cmp eax, ecx
jge 0x1002d35e
mov dword [ebp - 0x1c0], 1
jmp 0x1002d365
and dword [ebp - 0x1c0], 0
mov eax, dword [ebp - 0x1c0]
sub eax, dword [ebp - 0x138]
cmp eax, 0xb7758b39
jae 0x1002d384
mov dword [ebp - 0x188], 1
jmp 0x1002d38b
and dword [ebp - 0x188], 0
mov eax, dword [ebp - 0xac]
add eax, dword [ebp - 0x188]
mov dword [ebp - 0x8c], eax
mov dword [ebp - 0x10], 3
mov dword [ebp - 0xa4], 0x2da3c3d
mov dword [ebp - 0x60], 0xfffffffb
mov dword [ebp - 0x50], 0xffffffff
push 2
lea ecx, [ebp - 0x9c]
call fcn.10017fd3
mov dword [ebp - 4], 2
mov dword [ebp - 0xd4], 0x1210
mov dword [ebp - 0x220], 0xc0136ef6
mov dword [ebp - 0x2dc], 0xbd42f903
push 2
lea ecx, [ebp - 0x2bc]
call fcn.10017fd3
mov byte [ebp - 4], 3
lea eax, [ebp - 0x218]
push eax
push 0x74a5
lea eax, [ebp - 0x9c]
push eax
push 0x4ec6
push 1
push 0x5588
call fcn.1002af38
add esp, 0x18
lea eax, [ebp - 0x218]
push eax
lea eax, [ebp - 0x2bc]
push eax
push 0
push 0x5359
push 0x4d7c
call fcn.1002b266
add esp, 0x14
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x37c], eax
mov eax, dword [ebp - 0x10]
sub eax, 0xd21c
cmp eax, dword [ebp - 0x10]
jge 0x1002d46a
mov dword [ebp - 0x140], 1
jmp 0x1002d471
and dword [ebp - 0x140], 0
mov eax, dword [ebp - 0x10]
cmp eax, dword [ebp - 0x140]
je 0x1002d488
mov dword [ebp - 0x1b0], 1
jmp 0x1002d48f
and dword [ebp - 0x1b0], 0
mov eax, dword [ebp - 0x10]
cmp dword [ebp - 0x1b0], eax
jg 0x1002d4a6
mov dword [ebp - 0x250], 1
jmp 0x1002d4ad
and dword [ebp - 0x250], 0
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x2e4], eax
cmp dword [ebp - 0x10], 0
je 0x1002d4ce
cmp dword [ebp - 0x10], 0
je 0x1002d4ce
mov dword [ebp - 0x148], 1
jmp 0x1002d4d5
and dword [ebp - 0x148], 0
mov eax, dword [ebp - 0x10]
imul eax, dword [ebp - 0x148]
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 0xd1b40e11
ja 0x1002d4f7
mov dword [ebp - 0x190], 1
jmp 0x1002d4fe
and dword [ebp - 0x190], 0
mov eax, dword [ebp - 0x190]
mov dword [ebp - 0xa4], eax
mov eax, dword [ebp - 0xa4]
imul eax, dword [ebp - 0x60]
cmp eax, dword [ebp - 0x60]
jle 0x1002d52e
mov eax, 0x42e1
test eax, eax
je 0x1002d52e
mov dword [ebp - 0xb8], 1
jmp 0x1002d535
and dword [ebp - 0xb8], 0
mov eax, dword [ebp - 0xb8]
sub eax, dword [ebp - 0x60]
sub eax, dword [ebp - 0x60]
mov dword [ebp - 0x50], eax
push 1
lea ecx, [ebp - 0x9c]
call fcn.10018040
push 1
lea ecx, [ebp - 0x9c]
call fcn.10018040
mov eax, dword [ebp - 0xd4]
mov dword [ebp - 0x32c], eax
mov eax, dword [ebp - 0xa4]
mov dword [ebp - 0x2ec], eax
mov esi, dword [ebp - 0x220]
push 1
lea ecx, [ebp - 0x9c]
call fcn.10018040
cmp esi, dword [eax]
je 0x1002d599
mov dword [ebp - 0xcc], 1
jmp 0x1002d5a0
and dword [ebp - 0xcc], 0
mov eax, dword [ebp - 0xcc]
neg eax
je 0x1002d79d
mov dword [ebp - 0x7c], 0
mov dword [ebp - 0xec], 0xfffffff6
mov dword [ebp - 0x10c], 0x88a21dec
mov dword [ebp - 0x278], 0
mov dword [ebp - 0x34c], 0xfffffffa
lea eax, [ebp - 0x10]
push eax
push 0xaaa
lea eax, [ebp - 0x9c]
push eax
lea eax, [ebp - 0xd4]
push eax
push 0
lea eax, [ebp - 0x7c]
push eax
call fcn.1002f10a
add esp, 0x18
mov dword [ebp - 0x10], 1
jmp 0x1002d612
mov eax, dword [ebp - 0x10]
dec eax
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 0
jl 0x1002d79b
mov dword [ebp - 0xfc], 1
mov dword [ebp - 0x2f4], 0xa9e5faf1
push dword [ebp - 0x10]
lea ecx, [ebp - 0x9c]
call fcn.10018040
mov esi, eax
push dword [ebp - 0x10]
lea ecx, [ebp - 0x9c]
call fcn.10018040
mov ecx, dword [esi]
sub ecx, dword [eax]
cmp ecx, 9
je 0x1002d663
mov dword [ebp - 0xdc], 1
jmp 0x1002d66a
and dword [ebp - 0xdc], 0
push 0xfffffffffffffffc
pop eax
sub eax, dword [ebp - 0xdc]
cmp eax, 4
jae 0x1002d689
xor eax, eax
inc eax
je 0x1002d689
mov dword [ebp - 0xe4], 1
jmp 0x1002d690
and dword [ebp - 0xe4], 0
mov eax, dword [ebp - 0xe4]
mov dword [ebp - 0xec], eax
mov esi, dword [ebp - 0xec]
push dword [ebp - 0x10]
lea ecx, [ebp - 0x9c]
call fcn.10018040
cmp esi, dword [eax]
je 0x1002d6c0
mov dword [ebp - 0xf4], 1
jmp 0x1002d6c7
and dword [ebp - 0xf4], 0
mov eax, dword [ebp - 0xf4]
mov dword [ebp - 0xfc], eax
mov eax, dword [ebp - 0xfc]
mov dword [ebp - 0x334], eax
cmp dword [ebp - 0x7c], 0xf71
je 0x1002d6f4
mov dword [ebp - 0x104], 1
jmp 0x1002d6fb
and dword [ebp - 0x104], 0
mov eax, dword [ebp - 0x104]
mov dword [ebp - 0x50], eax
mov eax, dword [ebp - 0x50]
mov dword [ebp - 0x10c], eax
mov eax, dword [ebp - 0x7c]
cmp dword [ebp - 0x10c], eax
jge 0x1002d724
mov dword [ebp - 0x114], 1
jmp 0x1002d72b
and dword [ebp - 0x114], 0
push dword [ebp - 0x10]
lea ecx, [ebp - 0x9c]
call fcn.10018040
mov esi, dword [eax]
add esi, dword [ebp - 0x114]
push dword [ebp - 0x10]
lea ecx, [ebp - 0x9c]
call fcn.10018040
cmp esi, dword [eax]
jg 0x1002d75f
mov dword [ebp - 0x11c], 1
jmp 0x1002d766
and dword [ebp - 0x11c], 0
mov eax, dword [ebp - 0x11c]
mov dword [ebp - 0x278], eax
push 1
lea ecx, [ebp - 0x2bc]
call fcn.10018040
mov dword [ebp - 0x124], eax
mov eax, dword [ebp - 0x124]
mov eax, dword [eax]
dec eax
mov ecx, dword [ebp - 0x124]
mov dword [ecx], eax
jmp 0x1002d60b
jmp 0x1002d7cc
mov dword [ebp - 0x228], 0xffffffff
cmp dword [ebp - 0x228], 4
jle 0x1002d7bc
mov dword [ebp - 0x12c], 1
jmp 0x1002d7c3
and dword [ebp - 0x12c], 0
mov eax, dword [ebp - 0x12c]
mov dword [ebp - 0x50], eax
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x2bc]
call fcn.1001803b
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x9c]
call fcn.1001803b
mov eax, dword [ebp - 0x64]
movzx eax, word [eax]
sar eax, 0xc
mov dword [ebp - 0x20c], eax
mov dword [ebp - 0x18], 0xe8cff0ea
mov dword [ebp - 0x5c], 0xffffffff
mov dword [ebp - 0xb4], 1
mov dword [ebp - 0x270], 0x8f5537c5
mov dword [ebp - 0x80], 0x374f
mov dword [ebp - 0x230], 0xfffffff8
mov dword [ebp - 0x54], 0
jmp 0x1002d83c
mov eax, dword [ebp - 0x54]
inc eax
mov dword [ebp - 0x54], eax
cmp dword [ebp - 0x54], 4
jge 0x1002d852
mov eax, dword [ebp - 0x54]
mov dword [ebp + eax*4 - 0x2cc], 0xe24b2e80
jmp 0x1002d835
mov dword [ebp - 0x18], 0
jmp 0x1002d862
mov eax, dword [ebp - 0x18]
dec eax
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], 0xffffffe3
jge 0x1002d96d
mov dword [ebp - 0x2c], 1
mov dword [ebp - 0x2c], 0
jmp 0x1002d883
mov eax, dword [ebp - 0x2c]
inc eax
mov dword [ebp - 0x2c], eax
cmp dword [ebp - 0x2c], 0x12
jg 0x1002d968
mov dword [ebp - 0x134], 0
push 0x1b4c
lea eax, [ebp - 0x134]
push eax
push 0x5d04
lea eax, [ebp - 0x5c]
push eax
push 1
lea eax, [ebp - 0x18]
push eax
call fcn.1002b0de
add esp, 0x18
mov eax, dword [ebp - 0x134]
neg eax
cmp eax, 0xe96b779c
jbe 0x1002d8d5
mov dword [ebp - 0x13c], 1
jmp 0x1002d8dc
and dword [ebp - 0x13c], 0
mov eax, dword [ebp - 0x18]
cmp dword [ebp - 0x13c], eax
jg 0x1002d8f3
mov dword [ebp - 0x144], 1
jmp 0x1002d8fa
and dword [ebp - 0x144], 0
cmp dword [ebp - 0x144], 0x81d2
jg 0x1002d912
mov dword [ebp - 0x14c], 1
jmp 0x1002d919
and dword [ebp - 0x14c], 0
mov eax, 0xe568
sub eax, dword [ebp - 0x2c]
cmp eax, dword [ebp - 0x2c]
jl 0x1002d932
mov dword [ebp - 0x154], 1
jmp 0x1002d939
and dword [ebp - 0x154], 0
mov eax, dword [ebp - 0x14c]
cmp eax, dword [ebp - 0x154]
jg 0x1002d953
mov dword [ebp - 0x15c], 1
jmp 0x1002d95a
and dword [ebp - 0x15c], 0
mov eax, dword [ebp - 0x15c]
mov dword [ebp - 0x5c], eax
jmp 0x1002d87c
jmp 0x1002d85b
cmp dword [ebp - 0xb4], 0
jne 0x1002da60
mov eax, dword [ebp - 0x80]
dec eax
mov dword [ebp - 0x80], eax
push 4
pop eax
imul eax, eax, 3
mov eax, dword [ebp + eax - 0x2cc]
mov dword [ebp - 0x258], eax
push 4
pop eax
imul eax, eax, 3
mov ecx, dword [ebp - 0x258]
mov dword [ebp + eax - 0x2cc], ecx
mov eax, dword [ebp - 0x80]
mov dword [ebp - 0x2fc], eax
push 4
pop eax
imul eax, eax, 3
push 4
pop ecx
imul ecx, ecx, 3
mov ecx, dword [ebp + ecx - 0x2cc]
cmp dword [ebp + eax - 0x2cc], ecx
jl 0x1002d9d8
mov dword [ebp - 0x164], 1
jmp 0x1002d9df
and dword [ebp - 0x164], 0
mov eax, dword [ebp - 0x164]
mov dword [ebp - 0x5c], eax
mov eax, dword [ebp - 0xb4]
cmp dword [ebp - 0x5c], eax
jle 0x1002d9ff
mov dword [ebp - 0x174], 1
jmp 0x1002da06
and dword [ebp - 0x174], 0
cmp dword [ebp - 0x174], 0x61be
jne 0x1002da1e
mov dword [ebp - 0x17c], 1
jmp 0x1002da25
and dword [ebp - 0x17c], 0
mov eax, dword [ebp - 0x230]
cmp dword [ebp - 0x17c], eax
jl 0x1002da3f
mov dword [ebp - 0x184], 1
jmp 0x1002da46
and dword [ebp - 0x184], 0
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x18], eax
mov eax, dword [ebp - 0x18]
sub eax, dword [ebp - 0x184]
je 0x1002da60
and dword [ebp - 0x18c], 0
jmp 0x1002da6a
mov dword [ebp - 0x18c], 1
mov eax, dword [ebp - 0x18c]
mov dword [ebp - 0x270], eax
push 0x7f1
push 1
lea eax, [ebp - 0x224]
push eax
lea eax, [ebp - 0x64]
push eax
push 0x718d
call fcn.1002b175
add esp, 0x14
mov dword [ebp - 0x34], 0xb22124f8
mov dword [ebp - 0xa0], 0xffffffff
mov dword [ebp - 0x6c], 0xd56974ed
mov dword [ebp - 0x88], 0x28d5
mov dword [ebp - 0x1e8], 0xfffffffa
mov dword [ebp - 0x14], 0
jmp 0x1002dad1
mov eax, dword [ebp - 0x14]
inc eax
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], 1
jge 0x1002dae7
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x1ec], 9
jmp 0x1002daca
mov dword [ebp - 0x14], 0
jmp 0x1002daf7
mov eax, dword [ebp - 0x14]
inc eax
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], 1
jge 0x1002db0d
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x1fc], 0x4951162d
jmp 0x1002daf0
mov dword [ebp - 0x14], 0
jmp 0x1002db1d
mov eax, dword [ebp - 0x14]
inc eax
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], 2
jge 0x1002db33
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x390], 5
jmp 0x1002db16
cmp dword [ebp - 0x34], 0
je 0x1002dc9b
cmp dword [ebp - 0x34], 0
je 0x1002db55
cmp dword [ebp - 0x34], 0
je 0x1002db55
mov dword [ebp - 0x1ac], 1
jmp 0x1002db5c
and dword [ebp - 0x1ac], 0
mov eax, dword [ebp - 0x34]
mov dword [ebp - 0x36c], eax
push 0xfffffffffffffffd
pop eax
cmp eax, 0xffffffff
ja 0x1002db79
mov dword [ebp - 0x238], 1
jmp 0x1002db80
and dword [ebp - 0x238], 0
mov eax, dword [ebp - 0x6c]
mov dword [ebp - 0x304], eax
mov eax, dword [ebp - 0x6c]
cmp dword [ebp - 0x6c], eax
jne 0x1002dba3
cmp dword [ebp - 0x88], 0
jne 0x1002dba3
and dword [ebp - 0x194], 0
jmp 0x1002dbad
mov dword [ebp - 0x194], 1
mov eax, dword [ebp - 0x6c]
cmp dword [ebp - 0x194], eax
jne 0x1002dbc4
mov dword [ebp - 0x19c], 1
jmp 0x1002dbcb
and dword [ebp - 0x19c], 0
cmp dword [ebp - 0x19c], 0xb2b058ef
jae 0x1002dbe3
mov dword [ebp - 0x1a4], 1
jmp 0x1002dbea
and dword [ebp - 0x1a4], 0
mov eax, dword [ebp - 0x34]
imul eax, dword [ebp - 0x1a4]
cmp eax, dword [ebp - 0x88]
jge 0x1002dc0e
cmp dword [ebp - 0x88], 0
jne 0x1002dc0e
and dword [ebp - 0x260], 0
jmp 0x1002dc18
mov dword [ebp - 0x260], 1
mov eax, dword [ebp - 0x1ac]
mov dword [ebp - 0xa0], eax
mov eax, dword [ebp - 0xa0]
mov dword [ebp - 0x308], eax
mov eax, 0xb56411d7
test eax, eax
jbe 0x1002dc45
mov dword [ebp - 0x90], 1
jmp 0x1002dc4c
and dword [ebp - 0x90], 0
push 4
pop eax
imul eax, eax, 0
mov ecx, dword [ebp - 0x90]
mov dword [ebp + eax - 0x1ec], ecx
mov eax, dword [ebp - 0x34]
cmp dword [ebp - 0x90], eax
jge 0x1002dc76
mov dword [ebp - 0x1b4], 1
jmp 0x1002dc7d
and dword [ebp - 0x1b4], 0
mov eax, dword [ebp - 0x1b4]
dec eax
je 0x1002dc9b
cmp dword [ebp - 0xa0], 0
je 0x1002dc9b
mov dword [ebp - 0xa8], 1
jmp 0x1002dca2
and dword [ebp - 0xa8], 0
push 4
pop eax
imul eax, eax, 0
mov ecx, dword [ebp - 0xa8]
mov dword [ebp + eax - 0x1fc], ecx
mov eax, dword [ebp - 0xa8]
mov dword [ebp - 0x1e8], eax
mov byte [ebp - 0x20], 0
lea eax, [ebp - 0x20]
push eax
push 0
call fcn.1002e617
pop ecx
pop ecx
mov eax, dword [ebp - 0x20c]
mov dword [ebp - 0x214], eax
cmp dword [ebp - 0x214], 3
je 0x1002dceb
jmp 0x1002dd15
mov eax, dword [ebp - 0x21c]
add eax, dword [ebp - 0x224]
mov dword [ebp - 0x1bc], eax
mov eax, dword [ebp - 0x1bc]
mov eax, dword [eax]
mov ecx, dword [ebp - 0x22c]
add eax, dword [ecx]
mov ecx, dword [ebp - 0x1bc]
mov dword [ecx], eax
jmp 0x1002cfe2
mov dword [ebp - 0x44], 1
mov dword [ebp - 0x24c], 1
mov dword [ebp - 0x310], 0
mov dword [ebp - 0x33c], 2
mov dword [ebp - 0x314], 0
mov dword [ebp - 0x35c], 0x5f992db7
push 1
lea ecx, [ebp - 0x2b0]
call fcn.10017fd3
mov dword [ebp - 4], 4
mov dword [ebp - 0x31c], 0xb03be465
mov dword [ebp - 0x25c], 0x647c
lea eax, [ebp - 0x344]
push eax
push 1
lea eax, [ebp - 0x2b0]
push eax
call fcn.1002b1fb
add esp, 0xc
mov dword [ebp - 0x44], 5
jmp 0x1002dda3
mov eax, dword [ebp - 0x44]
inc eax
mov dword [ebp - 0x44], eax
cmp dword [ebp - 0x44], 0xf
jl 0x1002df85
push 4
lea ecx, [ebp - 0x1f8]
call fcn.10017fd3
mov byte [ebp - 4], 5
mov dword [ebp - 0x2d4], 0x1fb8eb5e
mov dword [ebp - 0x2d8], 0xffffffff
mov dword [ebp - 0x2e0], 9
mov dword [ebp - 0x2e8], 0xfffffff7
mov dword [ebp - 0x254], 0xffffffff
push 2
lea ecx, [ebp - 0x378]
call fcn.10017fd3
mov byte [ebp - 4], 6
mov dword [ebp - 0x2f0], 0x82a74db5
mov dword [ebp - 0x264], 0xffffffff
push 0x1f28
lea eax, [ebp - 0x234]
push eax
push 0
lea eax, [ebp - 0x1f8]
push eax
call fcn.1002f20b
add esp, 0x10
lea eax, [ebp - 0x378]
push eax
push 0
lea eax, [ebp - 0x234]
push eax
call fcn.1002b63a
add esp, 0xc
push 1
lea ecx, [ebp - 0x1f8]
call fcn.10018040
mov dword [eax], 0xfffffffa
jmp 0x1002de83
push 1
lea ecx, [ebp - 0x1f8]
call fcn.10018040
mov dword [ebp - 0x1c4], eax
mov eax, dword [ebp - 0x1c4]
mov eax, dword [eax]
dec eax
mov ecx, dword [ebp - 0x1c4]
mov dword [ecx], eax
push 1
lea ecx, [ebp - 0x1f8]
call fcn.10018040
cmp dword [eax], 0xffffffe3
jle 0x1002df5a
mov dword [ebp - 0x23c], 0x34f545ee
mov dword [ebp - 0x2f8], 0x24015fb2
push 4
lea ecx, [ebp - 0x2a4]
call fcn.10017fd3
mov byte [ebp - 4], 7
mov dword [ebp - 0x244], 0
push 0x6888
push 0x61e6
push 1
lea eax, [ebp - 0x2a4]
push eax
lea eax, [ebp - 0x300]
push eax
call fcn.1002b266
add esp, 0x14
mov byte [ebp - 0x1f], 0
push 1
lea eax, [ebp - 0x1f]
push eax
call fcn.1002b310
pop ecx
pop ecx
lea eax, [ebp - 0x44]
push eax
lea eax, [ebp - 0x23c]
push eax
lea eax, [ebp - 0x244]
push eax
lea eax, [ebp - 0x24c]
push eax
push 0x6995
push 1
lea eax, [ebp - 0x2a4]
push eax
lea eax, [ebp - 0x254]
push eax
lea eax, [ebp - 0x25c]
push eax
lea eax, [ebp - 0x2b0]
push eax
lea eax, [ebp - 0x264]
push eax
call fcn.1002b35f
add esp, 0x2c
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x2a4]
call fcn.1001803b
jmp 0x1002de5f
push 0
call fcn.1002dfb6
pop ecx
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x378]
call fcn.1001803b
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x1f8]
call fcn.1001803b
jmp 0x1002dd9c
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x2b0]
call fcn.1001803b
push 0x7b89
push 1
lea eax, [ebp - 0x4c]
push eax
call fcn.1002b5e2
add esp, 0xc
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop esi
mov esp, ebp
pop ebp
ret