Function at 0x1002fd42
Capabilities:
Get disk information

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x1008d245
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x258
push esi
movzx eax, byte [ebp + 0x14]
test eax, eax
je 0x1002fdcb
mov eax, dword [ebp + 0xc]
mov dword [ebp - 0x164], eax
mov eax, dword [ebp + 8]
mov dword [ebp - 0x190], eax
mov eax, dword [ebp - 0x164]
mov dword [ebp - 0x3c], eax
mov eax, dword [ebp - 0x190]
mov dword [ebp - 0x1a8], eax
mov eax, dword [ebp - 0x3c]
mov dword [eax], 0
jmp 0x1002fda6
mov eax, dword [ebp - 0x3c]
mov eax, dword [eax]
inc eax
mov ecx, dword [ebp - 0x3c]
mov dword [ecx], eax
mov eax, dword [ebp - 0x3c]
cmp dword [eax], 4
jge 0x1002fdc6
mov eax, dword [ebp - 0x3c]
push dword [eax]
mov ecx, dword [ebp - 0x1a8]
call fcn.1001b178
mov dword [eax], 0xfff6
jmp 0x1002fd9b
jmp 0x10030d84
mov eax, dword [ebp + 0x10]
mov dword [ebp - 0x5c], eax
mov dword [ebp - 0x10], 0
mov dword [ebp - 0x44], 0xffffffff
mov dword [ebp - 0x19c], 0x6548aab5
mov dword [ebp - 0x54], 0
jmp 0x1002fdf9
mov eax, dword [ebp - 0x54]
inc eax
mov dword [ebp - 0x54], eax
cmp dword [ebp - 0x54], 3
jge 0x1002fe0f
mov eax, dword [ebp - 0x54]
mov dword [ebp + eax*4 - 0x24c], 0x7e6aa165
jmp 0x1002fdf2
mov dword [ebp - 0x10], 0
jmp 0x1002fe1f
mov eax, dword [ebp - 0x10]
inc eax
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 2
jge 0x1002fe4c
mov byte [ebp - 0x25], 0
movzx eax, byte [ebp - 0x25]
test eax, eax
je 0x1002fe4a
push 0x16aa
push 0x49fe
push 0
push 0x57c7
call fcn.10034813
add esp, 0x10
jmp 0x1002fe18
mov eax, dword [ebp - 0x44]
cmp dword [ebp - 0x10], eax
jl 0x1002fe60
mov dword [ebp - 0xf0], 1
jmp 0x1002fe67
and dword [ebp - 0xf0], 0
mov eax, dword [ebp - 0x44]
cmp dword [ebp - 0xf0], eax
jl 0x1002fe7e
mov dword [ebp - 0x138], 1
jmp 0x1002fe85
and dword [ebp - 0x138], 0
mov eax, dword [ebp - 0x44]
cmp dword [ebp - 0x138], eax
jg 0x1002fe9c
mov dword [ebp - 0x140], 1
jmp 0x1002fea3
and dword [ebp - 0x140], 0
mov eax, dword [ebp - 0x10]
cmp dword [ebp - 0x140], eax
jl 0x1002feba
mov dword [ebp - 0x9c], 1
jmp 0x1002fec1
and dword [ebp - 0x9c], 0
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x148], eax
push 4
pop eax
shl eax, 1
mov ecx, dword [ebp - 0x148]
mov dword [ebp + eax - 0x24c], ecx
mov eax, dword [ebp - 0x148]
imul eax, dword [ebp - 0x9c]
cmp eax, dword [ebp - 0x44]
jl 0x1002fefa
mov dword [ebp - 0x130], 1
jmp 0x1002ff01
and dword [ebp - 0x130], 0
mov eax, dword [ebp - 0x10]
cmp eax, dword [ebp - 0x130]
jge 0x1002ff18
mov dword [ebp - 0x1b0], 1
jmp 0x1002ff1f
and dword [ebp - 0x1b0], 0
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x22c], eax
mov eax, 0x53d42374
cmp eax, 0xfffffffa
jne 0x1002ff3e
mov dword [ebp - 0x1b8], 1
jmp 0x1002ff45
and dword [ebp - 0x1b8], 0
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x1f8], eax
push 4
pop eax
shl eax, 1
mov eax, dword [ebp + eax - 0x24c]
mov dword [ebp - 0x20c], eax
cmp dword [ebp - 0x44], 0xffff
jb 0x1002ff75
mov dword [ebp - 0x98], 1
jmp 0x1002ff7c
and dword [ebp - 0x98], 0
mov eax, dword [ebp - 0x98]
mov dword [ebp - 0x10], eax
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x19c], eax
mov eax, dword [ebp - 0x5c]
mov eax, dword [eax]
mov ecx, dword [ebp - 0x5c]
mov ecx, dword [ecx]
movzx ecx, word [ecx + 0x14]
lea eax, [eax + ecx + 0x18]
mov dword [ebp - 0x14], eax
push 3
lea ecx, [ebp - 0x1e4]
call fcn.1001b10b
and dword [ebp - 4], 0
mov dword [ebp - 0x40], 0x76f5020f
push 0x2b24
push 0x3a4b
lea eax, [ebp - 0x214]
push eax
push 0x2132
lea eax, [ebp - 0x1e4]
push eax
push 1
call fcn.1002dcd9
add esp, 0x18
mov byte [ebp - 0x21], 0
push 1
push 0x3db8
lea eax, [ebp - 0x21]
push eax
push 0x9f3
call fcn.1002e2a8
add esp, 0x10
mov dword [ebp - 0x40], 2
jmp 0x1003000e
mov eax, dword [ebp - 0x40]
dec eax
mov dword [ebp - 0x40], eax
cmp dword [ebp - 0x40], 0
jl 0x1003004b
mov byte [ebp - 0x24], 0
movzx eax, byte [ebp - 0x24]
test eax, eax
je 0x10030034
push 0
push 0x3109
push 0x2963
call fcn.10033cdc
add esp, 0xc
push dword [ebp - 0x40]
lea ecx, [ebp - 0x1e4]
call fcn.1001b178
cmp dword [eax], 0
je 0x10030049
jmp 0x10030007
jmp 0x10030007
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x1e4]
call fcn.1001b173
and dword [ebp - 0x60], 0
jmp 0x10030070
mov eax, dword [ebp - 0x60]
inc eax
mov dword [ebp - 0x60], eax
mov eax, dword [ebp - 0x14]
add eax, 0x28
mov dword [ebp - 0x14], eax
mov eax, dword [ebp - 0x5c]
mov eax, dword [eax]
movzx eax, word [eax + 6]
cmp dword [ebp - 0x60], eax
jge 0x10030d84
mov dword [ebp - 0x48], 0xfffffffe
mov dword [ebp - 0x48], 0xffffffea
jmp 0x10030099
mov eax, dword [ebp - 0x48]
inc eax
mov dword [ebp - 0x48], eax
cmp dword [ebp - 0x48], 0xfffffffe
jle 0x100300fd
mov dword [ebp - 0x188], 0x51ebf0dd
mov dword [ebp - 0x1a0], 4
mov dword [ebp - 0x158], 0xfa01
lea eax, [ebp - 0x188]
push eax
lea eax, [ebp - 0x158]
push eax
lea eax, [ebp - 0x48]
push eax
lea eax, [ebp - 0x1a0]
push eax
push 0
call fcn.1002e41d
add esp, 0x14
mov byte [ebp - 0x26], 0
movzx eax, byte [ebp - 0x26]
test eax, eax
je 0x100300fb
push 0x25e8
push 0
push 0
call dword [sym.imp.KERNEL32.dll_QueryDosDeviceW]
jmp 0x10030092
mov byte [ebp - 0x22], 0
movzx eax, byte [ebp - 0x22]
test eax, eax
je 0x10030111
push 0
call dword [sym.imp.KERNEL32.dll_GetTimeZoneInformation]
mov dword [ebp - 0x18], 0x72226312
mov dword [ebp - 0xac], 0x4cb8
mov dword [ebp - 0xfc], 0
mov dword [ebp - 0x16c], 0
mov dword [ebp - 0x1d8], 0x985589b5
mov dword [ebp - 0x1d4], 0x985589b5
mov dword [ebp - 0x1d0], 0x985589b5
mov dword [ebp - 0x1cc], 0x985589b5
lea ecx, [ebp - 0x61]
call fcn.1000a7d3
push eax
lea eax, [ebp - 0x1c8]
push eax
lea eax, [ebp - 0x1d8]
push eax
lea ecx, [ebp - 0x264]
call fcn.1001b187
push dword [eax + 4]
push dword [eax]
lea ecx, [ebp - 0x25c]
call fcn.1001b14d
mov dword [ebp - 4], 1
mov dword [ebp - 0x1ac], 0xf953
mov dword [ebp - 0x174], 1
mov dword [ebp - 0x198], 0xe01afec1
mov eax, dword [ebp - 0x18]
cmp dword [ebp - 0x18], eax
jge 0x100301c9
mov dword [ebp - 0xf4], 1
jmp 0x100301d0
and dword [ebp - 0xf4], 0
mov eax, dword [ebp - 0x18]
imul eax, dword [ebp - 0x18]
cmp eax, 1
ja 0x100301e8
mov dword [ebp - 0xa4], 1
jmp 0x100301ef
and dword [ebp - 0xa4], 0
mov eax, dword [ebp - 0x18]
mov ecx, dword [ebp - 0xf4]
add ecx, 0x565e
add eax, ecx
mov ecx, dword [ebp - 0xac]
add ecx, dword [ebp - 0xa4]
cmp eax, ecx
jge 0x1003021c
mov dword [ebp - 0x134], 1
jmp 0x10030223
and dword [ebp - 0x134], 0
mov eax, dword [ebp - 0x134]
mov dword [ebp - 0xfc], eax
mov eax, dword [ebp - 0xac]
cmp dword [ebp - 0xfc], eax
jne 0x10030249
mov dword [ebp - 0xb4], 1
jmp 0x10030250
and dword [ebp - 0xb4], 0
mov eax, dword [ebp - 0xb4]
mov dword [ebp - 0x16c], eax
mov dword [ebp - 0x18], 3
jmp 0x1003026c
mov eax, dword [ebp - 0x18]
dec eax
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], 0
jl 0x100302b9
mov dword [ebp - 0x17c], 0xfffffffd
push 0x512c
lea eax, [ebp - 0x198]
push eax
push 0xb10
push 0
lea eax, [ebp - 0x18]
push eax
lea eax, [ebp - 0x174]
push eax
lea eax, [ebp - 0x1ac]
push eax
lea eax, [ebp - 0x25c]
push eax
lea eax, [ebp - 0x17c]
push eax
call fcn.10035ed8
add esp, 0x24
jmp 0x10030265
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x25c]
call fcn.1001b173
mov eax, dword [ebp - 0x14]
mov eax, dword [eax + 0x24]
and eax, 0x20000000
je 0x100302e1
mov dword [ebp - 0x124], 1
jmp 0x100302e8
and dword [ebp - 0x124], 0
mov eax, dword [ebp - 0x124]
mov dword [ebp - 0x18c], eax
mov eax, dword [ebp - 0x14]
mov eax, dword [eax + 0x24]
and eax, 0x40000000
je 0x1003030d
mov dword [ebp - 0xbc], 1
jmp 0x10030314
and dword [ebp - 0xbc], 0
mov eax, dword [ebp - 0xbc]
mov dword [ebp - 0x194], eax
push 3
lea ecx, [ebp - 0x1f0]
call fcn.1001b10b
mov dword [ebp - 4], 2
mov dword [ebp - 0x184], 0
mov dword [ebp - 0x1a4], 0x4a5ea964
mov dword [ebp - 0x21c], 0
push 0
lea eax, [ebp - 0x1f0]
push eax
lea eax, [ebp - 0x224]
push eax
call fcn.1002e301
add esp, 0xc
push 1
push 0x6dd6
push 0x892
call fcn.1002e301
add esp, 0xc
lea eax, [ebp - 0x1a4]
push eax
push 0x2585
lea eax, [ebp - 0x1f0]
push eax
push 0x21c4
push 0x6f1e
push 0x643b
push 0x6fe8
push 0x5dc2
push 0x14cb
push 0x32fc
push 0xf7
push 0x2243
lea eax, [ebp - 0x184]
push eax
push 0
call fcn.10031d2d
add esp, 0x38
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x1f0]
call fcn.1001b173
mov eax, dword [ebp - 0x14]
mov eax, dword [eax + 0x24]
and eax, 0x80000000
je 0x100303f7
mov dword [ebp - 0x104], 1
jmp 0x100303fe
and dword [ebp - 0x104], 0
mov eax, dword [ebp - 0x104]
mov dword [ebp - 0x15c], eax
mov eax, dword [ebp - 0x14]
mov eax, dword [eax + 0x24]
and eax, 0x2000000
je 0x100308c8
push 0x4000
mov eax, dword [ebp - 0x14]
push dword [eax + 0x10]
mov eax, dword [ebp - 0x14]
push dword [eax + 8]
push 0x8f6b
push 0x94ba
call fcn.1002b3a1
pop ecx
pop ecx
call eax
push 2
lea ecx, [ebp - 0x80]
call fcn.1001b10b
mov dword [ebp - 4], 3
mov dword [ebp - 0x1c], 0x9bdba76a
mov dword [ebp - 0x20], 0xfffffff9
lea eax, [ebp - 0x80]
push eax
push 0x1690
push 0xbf3
push 0x43ee
push 1
lea eax, [ebp - 0x1f4]
push eax
call fcn.1002e37b
add esp, 0x18
mov dword [ebp - 0x1c], 1
jmp 0x10030492
mov eax, dword [ebp - 0x1c]
dec eax
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], 0
jl 0x100308b7
push 4
lea ecx, [ebp - 0x8c]
call fcn.1001b10b
mov byte [ebp - 4], 4
mov dword [ebp - 0x2c], 0xfffffffc
lea eax, [ebp - 0x234]
push eax
push 0
lea eax, [ebp - 0x8c]
push eax
push 0x47ba
call fcn.10032135
add esp, 0x10
push 1
lea ecx, [ebp - 0x8c]
call fcn.1001b178
and dword [eax], 0
jmp 0x10030507
push 1
lea ecx, [ebp - 0x8c]
call fcn.1001b178
mov dword [ebp - 0xc4], eax
mov eax, dword [ebp - 0xc4]
mov eax, dword [eax]
inc eax
mov ecx, dword [ebp - 0xc4]
mov dword [ecx], eax
push 1
lea ecx, [ebp - 0x8c]
call fcn.1001b178
cmp dword [eax], 1
jg 0x100308a3
push 1
lea ecx, [ebp - 0x74]
call fcn.1001b10b
mov byte [ebp - 4], 5
lea eax, [ebp - 0x74]
push eax
push 0x3595
lea eax, [ebp - 0x23c]
push eax
push 0x73a3
push 0
call fcn.1002faa9
add esp, 0x14
push 0
lea ecx, [ebp - 0x74]
call fcn.1001b178
mov dword [eax], 1
jmp 0x1003057d
push 0
lea ecx, [ebp - 0x74]
call fcn.1001b178
mov dword [ebp - 0x144], eax
mov eax, dword [ebp - 0x144]
mov eax, dword [eax]
dec eax
mov ecx, dword [ebp - 0x144]
mov dword [ecx], eax
push 0
lea ecx, [ebp - 0x74]
call fcn.1001b178
cmp dword [eax], 0
jl 0x1003086f
push dword [ebp - 0x1c]
lea ecx, [ebp - 0x80]
call fcn.1001b178
mov esi, eax
push 0
lea ecx, [ebp - 0x74]
call fcn.1001b178
push dword [eax]
lea ecx, [ebp - 0x80]
call fcn.1001b178
mov ecx, dword [esi]
cmp ecx, dword [eax]
jl 0x100305c3
mov dword [ebp - 0xcc], 1
jmp 0x100305ca
and dword [ebp - 0xcc], 0
mov eax, dword [ebp - 0x1c]
cmp dword [ebp - 0xcc], eax
jg 0x100305e1
mov dword [ebp - 0x10c], 1
jmp 0x100305e8
and dword [ebp - 0x10c], 0
push 2
lea ecx, [ebp - 0x8c]
call fcn.1001b178
mov ecx, dword [ebp - 0x10c]
cmp ecx, dword [eax]
je 0x1003060b
mov dword [ebp - 0xd4], 1
jmp 0x10030612
and dword [ebp - 0xd4], 0
push 0
lea ecx, [ebp - 0x74]
call fcn.1001b178
mov ecx, dword [ebp - 0xd4]
cmp ecx, dword [eax]
je 0x10030632
mov dword [ebp - 0x1b4], 1
jmp 0x10030639
and dword [ebp - 0x1b4], 0
push dword [ebp - 0x1c]
lea ecx, [ebp - 0x80]
call fcn.1001b178
mov esi, eax
push dword [ebp - 0x1c]
lea ecx, [ebp - 0x80]
call fcn.1001b178
mov ecx, dword [esi]
cmp ecx, dword [eax]
jge 0x10030663
mov dword [ebp - 0x12c], 1
jmp 0x1003066a
and dword [ebp - 0x12c], 0
push 1
lea ecx, [ebp - 0x8c]
call fcn.1001b178
mov ecx, dword [ebp - 0x12c]
cmp ecx, dword [eax]
jl 0x1003068b
push 0
lea ecx, [ebp - 0x80]
call fcn.1001b178
xor eax, eax
inc eax
cmp eax, 1
jbe 0x1003069f
mov dword [ebp - 0xdc], 1
jmp 0x100306a6
and dword [ebp - 0xdc], 0
mov eax, dword [ebp - 0x1c]
cmp dword [ebp - 0xdc], eax
je 0x100306bd
mov dword [ebp - 0x114], 1
jmp 0x100306c4
and dword [ebp - 0x114], 0
cmp dword [ebp - 0x114], 0xffff
jae 0x100306dc
mov dword [ebp - 0xe4], 1
jmp 0x100306e3
and dword [ebp - 0xe4], 0
mov eax, dword [ebp - 0xe4]
inc eax
cmp eax, 0xfffffffb
jge 0x100306fb
mov dword [ebp - 0x13c], 1
jmp 0x10030702
and dword [ebp - 0x13c], 0
push 1
lea ecx, [ebp - 0x8c]
call fcn.1001b178
mov ecx, dword [ebp - 0x13c]
add ecx, dword [eax]
cmp ecx, dword [ebp - 0x20]
je 0x10030728
mov dword [ebp - 0xec], 1
jmp 0x1003072f
and dword [ebp - 0xec], 0
push 0
lea ecx, [ebp - 0x74]
call fcn.1001b178
push dword [eax]
lea ecx, [ebp - 0x80]
call fcn.1001b178
mov eax, dword [eax]
cmp eax, dword [ebp - 0xec]
jg 0x10030759
mov dword [ebp - 0x11c], 1
jmp 0x10030760
and dword [ebp - 0x11c], 0
push 0
lea ecx, [ebp - 0x74]
call fcn.1001b178
mov ecx, dword [ebp - 0x11c]
cmp ecx, dword [eax]
je 0x10030780
mov dword [ebp - 0x94], 1
jmp 0x10030787
and dword [ebp - 0x94], 0
cmp dword [ebp - 0x94], 0xfff8
jbe 0x100307a4
or eax, 0xffffffff
je 0x100307a4
mov dword [ebp - 0xa0], 1
jmp 0x100307ab
and dword [ebp - 0xa0], 0
push dword [ebp - 0x1c]
lea ecx, [ebp - 0x80]
call fcn.1001b178
mov eax, dword [eax]
imul eax, dword [ebp - 0xa0]
mov dword [ebp - 0x2c], eax
mov esi, dword [ebp - 0x2c]
push 0
lea ecx, [ebp - 0x74]
call fcn.1001b178
sub esi, dword [eax]
je 0x10030834
mov dword [ebp - 0x2c], 0
jmp 0x100307e3
mov eax, dword [ebp - 0x2c]
inc eax
mov dword [ebp - 0x2c], eax
cmp dword [ebp - 0x2c], 1
jg 0x10030832
mov dword [ebp - 0x20], 1
jmp 0x100307f9
mov eax, dword [ebp - 0x20]
dec eax
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], 0
jl 0x10030830
push 1
lea ecx, [ebp - 0x8c]
call fcn.1001b178
push dword [eax]
lea ecx, [ebp - 0x80]
call fcn.1001b178
cmp dword [eax], 0
je 0x1003081d
jmp 0x10030830
push 0
lea ecx, [ebp - 0x74]
call fcn.1001b178
cmp dword [eax], 0
je 0x1003082e
jmp 0x10030830
jmp 0x100307f2
jmp 0x100307dc
jmp 0x1003086a
mov dword [ebp - 0x20], 1
jmp 0x10030844
mov eax, dword [ebp - 0x20]
dec eax
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], 0
jl 0x1003086a
push 0x5467
push 0x222c
push 0x7863
push 0x4088
push 1
call fcn.1002e41d
add esp, 0x14
jmp 0x1003083d
jmp 0x1003055c
push 0x33ee
push 0x6441
push 0x6bf2
push 0x30fc
push 1
push 0xa55
call fcn.1002e53b
add esp, 0x18
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x74]
call fcn.1001b173
jmp 0x100304e3
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x8c]
call fcn.1001b173
jmp 0x1003048b
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x80]
call fcn.1001b173
jmp 0x10030060
push 4
lea ecx, [ebp - 0x1c4]
call fcn.1001b10b
mov dword [ebp - 4], 6
mov dword [ebp - 0x30], 9
lea eax, [ebp - 0x228]
push eax
push 0
push 0x636f
lea eax, [ebp - 0x1c4]
push eax
push 0x4c24
call fcn.10030ee1
add esp, 0x14
cmp dword [ebp - 0x30], 0
jne 0x10030938
cmp dword [ebp - 0x30], 0xfffffffb
jle 0x1003091d
mov dword [ebp - 0xa8], 1
jmp 0x10030924
and dword [ebp - 0xa8], 0
mov eax, dword [ebp - 0x30]
cmp eax, dword [ebp - 0xa8]
jle 0x10030938
and dword [ebp - 0xb0], 0
jmp 0x10030942
mov dword [ebp - 0xb0], 1
cmp dword [ebp - 0xb0], 1
jbe 0x10030957
mov dword [ebp - 0xc0], 1
jmp 0x1003095e
and dword [ebp - 0xc0], 0
push 2
lea ecx, [ebp - 0x1c4]
call fcn.1001b178
mov dword [ebp - 0xb8], eax
push 2
lea ecx, [ebp - 0x1c4]
call fcn.1001b178
mov ecx, dword [ebp - 0xb8]
mov eax, dword [eax]
mov dword [ecx], eax
mov eax, dword [ebp - 0xb8]
mov eax, dword [eax]
sub eax, dword [ebp - 0xc0]
cmp eax, dword [ebp - 0x30]
je 0x100309a7
mov dword [ebp - 0xc8], 1
jmp 0x100309ae
and dword [ebp - 0xc8], 0
mov eax, dword [ebp - 0x30]
cmp dword [ebp - 0xc8], eax
je 0x100309c5
mov dword [ebp - 0xd0], 1
jmp 0x100309cc
and dword [ebp - 0xd0], 0
mov eax, dword [ebp - 0xd0]
mov dword [ebp - 0x30], eax
mov byte [ebp - 0x23], 0
movzx eax, byte [ebp - 0x23]
test eax, eax
je 0x100309e9
push 0
call fcn.100320fe
pop ecx
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x1c4]
call fcn.1001b173
push 0
lea eax, [ebp - 0x18c]
push eax
lea eax, [ebp - 0x14]
push eax
lea eax, [ebp - 0x180]
push eax
lea eax, [ebp - 0x194]
push eax
lea eax, [ebp - 0x15c]
push eax
call fcn.1002f575
add esp, 0x18
mov dword [ebp - 0xd8], 8
mov dword [ebp - 0x50], 1
mov dword [ebp - 0x4c], 0xffff
mov dword [ebp - 0x68], 0xc0ec0dce
mov dword [ebp - 0x170], 0
mov dword [ebp - 0x118], 1
mov dword [ebp - 0x178], 1
mov dword [ebp - 0x58], 0
jmp 0x10030a6f
mov eax, dword [ebp - 0x58]
inc eax
mov dword [ebp - 0x58], eax
cmp dword [ebp - 0x58], 2
jge 0x10030a82
mov eax, dword [ebp - 0x58]
mov dword [ebp + eax*4 - 0x38], 0x2971
jmp 0x10030a68
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x38]
mov dword [ebp - 0x1fc], eax
push 4
pop eax
shl eax, 0
mov eax, dword [ebp + eax - 0x38]
inc eax
jne 0x10030b30
push 4
pop eax
shl eax, 0
imul eax, dword [ebp + eax - 0x38], 0xb5b3
test eax, eax
jne 0x10030acb
push 4
pop eax
imul eax, eax, 0
cmp dword [ebp + eax - 0x38], 0
jne 0x10030acb
and dword [ebp - 0x160], 0
jmp 0x10030ad5
mov dword [ebp - 0x160], 1
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x38]
mov dword [ebp - 0x200], eax
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x38]
mov dword [ebp - 0x204], eax
push 4
pop eax
shl eax, 0
mov eax, dword [ebp + eax - 0x38]
mov dword [ebp - 0x208], eax
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x38]
mov dword [ebp - 0xd8], eax
push 4
pop eax
shl eax, 0
mov eax, dword [ebp + eax - 0x38]
cmp dword [ebp - 0xd8], eax
jg 0x10030b30
and dword [ebp - 0xe0], 0
jmp 0x10030b3a
mov dword [ebp - 0xe0], 1
mov eax, dword [ebp - 0xe0]
sub eax, dword [ebp - 0x50]
cmp eax, dword [ebp - 0x4c]
jle 0x10030b54
mov dword [ebp - 0xe8], 1
jmp 0x10030b5b
and dword [ebp - 0xe8], 0
imul eax, dword [ebp - 0xe8], 0x5116
cmp eax, 6
ja 0x10030b76
mov dword [ebp - 0x90], 1
jmp 0x10030b7d
and dword [ebp - 0x90], 0
mov eax, dword [ebp - 0x90]
mov dword [ebp - 0x68], eax
cmp dword [ebp - 0x68], 0
jne 0x10030ba2
push 4
pop eax
imul eax, eax, 0
cmp dword [ebp + eax - 0x38], 0
jne 0x10030ba2
and dword [ebp - 0x168], 0
jmp 0x10030bac
mov dword [ebp - 0x168], 1
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x38]
mov dword [ebp - 0x250], eax
mov eax, dword [ebp - 0x68]
mov dword [ebp - 0x210], eax
mov eax, dword [ebp - 0x50]
mov dword [ebp - 0x230], eax
mov eax, dword [ebp - 0x4c]
mov dword [ebp - 0x218], eax
mov eax, dword [ebp - 0x50]
mov dword [ebp - 0x240], eax
push 4
pop eax
shl eax, 0
mov eax, dword [ebp + eax - 0x38]
cmp dword [ebp - 0x170], eax
jne 0x10030bfe
mov dword [ebp - 0xf8], 1
jmp 0x10030c05
and dword [ebp - 0xf8], 0
mov eax, dword [ebp - 0x4c]
cmp dword [ebp - 0xf8], eax
jne 0x10030c1c
mov dword [ebp - 0x100], 1
jmp 0x10030c23
and dword [ebp - 0x100], 0
mov eax, dword [ebp - 0x50]
cmp dword [ebp - 0x100], eax
jle 0x10030c3a
mov dword [ebp - 0x108], 1
jmp 0x10030c41
and dword [ebp - 0x108], 0
cmp dword [ebp - 0x108], 0
jne 0x10030c56
mov dword [ebp - 0x110], 1
jmp 0x10030c5d
and dword [ebp - 0x110], 0
mov eax, dword [ebp - 0x110]
mov dword [ebp - 0x118], eax
mov eax, dword [ebp - 0x118]
sub eax, dword [ebp - 0x4c]
mov dword [ebp - 0x178], eax
lea eax, [ebp - 0x14]
push eax
push 0x12c1
push 0x5613
lea eax, [ebp - 0x128]
push eax
lea eax, [ebp - 0x5c]
push eax
push 1
call fcn.1002f2e2
add esp, 0x18
cmp dword [ebp - 0x128], 0
jbe 0x10030d7f
push 1
lea ecx, [ebp - 0x154]
call fcn.1001b10b
mov dword [ebp - 4], 7
push 1
push 0x5349
lea eax, [ebp - 0x220]
push eax
lea eax, [ebp - 0x154]
push eax
push 0x3fb1
call fcn.1002f386
add esp, 0x14
push 0
lea ecx, [ebp - 0x154]
call fcn.1001b178
and dword [eax], 0
jmp 0x10030d14
push 0
lea ecx, [ebp - 0x154]
call fcn.1001b178
mov dword [ebp - 0x120], eax
mov eax, dword [ebp - 0x120]
mov eax, dword [eax]
inc eax
mov ecx, dword [ebp - 0x120]
mov dword [ecx], eax
push 0
lea ecx, [ebp - 0x154]
call fcn.1001b178
cmp dword [eax], 0x12
jge 0x10030d44
push 0
call fcn.10034871
pop ecx
push 0
lea ecx, [ebp - 0x154]
call fcn.1001b178
cmp dword [eax], 0
je 0x10030d42
jmp 0x10030cf0
jmp 0x10030cf0
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x154]
call fcn.1001b173
lea eax, [ebp - 0x238]
push eax
push dword [ebp - 0x180]
push dword [ebp - 0x128]
mov eax, dword [ebp - 0x14]
push dword [eax + 8]
push 0x8f6b
push 0x9f58
call fcn.1002b3a1
pop ecx
pop ecx
call eax
jmp 0x10030060
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop esi
mov esp, ebp
pop ebp
ret