Function at 0x1001d2d7
Capabilities:
Get disk information

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x10081de1
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x384
push esi
push 0
lea eax, [ebp - 0xfc]
push eax
call fcn.1001f1b3
pop ecx
pop ecx
mov dword [ebp - 0x254], 0xc3ec3d4e
push 3
lea ecx, [ebp - 0x274]
call fcn.100188f1
and dword [ebp - 4], 0
mov dword [ebp - 0x228], 5
mov dword [ebp - 0x48], 0xfffffffb
lea eax, [ebp - 0x274]
push eax
lea eax, [ebp - 0x334]
push eax
push 0x517f
push 0
push 0x46e6
call fcn.1001fb21
add esp, 0x14
lea eax, [ebp - 0x254]
push eax
lea eax, [ebp - 0x48]
push eax
lea eax, [ebp - 0x274]
push eax
push 0
lea eax, [ebp - 0x228]
push eax
push 0x6c1c
call fcn.100202c6
add esp, 0x18
mov dword [ebp - 0x48], 0
jmp 0x1001d38c
mov eax, dword [ebp - 0x48]
inc eax
mov dword [ebp - 0x48], eax
cmp dword [ebp - 0x48], 3
jge 0x1001d3b8
lea eax, [ebp - 0x274]
push eax
lea eax, [ebp - 0x48]
push eax
push 0x200e
push 0x2c43
push 0
push 0x7f8a
call fcn.10020a56
add esp, 0x18
jmp 0x1001d385
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x274]
call fcn.10018973
cmp dword [ebp - 0xfc], 0
je 0x1001e713
push dword [ebp + 8]
lea ecx, [ebp - 0x2c8]
call fcn.100186a6
mov dword [ebp - 4], 1
push 2
lea ecx, [ebp - 0x1fc]
call fcn.100188f1
mov byte [ebp - 4], 2
mov dword [ebp - 0x300], 0x8c66f5a9
mov dword [ebp - 0x98], 0
jmp 0x1001d41d
mov eax, dword [ebp - 0x98]
inc eax
mov dword [ebp - 0x98], eax
cmp dword [ebp - 0x98], 2
jge 0x1001d43f
push dword [ebp - 0x98]
lea ecx, [ebp - 0x1fc]
call fcn.1001898f
mov dword [eax], 0xfffffffc
jmp 0x1001d410
push 0
lea ecx, [ebp - 0x1fc]
call fcn.1001898f
and dword [eax], 0
jmp 0x1001d475
push 0
lea ecx, [ebp - 0x1fc]
call fcn.1001898f
mov dword [ebp - 0x120], eax
mov eax, dword [ebp - 0x120]
mov eax, dword [eax]
dec eax
mov ecx, dword [ebp - 0x120]
mov dword [ecx], eax
push 0
lea ecx, [ebp - 0x1fc]
call fcn.1001898f
cmp dword [eax], 0xfffffff7
jl 0x1001d4a3
mov byte [ebp - 0x36], 0
movzx eax, byte [ebp - 0x36]
test eax, eax
je 0x1001d4a1
push 0x1bd4
push 0
call fcn.1001f984
pop ecx
pop ecx
jmp 0x1001d451
push 0
lea eax, [ebp - 0x1fc]
push eax
call fcn.1001edf5
pop ecx
pop ecx
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x1fc]
call fcn.10018973
lea eax, [ebp - 0x308]
push eax
lea ecx, [ebp - 0x2c8]
call fcn.10018f6f
push dword [eax]
lea eax, [ebp - 0x320]
push eax
lea ecx, [ebp - 0x2c8]
call fcn.10018f83
push dword [eax]
lea eax, [ebp - 0x328]
push eax
lea ecx, [ebp - 0x2c8]
call fcn.10018f6f
push dword [eax]
mov edx, 0x1001c09d
lea ecx, [ebp - 0x330]
call fcn.10027d2a
add esp, 0xc
mov dword [ebp - 0x1ec], 0x1342f3d4
mov dword [ebp - 0x16c], 0xe3cb5af9
mov dword [ebp - 0x244], 9
mov dword [ebp - 0x50], 1
mov dword [ebp - 0x6c], 0
jmp 0x1001d546
mov eax, dword [ebp - 0x6c]
inc eax
mov dword [ebp - 0x6c], eax
cmp dword [ebp - 0x6c], 1
jge 0x1001d559
mov eax, dword [ebp - 0x6c]
mov dword [ebp + eax*4 - 0x18], 0x7d21
jmp 0x1001d53f
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x18]
mov dword [ebp - 0x338], eax
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x18]
push 4
pop ecx
imul ecx, ecx, 0
sub eax, dword [ebp + ecx - 0x18]
push 4
pop ecx
imul ecx, ecx, 0
cmp eax, dword [ebp + ecx - 0x18]
jle 0x1001d595
mov dword [ebp - 0x1e4], 1
jmp 0x1001d59c
and dword [ebp - 0x1e4], 0
mov eax, dword [ebp - 0x1e4]
mov dword [ebp - 0x1ec], eax
mov eax, dword [ebp - 0x1ec]
mov dword [ebp - 0x16c], eax
push 4
pop eax
imul eax, eax, 0
imul eax, dword [ebp + eax - 0x18], 7
cmp eax, 0xf49c23ed
jb 0x1001d5d2
mov dword [ebp - 0x164], 1
jmp 0x1001d5d9
and dword [ebp - 0x164], 0
mov eax, dword [ebp - 0x164]
sub eax, 0x23dd972c
jne 0x1001d5f2
mov dword [ebp - 0x1d0], 1
jmp 0x1001d5f9
and dword [ebp - 0x1d0], 0
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x18]
cmp dword [ebp - 0x1d0], eax
jle 0x1001d617
mov dword [ebp - 0xdc], 1
jmp 0x1001d61e
and dword [ebp - 0xdc], 0
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x18]
add eax, dword [ebp - 0xdc]
jne 0x1001d63c
mov dword [ebp - 0x1ac], 1
jmp 0x1001d643
and dword [ebp - 0x1ac], 0
push 4
pop eax
imul eax, eax, 0
push 4
pop ecx
imul ecx, ecx, 0
mov ecx, dword [ebp + ecx - 0x18]
add ecx, dword [ebp - 0x1ac]
cmp dword [ebp + eax - 0x18], ecx
je 0x1001d66b
mov dword [ebp - 0xe4], 1
jmp 0x1001d672
and dword [ebp - 0xe4], 0
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x18]
add eax, dword [ebp - 0xe4]
push 4
pop ecx
imul ecx, ecx, 0
cmp eax, dword [ebp + ecx - 0x18]
jge 0x1001d6a7
push 4
pop eax
imul eax, eax, 0
cmp dword [ebp + eax - 0x18], 0
je 0x1001d6a7
mov dword [ebp - 0x23c], 1
jmp 0x1001d6ae
and dword [ebp - 0x23c], 0
push 4
pop eax
imul eax, eax, 0
mov ecx, dword [ebp - 0x16c]
cmp dword [ebp + eax - 0x18], ecx
jle 0x1001d6cc
mov dword [ebp - 0xec], 1
jmp 0x1001d6d3
and dword [ebp - 0xec], 0
mov eax, dword [ebp - 0x244]
cmp dword [ebp - 0xec], eax
je 0x1001d6ed
mov dword [ebp - 0x1f0], 1
jmp 0x1001d6f4
and dword [ebp - 0x1f0], 0
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x18]
cmp dword [ebp - 0x1f0], eax
jl 0x1001d712
mov dword [ebp - 0xf4], 1
jmp 0x1001d719
and dword [ebp - 0xf4], 0
cmp dword [ebp - 0xf4], 6
jle 0x1001d72e
mov dword [ebp - 0x174], 1
jmp 0x1001d735
and dword [ebp - 0x174], 0
mov eax, dword [ebp - 0x174]
mov dword [ebp - 0x50], eax
mov dword [ebp - 0x50], 0
jmp 0x1001d74e
mov eax, dword [ebp - 0x50]
inc eax
mov dword [ebp - 0x50], eax
cmp dword [ebp - 0x50], 0x12
jg 0x1001d776
mov byte [ebp - 0x3d], 0
movzx eax, byte [ebp - 0x3d]
test eax, eax
je 0x1001d774
push 0x1e0d
push 0x3445
push 0
call fcn.1002075a
add esp, 0xc
jmp 0x1001d747
mov eax, dword [ebp - 0xfc]
mov eax, dword [eax + 0xc]
add eax, 0x14
mov dword [ebp - 0x19c], eax
and dword [ebp - 0xac], 0
mov dword [ebp - 0x14], 0
mov dword [ebp - 0x2c], 0xab39e224
mov dword [ebp - 0x88], 0
jmp 0x1001d7b6
mov eax, dword [ebp - 0x88]
inc eax
mov dword [ebp - 0x88], eax
cmp dword [ebp - 0x88], 4
jge 0x1001d7d2
mov eax, dword [ebp - 0x88]
mov dword [ebp + eax*4 - 0xcc], 0xc64a6847
jmp 0x1001d7a9
mov dword [ebp - 0x14], 3
jmp 0x1001d7e2
mov eax, dword [ebp - 0x14]
dec eax
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], 0
jl 0x1001dc6e
mov dword [ebp - 0x8c], 7
mov dword [ebp - 0x54], 0x35ff5744
mov dword [ebp - 0x94], 0x9cbadbef
mov dword [ebp - 0x184], 0xdc28bf2f
mov dword [ebp - 0x18c], 0x6f6066fa
mov dword [ebp - 0x220], 0x89736453
mov eax, dword [ebp - 0x14]
push 0xfffffffffffffff7
pop ecx
sub ecx, dword [ebp + eax*4 - 0xcc]
je 0x1001d93b
push 4
pop eax
imul eax, eax, 3
mov eax, dword [ebp + eax - 0xcc]
mov dword [ebp - 0x340], eax
mov eax, dword [ebp - 0x14]
cmp dword [ebp + eax*4 - 0xcc], 0xdef9
jge 0x1001d867
mov dword [ebp - 0x1b4], 1
jmp 0x1001d86e
and dword [ebp - 0x1b4], 0
cmp dword [ebp - 0x1b4], 0
jne 0x1001d889
cmp dword [ebp - 0x8c], 0
jne 0x1001d889
and dword [ebp - 0x104], 0
jmp 0x1001d893
mov dword [ebp - 0x104], 1
mov eax, dword [ebp - 0x104]
mov dword [ebp - 0x2c], eax
mov eax, dword [ebp - 0x14]
mov dword [ebp - 0x348], eax
mov eax, dword [ebp - 0x8c]
mov dword [ebp - 0x35c], eax
push 4
pop eax
shl eax, 0
mov eax, dword [ebp + eax - 0xcc]
mov dword [ebp - 0x364], eax
imul eax, dword [ebp - 0x14], 0xfffc
imul eax, eax, 0x434a
imul eax, dword [ebp - 0x14]
push 4
pop ecx
imul ecx, ecx, 3
cmp eax, dword [ebp + ecx - 0xcc]
jle 0x1001d8fd
mov eax, dword [ebp - 0x14]
cmp dword [ebp + eax*4 - 0xcc], 0
je 0x1001d8fd
mov dword [ebp - 0x17c], 1
jmp 0x1001d904
and dword [ebp - 0x17c], 0
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp + eax*4 - 0xcc]
cmp dword [ebp - 0x17c], eax
jge 0x1001d922
mov dword [ebp - 0x200], 1
jmp 0x1001d929
and dword [ebp - 0x200], 0
cmp dword [ebp - 0x54], 0
jne 0x1001d93b
mov dword [ebp - 0x264], 1
jmp 0x1001d942
and dword [ebp - 0x264], 0
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp + eax*4 - 0xcc]
mov dword [ebp - 0x36c], eax
push 4
pop eax
shl eax, 1
mov eax, dword [ebp + eax - 0xcc]
mov dword [ebp - 0x360], eax
xor eax, eax
inc eax
je 0x1001d982
mov eax, dword [ebp - 0x14]
cmp dword [ebp + eax*4 - 0xcc], 0
je 0x1001d982
mov dword [ebp - 0x10c], 1
jmp 0x1001d989
and dword [ebp - 0x10c], 0
cmp dword [ebp - 0x10c], 0xffffffff
jle 0x1001dc53
mov dword [ebp - 0x7c], 0x772679f1
mov dword [ebp - 0x12c], 0xc7a8f60f
xor eax, eax
inc eax
sub eax, dword [ebp - 0x8c]
je 0x1001da10
lea eax, [ebp - 0x2c]
push eax
push 0
lea eax, [ebp - 0x94]
push eax
call fcn.1001f4be
add esp, 0xc
mov dword [ebp - 0x2c], 3
jmp 0x1001d9d7
mov eax, dword [ebp - 0x2c]
dec eax
mov dword [ebp - 0x2c], eax
cmp dword [ebp - 0x2c], 0
jl 0x1001da0b
mov dword [ebp - 0x54], 0
jmp 0x1001d9ed
mov eax, dword [ebp - 0x54]
inc eax
mov dword [ebp - 0x54], eax
cmp dword [ebp - 0x54], 3
jg 0x1001da09
mov byte [ebp - 0x34], 0
movzx eax, byte [ebp - 0x34]
test eax, eax
je 0x1001da07
push 1
call fcn.1001ce17
pop ecx
jmp 0x1001d9e6
jmp 0x1001d9d0
jmp 0x1001dc4b
push 1
lea ecx, [ebp - 0x28c]
call fcn.100188f1
mov byte [ebp - 4], 3
mov dword [ebp - 0x74], 0
jmp 0x1001da31
mov eax, dword [ebp - 0x74]
inc eax
mov dword [ebp - 0x74], eax
cmp dword [ebp - 0x74], 1
jge 0x1001da4a
push dword [ebp - 0x74]
lea ecx, [ebp - 0x28c]
call fcn.1001898f
or dword [eax], 0xffffffff
jmp 0x1001da2a
push 0
lea ecx, [ebp - 0x28c]
call fcn.1001898f
cmp dword [eax], 0
je 0x1001da6f
push 0xfffffffffffffffc
pop eax
test eax, eax
je 0x1001da6f
mov dword [ebp - 0x13c], 1
jmp 0x1001da76
and dword [ebp - 0x13c], 0
cmp dword [ebp - 0x8c], 0xffffffff
jl 0x1001da8b
mov dword [ebp - 0x1d4], 1
jmp 0x1001da92
and dword [ebp - 0x1d4], 0
cmp dword [ebp - 0x1d4], 0x4d18
jl 0x1001daaa
mov dword [ebp - 0x114], 1
jmp 0x1001dab1
and dword [ebp - 0x114], 0
mov eax, dword [ebp - 0x114]
mov dword [ebp - 0x184], eax
cmp dword [ebp - 0x184], 0
jne 0x1001dad2
mov dword [ebp - 0x11c], 1
jmp 0x1001dad9
and dword [ebp - 0x11c], 0
cmp dword [ebp - 0x11c], 4
jle 0x1001daee
mov dword [ebp - 0x1bc], 1
jmp 0x1001daf5
and dword [ebp - 0x1bc], 0
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp + eax*4 - 0xcc]
cmp dword [ebp - 0x1bc], eax
jge 0x1001db13
mov dword [ebp - 0x124], 1
jmp 0x1001db1a
and dword [ebp - 0x124], 0
mov eax, dword [ebp - 0x124]
mov dword [ebp - 0x18c], eax
mov eax, dword [ebp - 0x18c]
mov dword [ebp - 0x2c], eax
mov eax, dword [ebp - 0x14]
mov dword [ebp - 0x314], eax
mov eax, dword [ebp - 0x7c]
mov dword [ebp - 0x2ec], eax
mov eax, dword [ebp - 0x12c]
mov dword [ebp - 0x2e4], eax
mov dword [ebp - 0x94], 0xfffffff6
mov eax, dword [ebp - 0x94]
mov dword [ebp - 0x2f4], eax
mov eax, dword [ebp - 0x12c]
mov dword [ebp - 0x354], eax
mov esi, dword [ebp - 0x7c]
push 0
lea ecx, [ebp - 0x28c]
call fcn.1001898f
cmp esi, dword [eax]
jle 0x1001db8f
mov dword [ebp - 0x1e8], 1
jmp 0x1001db96
and dword [ebp - 0x1e8], 0
push 4
pop eax
shl eax, 0
mov eax, dword [ebp + eax - 0xcc]
cmp dword [ebp - 0x1e8], eax
je 0x1001dbb7
mov dword [ebp - 0x134], 1
jmp 0x1001dbbe
and dword [ebp - 0x134], 0
mov eax, dword [ebp - 0x7c]
imul eax, dword [ebp - 0x134]
imul eax, dword [ebp - 0x7c]
test eax, eax
jne 0x1001dbe0
push 4
pop eax
test eax, eax
jne 0x1001dbe0
and dword [ebp - 0x194], 0
jmp 0x1001dbea
mov dword [ebp - 0x194], 1
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp + eax*4 - 0xcc]
cmp eax, dword [ebp - 0x194]
jle 0x1001dc08
mov dword [ebp - 0x1c4], 1
jmp 0x1001dc0f
and dword [ebp - 0x1c4], 0
mov eax, dword [ebp - 0x13c]
cmp eax, dword [ebp - 0x1c4]
jle 0x1001dc29
mov dword [ebp - 0x144], 1
jmp 0x1001dc30
and dword [ebp - 0x144], 0
mov eax, dword [ebp - 0x144]
mov dword [ebp - 0x220], eax
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x28c]
call fcn.10018973
mov eax, dword [ebp - 0x2c]
mov dword [ebp - 0x2c], eax
jmp 0x1001dc69
mov dword [ebp - 0x20c], 0xd081
mov eax, dword [ebp - 0x20c]
mov dword [ebp - 0x94], eax
jmp 0x1001d7db
mov dword [ebp - 0x14], 0
jmp 0x1001dc7e
mov eax, dword [ebp - 0x14]
dec eax
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], 0xfffffff8
jle 0x1001dc94
push 0x2eb2
push 0
call fcn.1001fa4a
pop ecx
pop ecx
jmp 0x1001dc77
mov eax, dword [ebp - 0x19c]
mov eax, dword [eax]
mov dword [ebp - 0x64], eax
jmp 0x1001dca9
mov eax, dword [ebp - 0x64]
mov eax, dword [eax]
mov dword [ebp - 0x64], eax
mov eax, dword [ebp - 0x64]
cmp eax, dword [ebp - 0x19c]
je 0x1001e704
mov dword [ebp - 0x4c], 0xfffffff8
mov dword [ebp - 0x250], 0xd73ae4c7
mov dword [ebp - 0x84], 0
jmp 0x1001dce2
mov eax, dword [ebp - 0x84]
inc eax
mov dword [ebp - 0x84], eax
cmp dword [ebp - 0x84], 2
jge 0x1001dcfe
mov eax, dword [ebp - 0x84]
mov dword [ebp + eax*4 - 0x234], 0xae355683
jmp 0x1001dcd5
mov dword [ebp - 0x4c], 0
jmp 0x1001dd0e
mov eax, dword [ebp - 0x4c]
inc eax
mov dword [ebp - 0x4c], eax
cmp dword [ebp - 0x4c], 1
jg 0x1001df16
mov dword [ebp - 0x24], 0xb659d568
mov dword [ebp - 0x214], 0xffffffff
mov dword [ebp - 0xd8], 0x3063
mov dword [ebp - 0x21c], 0x5702
mov byte [ebp - 0x2e], 0
movzx eax, byte [ebp - 0x2e]
test eax, eax
je 0x1001dd4f
call dword [sym.imp.KERNEL32.dll_GetLogicalDrives]
mov eax, dword [ebp - 0x24]
mov dword [ebp - 0x2fc], eax
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x234]
inc eax
cmp eax, dword [ebp - 0x24]
jne 0x1001dd77
mov dword [ebp - 0x14c], 1
jmp 0x1001dd7e
and dword [ebp - 0x14c], 0
cmp dword [ebp - 0x14c], 1
jae 0x1001dd93
mov dword [ebp - 0x1e0], 1
jmp 0x1001dd9a
and dword [ebp - 0x1e0], 0
mov eax, dword [ebp - 0x24]
cmp dword [ebp - 0x1e0], eax
jg 0x1001ddb1
mov dword [ebp - 0x154], 1
jmp 0x1001ddb8
and dword [ebp - 0x154], 0
push 4
pop eax
shl eax, 0
mov eax, dword [ebp + eax - 0x234]
cmp dword [ebp - 0x154], eax
je 0x1001ddd9
mov dword [ebp - 0x24c], 1
jmp 0x1001dde0
and dword [ebp - 0x24c], 0
mov eax, dword [ebp - 0x24]
cmp dword [ebp - 0x24], eax
jle 0x1001ddf4
mov dword [ebp - 0x1a4], 1
jmp 0x1001ddfb
and dword [ebp - 0x1a4], 0
mov eax, dword [ebp - 0x214]
cmp dword [ebp - 0x1a4], eax
jg 0x1001de15
mov dword [ebp - 0x15c], 1
jmp 0x1001de1c
and dword [ebp - 0x15c], 0
mov eax, dword [ebp - 0xd8]
cmp dword [ebp - 0x15c], eax
jl 0x1001de36
mov dword [ebp - 0x1cc], 1
jmp 0x1001de3d
and dword [ebp - 0x1cc], 0
mov eax, dword [ebp - 0x4c]
cmp dword [ebp - 0x1cc], eax
jle 0x1001de54
mov dword [ebp - 0xd4], 1
jmp 0x1001de5b
and dword [ebp - 0xd4], 0
mov eax, dword [ebp - 0x250]
add eax, dword [ebp - 0xd4]
cmp eax, dword [ebp - 0x21c]
je 0x1001de81
cmp dword [ebp - 0x4c], 0
je 0x1001de81
mov dword [ebp - 0xe0], 1
jmp 0x1001de88
and dword [ebp - 0xe0], 0
mov eax, dword [ebp - 0xd8]
cmp dword [ebp - 0xe0], eax
jge 0x1001dea2
mov dword [ebp - 0xe8], 1
jmp 0x1001dea9
and dword [ebp - 0xe8], 0
mov eax, dword [ebp - 0x24]
cmp eax, dword [ebp - 0xe8]
jne 0x1001ded0
mov byte [ebp - 0x2f], 0
movzx eax, byte [ebp - 0x2f]
test eax, eax
je 0x1001dece
push 0x67de
push 0
call fcn.1001d28b
pop ecx
pop ecx
jmp 0x1001df11
mov dword [ebp - 0x24], 0
jmp 0x1001dee0
mov eax, dword [ebp - 0x24]
inc eax
mov dword [ebp - 0x24], eax
cmp dword [ebp - 0x24], 1
jg 0x1001deff
mov byte [ebp - 0x31], 0
lea eax, [ebp - 0x31]
push eax
push 0x1bed
push 0
call fcn.1001f01c
add esp, 0xc
jmp 0x1001ded9
push 4
pop eax
imul eax, eax, 0
cmp dword [ebp + eax - 0x234], 0
je 0x1001df11
jmp 0x1001df16
jmp 0x1001dd07
mov byte [ebp - 0x33], 0
lea eax, [ebp - 0x33]
push eax
push 0x739e
push 1
push 0x5ae
push 0x5abf
push 0x1a93
push 0x71d7
call fcn.1001ce45
add esp, 0x1c
mov eax, dword [ebp - 0x64]
mov dword [ebp - 0xac], eax
mov dword [ebp - 0x68], 0xfffffffa
mov dword [ebp - 0x9c], 0
jmp 0x1001df6a
mov eax, dword [ebp - 0x9c]
inc eax
mov dword [ebp - 0x9c], eax
cmp dword [ebp - 0x9c], 3
jge 0x1001df86
mov eax, dword [ebp - 0x9c]
mov dword [ebp + eax*4 - 0xb8], 8
jmp 0x1001df5d
push 4
pop eax
shl eax, 0
push 4
pop ecx
imul ecx, ecx, 0
mov ecx, dword [ebp + ecx - 0xb8]
cmp dword [ebp + eax - 0xb8], ecx
jle 0x1001dfae
mov dword [ebp - 0xf0], 1
jmp 0x1001dfb5
and dword [ebp - 0xf0], 0
mov eax, dword [ebp - 0xf0]
add eax, 0xc57e
je 0x1001dfde
push 4
pop eax
imul eax, eax, 0
cmp dword [ebp + eax - 0xb8], 0
je 0x1001dfde
mov dword [ebp - 0xf8], 1
jmp 0x1001dfe5
and dword [ebp - 0xf8], 0
mov eax, dword [ebp - 0xf8]
add eax, 4
push 4
pop ecx
shl ecx, 0
imul eax, dword [ebp + ecx - 0xb8]
test eax, eax
jne 0x1001e019
push 4
pop eax
shl eax, 0
cmp dword [ebp + eax - 0xb8], 0
jne 0x1001e019
and dword [ebp - 0x100], 0
jmp 0x1001e023
mov dword [ebp - 0x100], 1
push 4
pop eax
shl eax, 0
mov eax, dword [ebp + eax - 0xb8]
cmp dword [ebp - 0x100], eax
je 0x1001e054
push 4
pop eax
imul eax, eax, 0
cmp dword [ebp + eax - 0xb8], 0
je 0x1001e054
mov dword [ebp - 0x108], 1
jmp 0x1001e05b
and dword [ebp - 0x108], 0
push 4
pop eax
shl eax, 0
push 4
pop ecx
imul ecx, ecx, 0
mov ecx, dword [ebp + ecx - 0xb8]
add ecx, dword [ebp - 0x108]
cmp dword [ebp + eax - 0xb8], ecx
jg 0x1001e089
mov dword [ebp - 0x110], 1
jmp 0x1001e090
and dword [ebp - 0x110], 0
mov eax, dword [ebp - 0x110]
mov dword [ebp - 0x68], eax
push 4
pop eax
shl eax, 1
mov ecx, dword [ebp - 0x68]
add ecx, dword [ebp + eax - 0xb8]
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0xb8]
sub eax, ecx
je 0x1001e11f
mov byte [ebp - 0x35], 0
movzx eax, byte [ebp - 0x35]
test eax, eax
je 0x1001e11a
push 0x2c25
push 0x1aae
push 0x23cf
push 0x5c46
push 0x7a39
push 0x29dc
push 0x400f
push 0x243d
push 0x5a0e
push 0x2ff9
push 0x6142
push 1
push 0x4043
push 0x6c7e
push 0x3d7a
push 0x6cd8
call fcn.1001cf1f
add esp, 0x40
jmp 0x1001e1b0
mov dword [ebp - 0x33c], 0xfffffffd
mov dword [ebp - 0x304], 0
mov dword [ebp - 0x118], 0x294b
mov dword [ebp - 0x90], 0
jmp 0x1001e156
mov eax, dword [ebp - 0x90]
inc eax
mov dword [ebp - 0x90], eax
cmp dword [ebp - 0x90], 3
jge 0x1001e172
mov eax, dword [ebp - 0x90]
mov dword [ebp + eax*4 - 0x378], 0xffffffff
jmp 0x1001e149
mov eax, dword [ebp - 0x118]
inc eax
mov dword [ebp - 0x118], eax
cmp dword [ebp - 0x68], 0
jne 0x1001e19d
push 4
pop eax
shl eax, 1
cmp dword [ebp + eax - 0x378], 0
jne 0x1001e19d
and dword [ebp - 0xd0], 0
jmp 0x1001e1a7
mov dword [ebp - 0xd0], 1
mov eax, dword [ebp - 0xd0]
mov dword [ebp - 0x68], eax
mov eax, dword [ebp - 0xac]
push dword [eax + 0x28]
lea ecx, [ebp - 0x2e0]
call fcn.1002795b
mov byte [ebp - 4], 4
mov dword [ebp - 0x258], 0x4aa0d722
mov dword [ebp - 0x130], 1
mov dword [ebp - 0x224], 0xffffffff
mov dword [ebp - 0xbc], 8
mov dword [ebp - 0xa0], 0x51ebf0d
mov dword [ebp - 0x128], 0xfff9
mov dword [ebp - 0x25c], 0x5943e2f7
mov dword [ebp - 0x70], 0
jmp 0x1001e21e
mov eax, dword [ebp - 0x70]
inc eax
mov dword [ebp - 0x70], eax
cmp dword [ebp - 0x70], 4
jge 0x1001e234
mov eax, dword [ebp - 0x70]
mov dword [ebp + eax*4 - 0x390], 0x6171
jmp 0x1001e217
lea eax, [ebp - 0x25c]
push eax
lea eax, [ebp - 0xa0]
push eax
lea eax, [ebp - 0x224]
push eax
lea eax, [ebp - 0x128]
push eax
lea eax, [ebp - 0x258]
push eax
lea eax, [ebp - 0xbc]
push eax
push 0
call fcn.10020902
add esp, 0x1c
mov eax, dword [ebp - 0xbc]
mov dword [ebp - 0x358], eax
mov eax, dword [ebp - 0xa0]
mov dword [ebp - 0x30c], eax
mov eax, dword [ebp - 0x128]
mov dword [ebp - 0x130], eax
mov eax, dword [ebp - 0xa0]
cmp dword [ebp - 0x130], eax
jne 0x1001e2a6
mov dword [ebp - 0x138], 1
jmp 0x1001e2ad
and dword [ebp - 0x138], 0
mov eax, dword [ebp - 0x138]
mov dword [ebp - 0xbc], eax
lea eax, [ebp - 0x310]
push eax
lea ecx, [ebp - 0x2e0]
call fcn.10018f6f
push dword [eax]
lea eax, [ebp - 0x318]
push eax
lea ecx, [ebp - 0x2e0]
call fcn.10018f83
push dword [eax]
lea eax, [ebp - 0x344]
push eax
lea ecx, [ebp - 0x2e0]
call fcn.10018f6f
push dword [eax]
mov edx, 0x1001c09d
lea ecx, [ebp - 0x31c]
call fcn.10027d2a
add esp, 0xc
lea edx, [ebp - 0x2e0]
lea ecx, [ebp - 0x2c8]
call fcn.10027d93
movzx eax, al
test eax, eax
je 0x1001e6f0
mov dword [ebp - 0x3c], 0x364fef53
mov dword [ebp - 0x28], 0
jmp 0x1001e33b
mov eax, dword [ebp - 0x28]
inc eax
mov dword [ebp - 0x28], eax
cmp dword [ebp - 0x28], 1
jge 0x1001e34e
mov eax, dword [ebp - 0x28]
mov dword [ebp + eax*4 - 0x1c], 0xfffffffa
jmp 0x1001e334
mov dword [ebp - 0x28], 0
jmp 0x1001e35e
mov eax, dword [ebp - 0x28]
inc eax
mov dword [ebp - 0x28], eax
cmp dword [ebp - 0x28], 3
jge 0x1001e371
mov eax, dword [ebp - 0x28]
mov dword [ebp + eax*4 - 0x60], 0x925b
jmp 0x1001e357
push 4
pop eax
imul eax, eax, 0
mov dword [ebp + eax - 0x1c], 8
jmp 0x1001e396
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x1c]
dec eax
push 4
pop ecx
imul ecx, ecx, 0
mov dword [ebp + ecx - 0x1c], eax
push 4
pop eax
imul eax, eax, 0
cmp dword [ebp + eax - 0x1c], 0xfffffff8
jl 0x1001e67b
mov dword [ebp - 0x10], 0x45db34e6
mov dword [ebp - 0x268], 0x75b167d3
mov byte [ebp - 0x37], 0
push 0xf74
push 0x4dc
push 0x3127
lea eax, [ebp - 0x37]
push eax
push 0x2cac
push 0x6581
push 0x6230
push 0x68f0
push 0
call fcn.1001f827
add esp, 0x24
mov dword [ebp - 0x10], 2
jmp 0x1001e3fd
mov eax, dword [ebp - 0x10]
dec eax
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 0
jl 0x1001e676
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp + eax*4 - 0x60]
mov dword [ebp - 0x368], eax
push 4
pop eax
imul eax, eax, 0
mov ecx, dword [ebp - 0x10]
mov ecx, dword [ebp + ecx*4 - 0x60]
cmp dword [ebp + eax - 0x1c], ecx
jg 0x1001e433
mov dword [ebp - 0x22c], 1
jmp 0x1001e43a
and dword [ebp - 0x22c], 0
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp + eax*4 - 0x60]
mov dword [ebp - 0x324], eax
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x34c], eax
cmp dword [ebp - 0x10], 0
je 0x1001e46c
mov eax, dword [ebp - 0x10]
cmp dword [ebp + eax*4 - 0x60], 0
je 0x1001e46c
mov dword [ebp - 0x140], 1
jmp 0x1001e473
and dword [ebp - 0x140], 0
cmp dword [ebp - 0x140], 0x77cccaea
jle 0x1001e48b
mov dword [ebp - 0x148], 1
jmp 0x1001e492
and dword [ebp - 0x148], 0
cmp dword [ebp - 0x148], 9
jae 0x1001e4a7
mov dword [ebp - 0x150], 1
jmp 0x1001e4ae
and dword [ebp - 0x150], 0
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x1c]
add eax, dword [ebp - 0x150]
jne 0x1001e4d3
mov eax, dword [ebp - 0x10]
cmp dword [ebp + eax*4 - 0x60], 0
jne 0x1001e4d3
and dword [ebp - 0x260], 0
jmp 0x1001e4dd
mov dword [ebp - 0x260], 1
push 4
pop eax
shl eax, 0
mov eax, dword [ebp + eax - 0x60]
mov dword [ebp - 0x32c], eax
push 4
pop eax
shl eax, 0
mov eax, dword [ebp + eax - 0x60]
mov dword [ebp - 0x350], eax
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x2e8], eax
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp + eax*4 - 0x60]
sub eax, 0xfad0
push 4
pop ecx
imul ecx, ecx, 0
cmp eax, dword [ebp + ecx - 0x1c]
jge 0x1001e52a
mov dword [ebp - 0x158], 1
jmp 0x1001e531
and dword [ebp - 0x158], 0
mov eax, dword [ebp - 0x158]
add eax, 0x52bf
cmp eax, dword [ebp - 0x10]
jle 0x1001e553
cmp dword [ebp - 0x10], 0
je 0x1001e553
mov dword [ebp - 0x160], 1
jmp 0x1001e55a
and dword [ebp - 0x160], 0
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x1c]
imul eax, dword [ebp - 0x160]
test eax, eax
je 0x1001e585
mov eax, dword [ebp - 0x10]
cmp dword [ebp + eax*4 - 0x60], 0
je 0x1001e585
mov dword [ebp - 0x168], 1
jmp 0x1001e58c
and dword [ebp - 0x168], 0
mov eax, dword [ebp - 0x10]
add eax, dword [ebp - 0x168]
cmp eax, 0xac116e07
je 0x1001e5b2
push 4
pop eax
shl eax, 0
mov ecx, dword [ebp - 0x10]
mov eax, dword [ebp + eax - 0x60]
mov dword [ebp + ecx*4 - 0x60], eax
jmp 0x1001e671
mov dword [ebp - 0x238], 0
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x1c]
push 4
pop ecx
shl ecx, 1
add eax, dword [ebp + ecx - 0x60]
cmp dword [ebp - 0x238], eax
jle 0x1001e5e3
mov dword [ebp - 0x170], 1
jmp 0x1001e5ea
and dword [ebp - 0x170], 0
mov eax, dword [ebp - 0x170]
mov dword [ebp - 0x3c], eax
cmp dword [ebp - 0x3c], 0x83f7
jge 0x1001e608
mov dword [ebp - 0x178], 1
jmp 0x1001e60f
and dword [ebp - 0x178], 0
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp + eax*4 - 0x60]
push 4
pop eax
shl eax, 1
mov eax, dword [ebp + eax - 0x60]
mov dword [ebp - 0x268], eax
mov dword [ebp - 0x3c], 0xffffffe3
jmp 0x1001e635
mov eax, dword [ebp - 0x3c]
inc eax
mov dword [ebp - 0x3c], eax
cmp dword [ebp - 0x3c], 6
jge 0x1001e671
mov dword [ebp - 0x240], 0xbde8aff6
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x2f0], eax
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp + eax*4 - 0x60]
mov dword [ebp - 0x240], eax
mov byte [ebp - 0x38], 0
movzx eax, byte [ebp - 0x38]
test eax, eax
je 0x1001e66f
push 0
call fcn.1001ff7a
pop ecx
jmp 0x1001e62e
jmp 0x1001e3f6
jmp 0x1001e381
push 4
pop eax
imul eax, eax, 0
cmp dword [ebp + eax - 0x60], 0
je 0x1001e6a1
push 4
pop eax
imul eax, eax, 0
cmp dword [ebp + eax - 0x1c], 0
je 0x1001e6a1
mov dword [ebp - 0x180], 1
jmp 0x1001e6a8
and dword [ebp - 0x180], 0
mov eax, dword [ebp - 0x180]
mov dword [ebp - 0x3c], eax
push 4
pop eax
imul eax, eax, 0
mov ecx, dword [ebp - 0xac]
mov eax, dword [ecx + eax + 0x10]
mov dword [ebp - 0x248], eax
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x2e0]
call fcn.1001872b
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x2c8]
call fcn.1001872b
mov eax, dword [ebp - 0x248]
jmp 0x1001eaaf
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x2e0]
call fcn.1001872b
jmp 0x1001dca1
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x2c8]
call fcn.1001872b
mov dword [ebp - 0x2b0], 0xddae974c
mov dword [ebp - 0x2ac], 0xddae974c
mov dword [ebp - 0x2a8], 0xddae974c
mov dword [ebp - 0x2a4], 0xddae974c
lea ecx, [ebp - 0xa5]
call fcn.10008d28
push eax
lea eax, [ebp - 0x2a0]
push eax
lea eax, [ebp - 0x2b0]
push eax
lea ecx, [ebp - 0x380]
call fcn.1001899e
push dword [eax + 4]
push dword [eax]
lea ecx, [ebp - 0x280]
call fcn.1001894d
mov dword [ebp - 4], 5
mov dword [ebp - 0x204], 1
mov dword [ebp - 0x198], 0xbf5bf816
mov dword [ebp - 0x78], 0
jmp 0x1001e79b
mov eax, dword [ebp - 0x78]
inc eax
mov dword [ebp - 0x78], eax
cmp dword [ebp - 0x78], 2
jge 0x1001e7b1
mov eax, dword [ebp - 0x78]
mov dword [ebp + eax*4 - 0x1dc], 0xffffffff
jmp 0x1001e794
push 4
pop eax
shl eax, 0
cmp dword [ebp + eax - 0x1dc], 0
je 0x1001e7eb
mov byte [ebp - 0x30], 0
movzx eax, byte [ebp - 0x30]
test eax, eax
je 0x1001e7d5
push 1
call fcn.1001d25c
pop ecx
mov byte [ebp - 0x2d], 0
lea eax, [ebp - 0x2d]
push eax
push 1
call fcn.1001d28b
pop ecx
pop ecx
jmp 0x1001ea8a
mov dword [ebp - 0x44], 0x647dc4b4
mov dword [ebp - 0x210], 0xffffffff
mov dword [ebp - 0x1c0], 0xffffffff
mov dword [ebp - 0x44], 0
jmp 0x1001e816
mov eax, dword [ebp - 0x44]
inc eax
mov dword [ebp - 0x44], eax
cmp dword [ebp - 0x44], 1
jg 0x1001ea8a
mov dword [ebp - 0x20], 0x4cdb8faa
mov dword [ebp - 0x29c], 0xfffffffb
mov dword [ebp - 0x298], 0xfffffffb
mov dword [ebp - 0x294], 0xfffffffb
mov dword [ebp - 0x290], 0xfffffffb
mov dword [ebp - 0x20], 1
jmp 0x1001e85f
mov eax, dword [ebp - 0x20]
dec eax
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], 0
jl 0x1001ea53
mov dword [ebp - 0x80], 0x32f3f608
mov dword [ebp - 0x1b8], 0x3f8de905
mov dword [ebp - 0x218], 7
mov dword [ebp - 0x80], 0xbc383c67
cmp dword [ebp - 0x80], 0
jne 0x1001e95c
mov dword [ebp - 0x204], 0x91ee4cff
mov dword [ebp - 0x80], 2
cmp dword [ebp - 0x80], 0
je 0x1001e8c8
push 4
pop eax
shl eax, 0
cmp dword [ebp + eax - 0x1dc], 0
je 0x1001e8c8
mov dword [ebp - 0x208], 1
jmp 0x1001e8cf
and dword [ebp - 0x208], 0
mov eax, dword [ebp - 0x44]
mov eax, dword [ebp + eax*4 - 0x1dc]
mov dword [ebp - 0x2f8], eax
push 1
lea ecx, [ebp - 0x280]
call fcn.1001898f
mov dword [eax], 4
push 4
pop eax
cmp eax, 1
jl 0x1001e906
mov dword [ebp - 0xa4], 1
jmp 0x1001e90d
and dword [ebp - 0xa4], 0
push 4
pop eax
imul eax, eax, 3
mov ecx, dword [ebp - 0xa4]
mov dword [ebp + eax - 0x29c], ecx
mov eax, dword [ebp - 0x44]
cmp eax, dword [ebp - 0xa4]
jne 0x1001e93d
mov eax, 0xd2da
test eax, eax
jne 0x1001e93d
and dword [ebp - 0x188], 0
jmp 0x1001e947
mov dword [ebp - 0x188], 1
push 4
pop eax
shl eax, 0
mov eax, dword [ebp + eax - 0x1dc]
cmp dword [ebp - 0x188], eax
jle 0x1001e96e
push 1
lea ecx, [ebp - 0x280]
call fcn.1001898f
cmp dword [eax], 0
jne 0x1001e98d
push 4
pop eax
shl eax, 1
cmp dword [ebp + eax - 0x29c], 0
jne 0x1001e98d
push 9
pop eax
test eax, eax
jne 0x1001e98d
and dword [ebp - 0x190], 0
jmp 0x1001e997
mov dword [ebp - 0x190], 1
mov eax, dword [ebp - 0x190]
mov dword [ebp - 0x198], eax
cmp dword [ebp - 0x198], 1
jne 0x1001e9b8
mov dword [ebp - 0x1a0], 1
jmp 0x1001e9bf
and dword [ebp - 0x1a0], 0
mov eax, dword [ebp - 0x44]
cmp dword [ebp - 0x1a0], eax
jl 0x1001e9d6
mov dword [ebp - 0x1a8], 1
jmp 0x1001e9dd
and dword [ebp - 0x1a8], 0
mov eax, dword [ebp - 0x210]
cmp dword [ebp - 0x1a8], eax
jge 0x1001e9f7
mov dword [ebp - 0x1b0], 1
jmp 0x1001e9fe
and dword [ebp - 0x1b0], 0
mov eax, dword [ebp - 0x1b0]
mov dword [ebp - 0x1b8], eax
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp + eax*4 - 0x1dc]
sub eax, dword [ebp - 0x1b8]
mov dword [ebp - 0x1c0], eax
mov eax, dword [ebp - 0x1c0]
neg eax
cmp eax, 0x2097
je 0x1001ea3b
mov dword [ebp - 0x1c8], 1
jmp 0x1001ea42
and dword [ebp - 0x1c8], 0
mov eax, dword [ebp - 0x1c8]
mov dword [ebp - 0x218], eax
jmp 0x1001e858
mov dword [ebp - 0x20], 0
jmp 0x1001ea63
mov eax, dword [ebp - 0x20]
inc eax
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], 4
jge 0x1001ea85
lea eax, [ebp - 0x20]
push eax
push 0
lea eax, [ebp - 0x280]
push eax
push 0x2007
call fcn.1001f9f2
add esp, 0x10
jmp 0x1001ea5c
jmp 0x1001e80f
mov byte [ebp - 0x32], 0
movzx eax, byte [ebp - 0x32]
test eax, eax
je 0x1001ea9e
push 0
call fcn.1002002a
pop ecx
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x280]
call fcn.10018973
xor eax, eax
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop esi
mov esp, ebp
pop ebp
ret