Function at 0x10015c6d
Capabilities:
Get file attributes

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x1007067e
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x30c
push esi
push edi
and dword [ebp - 0x58], 0
mov dword [ebp - 0x1a4], 0xfffffffb
mov dword [ebp - 0xb4], 1
mov dword [ebp - 0x1c0], 0x4677319
mov dword [ebp - 0x7c], 0x8ee85ec4
mov dword [ebp - 0x6c], 0
jmp 0x10015cc6
mov eax, dword [ebp - 0x6c]
inc eax
mov dword [ebp - 0x6c], eax
cmp dword [ebp - 0x6c], 2
jge 0x10015cd9
mov eax, dword [ebp - 0x6c]
mov dword [ebp + eax*4 - 0x78], 0xfffffff7
jmp 0x10015cbf
push 4
pop eax
shl eax, 0
mov dword [ebp + eax - 0x78], 0
jmp 0x10015cfe
push 4
pop eax
shl eax, 0
mov eax, dword [ebp + eax - 0x78]
dec eax
push 4
pop ecx
shl ecx, 0
mov dword [ebp + ecx - 0x78], eax
push 4
pop eax
shl eax, 0
cmp dword [ebp + eax - 0x78], 0xfffffffe
jle 0x10015f7d
mov dword [ebp - 0x18], 0xd1ad67a4
cmp dword [ebp - 0x18], 0
je 0x10015f24
cmp dword [ebp - 0x18], 0
jg 0x10015d32
mov dword [ebp - 0x128], 1
jmp 0x10015d39
and dword [ebp - 0x128], 0
mov eax, dword [ebp - 0x1c0]
cmp dword [ebp - 0x128], eax
jg 0x10015d53
mov dword [ebp - 0x168], 1
jmp 0x10015d5a
and dword [ebp - 0x168], 0
mov eax, dword [ebp - 0x7c]
neg eax
mov dword [ebp - 0x1bc], eax
mov eax, dword [ebp - 0x168]
mov dword [ebp - 0x1c4], eax
mov eax, dword [ebp - 0x7c]
dec eax
mov dword [ebp - 0x7c], eax
mov eax, dword [ebp - 0x1bc]
cmp eax, dword [ebp - 0x1c4]
jge 0x10015d92
mov dword [ebp - 0x170], 1
jmp 0x10015d99
and dword [ebp - 0x170], 0
mov eax, dword [ebp - 0x18]
cmp dword [ebp - 0x170], eax
jl 0x10015db0
mov dword [ebp - 0x160], 1
jmp 0x10015db7
and dword [ebp - 0x160], 0
imul eax, dword [ebp - 0x160], 0x6b90
imul eax, eax, 0xf551
cmp eax, dword [ebp - 0xb4]
jle 0x10015ddb
mov dword [ebp - 0x104], 1
jmp 0x10015de2
and dword [ebp - 0x104], 0
mov eax, dword [ebp - 0x18]
cmp dword [ebp - 0x104], eax
jle 0x10015df9
mov dword [ebp - 0x9c], 1
jmp 0x10015e00
and dword [ebp - 0x9c], 0
mov eax, dword [ebp - 0x18]
cmp dword [ebp - 0x9c], eax
jge 0x10015e17
mov dword [ebp - 0x13c], 1
jmp 0x10015e1e
and dword [ebp - 0x13c], 0
cmp dword [ebp - 0x13c], 0xea0e4020
ja 0x10015e36
mov dword [ebp - 0xa4], 1
jmp 0x10015e3d
and dword [ebp - 0xa4], 0
mov eax, dword [ebp - 0x18]
cmp dword [ebp - 0xa4], eax
jg 0x10015e54
mov dword [ebp - 0x10c], 1
jmp 0x10015e5b
and dword [ebp - 0x10c], 0
mov eax, dword [ebp - 0x18]
cmp eax, dword [ebp - 0x10c]
jg 0x10015e72
mov dword [ebp - 0xac], 1
jmp 0x10015e79
and dword [ebp - 0xac], 0
mov eax, dword [ebp - 0x18]
cmp dword [ebp - 0xac], eax
jne 0x10015e90
mov dword [ebp - 0x164], 1
jmp 0x10015e97
and dword [ebp - 0x164], 0
push 4
pop eax
shl eax, 0
mov eax, dword [ebp + eax - 0x78]
cmp dword [ebp - 0x164], eax
jle 0x10015eb5
mov dword [ebp - 0x114], 1
jmp 0x10015ebc
and dword [ebp - 0x114], 0
mov eax, dword [ebp - 0xb4]
cmp dword [ebp - 0x114], eax
jge 0x10015ed6
mov dword [ebp - 0xbc], 1
jmp 0x10015edd
and dword [ebp - 0xbc], 0
push 4
pop eax
shl eax, 0
mov eax, dword [ebp + eax - 0x78]
cmp dword [ebp - 0xbc], eax
je 0x10015efb
mov dword [ebp - 0x144], 1
jmp 0x10015f02
and dword [ebp - 0x144], 0
push 4
pop eax
shl eax, 0
mov ecx, dword [ebp - 0x18]
imul ecx, dword [ebp - 0x144]
cmp dword [ebp + eax - 0x78], ecx
je 0x10015f24
mov dword [ebp - 0xc4], 1
jmp 0x10015f2b
and dword [ebp - 0xc4], 0
push 4
pop eax
shl eax, 0
mov eax, dword [ebp + eax - 0x78]
cmp dword [ebp - 0xc4], eax
jle 0x10015f49
mov dword [ebp - 0x1b0], 1
jmp 0x10015f50
and dword [ebp - 0x1b0], 0
cmp dword [ebp - 0x18], 1
jne 0x10015f62
mov dword [ebp - 0x11c], 1
jmp 0x10015f69
and dword [ebp - 0x11c], 0
mov eax, dword [ebp - 0x11c]
add eax, 7
mov dword [ebp - 0x1a4], eax
jmp 0x10015ce9
mov eax, dword [0x1065ff18]
and eax, 1
jne 0x10015fb1
mov eax, dword [0x1065ff18]
or eax, 1
mov dword [0x1065ff18], eax
and dword [ebp - 4], 0
mov ecx, 0x1065fec4
call fcn.10017549
push 0x100710ee
call fcn.100595b6
pop ecx
or dword [ebp - 4], 0xffffffff
mov dword [ebp - 0x27c], 8
mov dword [ebp - 0x234], 1
mov dword [ebp - 0x23c], 4
mov dword [ebp - 0x70], 0
jmp 0x10015fdf
mov eax, dword [ebp - 0x70]
inc eax
mov dword [ebp - 0x70], eax
cmp dword [ebp - 0x70], 3
jge 0x10015ff5
mov eax, dword [ebp - 0x70]
mov dword [ebp + eax*4 - 0x1dc], 0x77862fd4
jmp 0x10015fd8
push 4
pop eax
shl eax, 0
mov dword [ebp + eax - 0x1dc], 0xfffffffb
jmp 0x10016023
push 4
pop eax
shl eax, 0
mov eax, dword [ebp + eax - 0x1dc]
dec eax
push 4
pop ecx
shl ecx, 0
mov dword [ebp + ecx - 0x1dc], eax
push 4
pop eax
shl eax, 0
cmp dword [ebp + eax - 0x1dc], 0xffffffe8
jle 0x1001604c
mov dword [ebp - 0xcc], 0x11151
mov eax, dword [ebp - 0xcc]
inc eax
mov dword [ebp - 0xcc], eax
jmp 0x10016008
mov ecx, dword [ebp + 0xc]
call fcn.10010f27
mov dword [ebp - 0x68], eax
cmp dword [ebp - 0x68], 6
jae 0x100160d2
mov eax, dword [ebp + 0xc]
mov dword [ebp - 0x180], eax
lea eax, [ebp - 0x244]
push eax
mov ecx, 0x1065fec4
call fcn.100173b9
push eax
lea eax, [ebp - 0x180]
push eax
lea eax, [ebp - 0x258]
push eax
mov ecx, 0x1065fec4
call fcn.100173c7
mov ecx, eax
call fcn.100173dc
movzx eax, al
test eax, eax
je 0x100160d2
mov eax, dword [ebp + 0xc]
mov dword [ebp - 0x1a8], eax
lea eax, [ebp - 0x1a8]
push eax
mov ecx, 0x1065fec4
call fcn.1001759d
push eax
mov ecx, dword [ebp + 8]
call fcn.100170b7
mov eax, dword [ebp - 0x58]
or eax, 1
mov dword [ebp - 0x58], eax
mov eax, dword [ebp + 8]
jmp 0x10016d73
mov dword [ebp - 0x260], 0
mov dword [ebp - 0x268], 0xe42a43d9
mov dword [ebp - 0x2ac], 1
mov dword [ebp - 0x2b0], 0x4c23afc3
mov dword [ebp - 0x208], 0xe3580d4
mov dword [ebp - 0x264], 0xfffffffd
mov dword [ebp - 0x210], 0xf8b5131d
mov dword [ebp - 0x280], 0x5223fa3a
mov dword [ebp - 0x218], 0xca8cda2a
mov dword [ebp - 0x26c], 0x6a715cc4
mov dword [ebp - 0x220], 4
mov dword [ebp - 0x2c0], 0x5e3b
mov dword [ebp - 0x2bc], 0x5e3b
mov dword [ebp - 0x2b8], 0x5e3b
mov dword [ebp - 0x2b4], 0x5e3b
mov dword [ebp - 0x284], 0xb979cd32
mov dword [ebp - 0x228], 0xd0e75d5f
mov dword [ebp - 0x1fc], 0x82c4475e
mov dword [ebp - 0x230], 0x46e33a79
mov dword [ebp - 0x28c], 0x56718e50
mov dword [ebp - 0x238], 0xffffffff
mov dword [ebp - 0x188], 0xfffffffc
mov dword [ebp - 0x54], 0
jmp 0x100161be
mov eax, dword [ebp - 0x54]
inc eax
mov dword [ebp - 0x54], eax
cmp dword [ebp - 0x54], 4
jge 0x100161d4
mov eax, dword [ebp - 0x54]
mov dword [ebp + eax*4 - 0x318], 0xfffffff9
jmp 0x100161b7
push 0
lea eax, [ebp - 0x188]
push eax
call fcn.10016e29
pop ecx
pop ecx
mov byte [ebp - 0x26], 0
movzx eax, byte [ebp - 0x26]
test eax, eax
je 0x100161fe
push 0x7f8e
push 1
call fcn.10015758
pop ecx
pop ecx
lea ecx, [ebp - 0x2d8]
call fcn.100170df
mov dword [ebp - 4], 1
mov dword [ebp - 0x1b4], 0xfffffffb
mov byte [ebp - 0x23], 0
movzx eax, byte [ebp - 0x23]
test eax, eax
je 0x10016234
push 0
push 0x807
call fcn.10016dd9
pop ecx
pop ecx
push 0x103d
lea eax, [ebp - 0x1b4]
push eax
push 0
call fcn.10015a5f
add esp, 0xc
mov eax, dword [ebp - 0x68]
xor edx, edx
push 2
pop ecx
div ecx
test edx, edx
jne 0x1001686f
mov dword [ebp - 0xf4], 0x7935db5a
mov dword [ebp - 0x20], 0
jmp 0x10016276
mov eax, dword [ebp - 0x20]
inc eax
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], 2
jge 0x10016289
mov eax, dword [ebp - 0x20]
mov dword [ebp + eax*4 - 0x48], 0xffffffff
jmp 0x1001626f
mov dword [ebp - 0x20], 0
jmp 0x10016299
mov eax, dword [ebp - 0x20]
inc eax
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], 2
jge 0x100162af
mov eax, dword [ebp - 0x20]
mov dword [ebp + eax*4 - 0x94], 0x29bf390
jmp 0x10016292
push 4
pop eax
imul eax, eax, 0
push 4
pop ecx
imul ecx, ecx, 0
mov eax, dword [ebp + eax - 0x48]
mov dword [ebp + ecx - 0x94], eax
push 4
pop eax
shl eax, 0
cmp dword [ebp + eax - 0x48], 0
jne 0x10016465
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x94]
mov dword [ebp - 0x15c], eax
push 4
pop eax
imul eax, eax, 0
mov ecx, dword [ebp - 0x15c]
mov dword [ebp + eax - 0x94], ecx
cmp dword [ebp - 0x15c], 0
je 0x100163c1
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x48]
mov dword [ebp - 0x294], eax
push 4
pop eax
shl eax, 0
mov eax, dword [ebp + eax - 0x48]
mov dword [ebp - 0x240], eax
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x94]
add eax, 0x61a6
jne 0x1001634a
mov dword [ebp - 0xd4], 1
jmp 0x10016351
and dword [ebp - 0xd4], 0
cmp dword [ebp - 0xd4], 0xdc8d
jle 0x10016369
mov dword [ebp - 0x124], 1
jmp 0x10016370
and dword [ebp - 0x124], 0
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x48]
cmp dword [ebp - 0x124], eax
jg 0x1001638e
mov dword [ebp - 0xdc], 1
jmp 0x10016395
and dword [ebp - 0xdc], 0
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x94]
imul eax, dword [ebp - 0xdc]
push 4
pop ecx
imul ecx, ecx, 0
cmp eax, dword [ebp + ecx - 0x48]
jl 0x100163c1
mov dword [ebp - 0x14c], 1
jmp 0x100163c8
and dword [ebp - 0x14c], 0
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x48]
cmp dword [ebp - 0x14c], eax
jne 0x100163e6
mov dword [ebp - 0xe4], 1
jmp 0x100163ed
and dword [ebp - 0xe4], 0
cmp dword [ebp - 0xe4], 7
jge 0x10016402
mov dword [ebp - 0x12c], 1
jmp 0x10016409
and dword [ebp - 0x12c], 0
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x48]
cmp dword [ebp - 0x12c], eax
jl 0x10016427
mov dword [ebp - 0xec], 1
jmp 0x1001642e
and dword [ebp - 0xec], 0
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x48]
cmp dword [ebp - 0xec], eax
jg 0x1001644c
mov dword [ebp - 0x16c], 1
jmp 0x10016453
and dword [ebp - 0x16c], 0
push 4
pop eax
shl eax, 0
mov eax, dword [ebp + eax - 0x48]
cmp dword [ebp - 0x16c], eax
jle 0x1001648f
mov byte [ebp - 0x21], 0
movzx eax, byte [ebp - 0x21]
test eax, eax
je 0x10016479
push 0
call dword [sym.imp.KERNEL32.dll_GetFileAttributesA]
mov byte [ebp - 0x25], 0
movzx eax, byte [ebp - 0x25]
test eax, eax
je 0x1001648d
push 1
call fcn.1001578a
pop ecx
jmp 0x100164a9
mov dword [ebp - 0x190], 0x68729207
lea eax, [ebp - 0x190]
push eax
push 1
call fcn.100157f3
pop ecx
pop ecx
mov eax, dword [ebp - 0xf4]
inc eax
mov dword [ebp - 0xf4], eax
lea eax, [ebp - 0x308]
push eax
call fcn.10008aa9
pop ecx
mov esi, eax
lea edi, [ebp - 0x2e4]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
lea esi, [ebp - 0x2e4]
lea edi, [ebp - 0x2f0]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov dword [ebp - 0x64], 0xd8cb
mov dword [ebp - 0x2c], 0x1865425a
mov dword [ebp - 0x30], 0xfffffffe
mov dword [ebp - 0x34], 0xa00d
mov dword [ebp - 0x4c], 0
mov dword [ebp - 0x174], 1
mov dword [ebp - 0x288], 0
mov dword [ebp - 0x60], 0
jmp 0x10016524
mov eax, dword [ebp - 0x60]
inc eax
mov dword [ebp - 0x60], eax
cmp dword [ebp - 0x60], 3
jge 0x1001653a
mov eax, dword [ebp - 0x60]
mov dword [ebp + eax*4 - 0x2fc], 9
jmp 0x1001651d
mov eax, dword [ebp - 0x64]
sub eax, dword [ebp - 0x64]
mov dword [ebp - 0x2c], eax
mov eax, dword [ebp - 0x2c]
mov dword [ebp - 0x30], eax
mov eax, dword [ebp - 0x64]
mov dword [ebp - 0x248], eax
mov eax, dword [ebp - 0x30]
sub eax, dword [ebp - 0x2c]
cmp eax, dword [ebp - 0x34]
jl 0x10016569
mov dword [ebp - 0x134], 1
jmp 0x10016570
and dword [ebp - 0x134], 0
mov eax, dword [ebp - 0x2c]
add eax, dword [ebp - 0x134]
mov dword [ebp - 0x2c], eax
mov eax, dword [ebp - 0x34]
cmp dword [ebp - 0x2c], eax
jg 0x10016590
mov dword [ebp - 0xfc], 1
jmp 0x10016597
and dword [ebp - 0xfc], 0
mov eax, dword [ebp - 0x30]
cmp dword [ebp - 0xfc], eax
jg 0x100165ae
mov dword [ebp - 0x154], 1
jmp 0x100165b5
and dword [ebp - 0x154], 0
mov eax, dword [ebp - 0x30]
cmp eax, dword [ebp - 0x154]
jne 0x100165cc
mov dword [ebp - 0x8c], 1
jmp 0x100165d3
and dword [ebp - 0x8c], 0
imul eax, dword [ebp - 0x8c], 0xcc09
imul eax, eax, 0x8e50
add eax, dword [ebp - 0x34]
mov dword [ebp - 0x4c], eax
mov eax, dword [ebp - 0x34]
cmp dword [ebp - 0x4c], eax
jne 0x100165fd
mov dword [ebp - 0x98], 1
jmp 0x10016604
and dword [ebp - 0x98], 0
mov eax, dword [ebp - 0x34]
cmp dword [ebp - 0x98], eax
je 0x100167a7
mov dword [ebp - 0x3c], 0xe0752570
mov dword [ebp - 0xb8], 8
mov dword [ebp - 0x5c], 0
jmp 0x10016634
mov eax, dword [ebp - 0x5c]
inc eax
mov dword [ebp - 0x5c], eax
cmp dword [ebp - 0x5c], 1
jge 0x10016647
mov eax, dword [ebp - 0x5c]
mov dword [ebp + eax*4 - 0x38], 0x8ee7
jmp 0x1001662d
lea eax, [ebp - 0x3c]
push eax
lea eax, [ebp - 0x4c]
push eax
push 1
lea eax, [ebp - 0x30]
push eax
lea eax, [ebp - 0x64]
push eax
lea eax, [ebp - 0x34]
push eax
call fcn.1001584b
add esp, 0x18
mov eax, dword [ebp - 0x174]
mov dword [ebp - 0x298], eax
mov eax, dword [ebp - 0x3c]
mov dword [ebp - 0x254], eax
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x38]
cmp dword [ebp - 0x3c], eax
jge 0x10016695
mov dword [ebp - 0xa0], 1
jmp 0x1001669c
and dword [ebp - 0xa0], 0
imul eax, dword [ebp - 0xa0], 0xd2e6
cmp eax, 0xd3a1a91f
ja 0x100166b9
mov dword [ebp - 0xa8], 1
jmp 0x100166c0
and dword [ebp - 0xa8], 0
cmp dword [ebp - 0xa8], 0
jne 0x100166d4
push 4
pop eax
imul eax, eax, 0
cmp dword [ebp + eax - 0x38], 0
push 4
pop eax
imul eax, eax, 0
push 5
pop ecx
sub ecx, 0x84d8bc89
cmp dword [ebp + eax - 0x38], ecx
je 0x100166f5
mov dword [ebp - 0xb0], 1
jmp 0x100166fc
and dword [ebp - 0xb0], 0
mov eax, dword [ebp - 0xb0]
mov dword [ebp - 0xb8], eax
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x38]
cmp dword [ebp - 0xb8], eax
jle 0x10016726
mov dword [ebp - 0xc0], 1
jmp 0x1001672d
and dword [ebp - 0xc0], 0
cmp dword [ebp - 0xc0], 1
jb 0x10016742
mov dword [ebp - 0xc8], 1
jmp 0x10016749
and dword [ebp - 0xc8], 0
mov eax, dword [ebp - 0x3c]
cmp dword [ebp - 0xc8], eax
je 0x10016760
mov dword [ebp - 0x198], 1
jmp 0x10016767
and dword [ebp - 0x198], 0
mov eax, dword [ebp - 0x3c]
mov dword [ebp - 0x290], eax
push 4
pop eax
imul eax, eax, 0
mov ecx, dword [ebp - 0x30]
cmp dword [ebp + eax - 0x38], ecx
je 0x1001678b
mov dword [ebp - 0xd0], 1
jmp 0x10016792
and dword [ebp - 0xd0], 0
push 4
pop eax
imul eax, eax, 0
mov ecx, dword [ebp - 0xd0]
sub ecx, dword [ebp + eax - 0x38]
mov dword [ebp - 0x4c], ecx
jmp 0x1001680b
mov dword [ebp - 0x25c], 1
mov dword [ebp - 0x2a8], 0x89eebb9f
mov dword [ebp - 0x2a4], 0x89eebb9f
mov dword [ebp - 0x2a0], 0x89eebb9f
mov dword [ebp - 0x29c], 0x89eebb9f
mov dword [ebp - 0x200], 0xffffffff
mov dword [ebp - 0x1b8], 9
push 1
call fcn.10015a0e
pop ecx
lea eax, [ebp - 0x1b8]
push eax
push 0x1c53
push 1
call fcn.10015a5f
add esp, 0xc
mov ecx, dword [ebp + 0xc]
call fcn.10010fb9
mov dword [ebp - 0x1a0], eax
lea eax, [ebp - 0x2d8]
push eax
lea eax, [ebp - 0x68]
push eax
push 1
lea eax, [ebp - 0x2f0]
push eax
push 0x5e8c
lea eax, [ebp - 0x1a0]
push eax
call fcn.10015ad1
add esp, 0x18
cmp dword [ebp - 0x68], 6
jae 0x1001686f
mov eax, dword [ebp + 0xc]
mov dword [ebp - 0x1ac], eax
lea eax, [ebp - 0x2d8]
push eax
lea eax, [ebp - 0x1ac]
push eax
mov ecx, 0x1065fec4
call fcn.1001759d
mov ecx, eax
call fcn.10017146
mov dword [ebp - 0x14], 0xffffffff
mov dword [ebp - 0x178], 0xaba9a984
mov dword [ebp - 0x10], 0
jmp 0x10016890
mov eax, dword [ebp - 0x10]
inc eax
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 3
jge 0x100168a6
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0x1e8], 0x6160cbeb
jmp 0x10016889
mov dword [ebp - 0x10], 0
jmp 0x100168b6
mov eax, dword [ebp - 0x10]
inc eax
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 4
jge 0x100168cc
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0x1f8], 0xfffffffd
jmp 0x100168af
mov dword [ebp - 0x10], 0
jmp 0x100168dc
mov eax, dword [ebp - 0x10]
inc eax
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 3
jge 0x100168f2
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0x278], 0xfffffff7
jmp 0x100168d5
mov byte [ebp - 0x24], 0
movzx eax, byte [ebp - 0x24]
test eax, eax
je 0x10016906
push 1
call fcn.10015b62
pop ecx
cmp dword [ebp - 0x14], 0
jl 0x10016918
mov dword [ebp - 0xd8], 1
jmp 0x1001691f
and dword [ebp - 0xd8], 0
mov eax, dword [ebp - 0x14]
cmp dword [ebp - 0xd8], eax
jg 0x10016936
mov dword [ebp - 0xf0], 1
jmp 0x1001693d
and dword [ebp - 0xf0], 0
mov eax, dword [ebp - 0x14]
cmp dword [ebp - 0x14], eax
jne 0x10016951
mov dword [ebp - 0xe0], 1
jmp 0x10016958
and dword [ebp - 0xe0], 0
mov eax, dword [ebp - 0xe0]
sub eax, dword [ebp - 0x14]
sub eax, dword [ebp - 0x14]
mov dword [ebp - 0xe8], eax
push 4
pop eax
shl eax, 0
mov ecx, dword [ebp - 0xe8]
mov dword [ebp + eax - 0x1e8], ecx
mov eax, dword [ebp - 0x14]
cmp dword [ebp - 0xe8], eax
jge 0x10016994
mov dword [ebp - 0xf8], 1
jmp 0x1001699b
and dword [ebp - 0xf8], 0
mov eax, dword [ebp - 0xf0]
imul eax, dword [ebp - 0xf8]
test eax, eax
je 0x10016bbc
mov dword [ebp - 0x84], 0x1f06
mov dword [ebp - 0x118], 2
mov dword [ebp - 0x184], 0x83de7690
mov dword [ebp - 0x1c], 0
jmp 0x100169de
mov eax, dword [ebp - 0x1c]
inc eax
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], 2
jge 0x100169f4
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0x250], 0x39d6
jmp 0x100169d7
mov dword [ebp - 0x1c], 0
jmp 0x10016a04
mov eax, dword [ebp - 0x1c]
inc eax
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], 1
jge 0x10016a1a
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0x17c], 0xdd8607f4
jmp 0x100169fd
push 1
push 0xe7d
call fcn.10015b86
pop ecx
pop ecx
push 4
pop eax
shl eax, 0
mov eax, dword [ebp + eax - 0x1f8]
mov dword [ebp - 0x84], eax
push 4
pop eax
shl eax, 0
mov eax, dword [ebp + eax - 0x1f8]
mov dword [ebp - 0x204], eax
mov eax, dword [ebp - 0x14]
mov dword [ebp - 0x20c], eax
mov eax, dword [ebp - 0x118]
cmp dword [ebp - 0x84], eax
jne 0x10016a71
mov dword [ebp - 0x100], 1
jmp 0x10016a78
and dword [ebp - 0x100], 0
mov eax, dword [ebp - 0x178]
cmp dword [ebp - 0x100], eax
jl 0x10016a92
mov dword [ebp - 0x108], 1
jmp 0x10016a99
and dword [ebp - 0x108], 0
cmp dword [ebp - 0x108], 0x57218670
jge 0x10016aae
mov dword [ebp - 0x80], 1
jmp 0x10016ab2
and dword [ebp - 0x80], 0
push 4
pop eax
shl eax, 0
mov ecx, dword [ebp - 0x80]
mov dword [ebp + eax - 0x278], ecx
push 4
pop eax
shl eax, 0
mov eax, dword [ebp + eax - 0x1f8]
cmp eax, dword [ebp - 0x80]
jg 0x10016ae0
mov dword [ebp - 0x110], 1
jmp 0x10016ae7
and dword [ebp - 0x110], 0
push 4
pop eax
imul eax, eax, 0
mov ecx, dword [ebp - 0x110]
mov dword [ebp + eax - 0x17c], ecx
push 4
pop eax
shl eax, 0
mov eax, dword [ebp + eax - 0x278]
add eax, dword [ebp - 0x118]
cmp dword [ebp - 0x14], eax
jg 0x10016b1e
mov dword [ebp - 0x120], 1
jmp 0x10016b25
and dword [ebp - 0x120], 0
push 4
pop eax
shl eax, 0
mov eax, dword [ebp + eax - 0x1f8]
cmp dword [ebp - 0x120], eax
jle 0x10016b4f
cmp dword [ebp - 0x84], 0
je 0x10016b4f
mov dword [ebp - 0x88], 1
jmp 0x10016b56
and dword [ebp - 0x88], 0
push 4
pop eax
shl eax, 0
mov eax, dword [ebp + eax - 0x1e8]
mov dword [ebp - 0x130], eax
push 4
pop eax
shl eax, 0
mov ecx, dword [ebp - 0x130]
mov dword [ebp + eax - 0x250], ecx
push 4
pop eax
shl eax, 0
mov eax, dword [ebp + eax - 0x1e8]
imul eax, dword [ebp - 0x88]
cmp dword [ebp - 0x130], eax
je 0x10016ba4
mov dword [ebp - 0x138], 1
jmp 0x10016bab
and dword [ebp - 0x138], 0
mov eax, dword [ebp - 0x138]
mov dword [ebp - 0x184], eax
jmp 0x10016d49
mov dword [ebp - 0x40], 3
mov dword [ebp - 0x19c], 1
mov byte [ebp - 0x22], 0
lea eax, [ebp - 0x22]
push eax
push 1
push 0x7524
push 0x4a1f
call fcn.10015bcf
add esp, 0x10
mov dword [ebp - 0x14], 0
jmp 0x10016bf9
mov eax, dword [ebp - 0x14]
inc eax
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], 0x1d
jg 0x10016d49
mov dword [ebp - 0x140], 0xf732bc12
mov dword [ebp - 0x50], 0
jmp 0x10016c1d
mov eax, dword [ebp - 0x50]
inc eax
mov dword [ebp - 0x50], eax
cmp dword [ebp - 0x50], 3
jge 0x10016c33
mov eax, dword [ebp - 0x50]
mov dword [ebp + eax*4 - 0x1d0], 0
jmp 0x10016c16
cmp dword [ebp - 0x40], 0
jne 0x10016cb7
mov eax, dword [ebp - 0x40]
mov dword [ebp - 0x214], eax
cmp dword [ebp - 0x40], 0
je 0x10016c54
mov dword [ebp - 0x18c], 1
jmp 0x10016c5b
and dword [ebp - 0x18c], 0
push 4
pop eax
shl eax, 1
mov eax, dword [ebp + eax - 0x1d0]
mov dword [ebp - 0x21c], eax
mov eax, 0x722525a5
inc eax
mov dword [ebp - 0x140], eax
jne 0x10016c93
push 4
pop eax
shl eax, 1
cmp dword [ebp + eax - 0x1e8], 0
jne 0x10016c93
and dword [ebp - 0x148], 0
jmp 0x10016c9d
mov dword [ebp - 0x148], 1
mov eax, dword [ebp - 0x40]
imul eax, dword [ebp - 0x148]
cmp eax, 0x33df47b5
je 0x10016cb7
and dword [ebp - 0x194], 0
jmp 0x10016cc1
mov dword [ebp - 0x194], 1
push 4
pop eax
shl eax, 1
mov eax, dword [ebp + eax - 0x1d0]
mov dword [ebp - 0x224], eax
mov eax, dword [ebp - 0x40]
mov dword [ebp - 0x22c], eax
push 4
pop eax
shl eax, 0
push 4
pop ecx
shl ecx, 0
mov ecx, dword [ebp + ecx - 0x1f8]
cmp dword [ebp + eax - 0x1d0], ecx
jl 0x10016d04
mov dword [ebp - 0x150], 1
jmp 0x10016d0b
and dword [ebp - 0x150], 0
cmp dword [ebp - 0x150], 1
jae 0x10016d25
or eax, 0xffffffff
je 0x10016d25
mov dword [ebp - 0x158], 1
jmp 0x10016d2c
and dword [ebp - 0x158], 0
push 4
pop eax
shl eax, 1
mov ecx, dword [ebp - 0x158]
sub ecx, dword [ebp + eax - 0x1d0]
mov dword [ebp - 0x19c], ecx
jmp 0x10016bf2
lea eax, [ebp - 0x2d8]
push eax
mov ecx, dword [ebp + 8]
call fcn.100170f2
mov eax, dword [ebp - 0x58]
or eax, 1
mov dword [ebp - 0x58], eax
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x2d8]
call fcn.1001713c
mov eax, dword [ebp + 8]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop edi
pop esi
mov esp, ebp
pop ebp
ret