Function at 0x10018bda
Capabilities:
Get disk information

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x1fc
push ebx
push esi
push edi
mov edi, 0x95364446
mov dword [ebp - 0xc0], edx
mov dword [ebp - 0x10], edi
xor edx, edx
mov dword [ebp - 0x18], 0x5bf25cbd
push 3
mov dword [ebp - 4], 0x2891ba8
mov dword [ebp - 0xbc], ecx
mov dword [ebp - 4], edx
pop ebx
jmp 0x10018c1f
mov eax, dword [ebp - 4]
mov dword [ebp + eax*4 - 0x1fc], edx
inc dword [ebp - 4]
cmp dword [ebp - 4], ebx
jl 0x10018c12
mov eax, dword [ebp - 0x10]
xor esi, esi
xor ecx, ecx
inc esi
cmp eax, esi
push 7
setl cl
mov dword [ebp - 0x18], ecx
mov dword [ebp - 0x18], edx
pop eax
jmp 0x10018c88
mov dword [ebp - 0x14], 0xf13b01d9
mov dword [ebp - 0x10], edx
cmp dword [ebp - 0x10], 0x10
jg 0x10018c85
mov dword [ebp - 0x138], eax
mov dword [ebp - 0x134], eax
mov dword [ebp - 0x130], eax
mov dword [ebp - 0x12c], eax
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0x134]
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0x134]
mov dword [ebp - 4], esi
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], 0x10
push 7
pop eax
jle 0x10018c4c
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 0x14
jle 0x10018c3c
mov dword [ebp - 0x20], 0x5252cb13
mov dword [ebp - 0x14], 0xbd0a7084
push 4
mov dword [ebp - 0x18], 0xf498
pop ecx
mov dword [ebp - 0x1c], ecx
mov dword [ebp - 0x10], 0xf66b17b7
mov dword [ebp - 4], edx
jmp 0x10018cc2
mov eax, dword [ebp - 4]
mov dword [ebp + eax*4 - 0x108], esi
inc dword [ebp - 4]
cmp dword [ebp - 4], ecx
jl 0x10018cb5
mov dword [ebp - 0x20], edx
jmp 0x10018d48
mov eax, dword [ebp - 0x20]
xor edx, edx
mov eax, dword [ebp + eax*4 - 0x108]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp + eax*4 - 0x108]
mov eax, dword [ebp - 0x20]
mov ecx, dword [ebp + eax*4 - 0x108]
mov eax, dword [ebp - 0x14]
cmp ecx, eax
setne dl
xor eax, eax
cmp edx, 0x352f
setle al
cmp eax, dword [ebp - 0x18]
jge 0x10018d0e
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp + eax*4 - 0x108]
mov eax, dword [ebp - 0x20]
xor edx, edx
push 4
mov ecx, dword [ebp + eax*4 - 0x108]
mov eax, dword [ebp - 0x1c]
cmp edx, eax
sbb eax, eax
inc eax
sub eax, ecx
mov dword [ebp - 0x10], eax
mov dword [ebp - 0x10], edx
pop ecx
jmp 0x10018d40
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0x108], 0xb7e8
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], ecx
jl 0x10018d2f
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], ebx
jle 0x10018ccc
mov byte [ebp - 9], dl
cmp byte [ebp - 9], 0
je 0x10018d67
push 0x1423
call dword [sym.imp.USER32.dll_GetKeyboardType]
xor edx, edx
mov dword [ebp - 0x1c], edi
mov dword [ebp - 4], 0x5bf25cbd
mov dword [ebp - 8], 0x7ad95e17
mov dword [ebp - 4], 7
mov dword [ebp - 0x10], edx
mov dword [ebp - 8], edx
jmp 0x10018d98
mov eax, dword [ebp - 8]
mov dword [ebp + eax*4 - 0x88], 0x4e2db58e
inc dword [ebp - 8]
cmp dword [ebp - 8], ebx
jl 0x10018d87
mov dword [ebp - 8], edx
jmp 0x10018db3
mov eax, dword [ebp - 8]
mov dword [ebp + eax*4 - 0x120], 0xffffffff
inc dword [ebp - 8]
cmp dword [ebp - 8], ebx
jl 0x10018da2
mov dword [ebp - 8], edx
jmp 0x10018dce
mov eax, dword [ebp - 8]
mov dword [ebp + eax*4 - 0x174], 0x56d9de36
inc dword [ebp - 8]
cmp dword [ebp - 8], ebx
jl 0x10018dbd
push 2
mov dword [ebp - 8], edx
pop edi
jmp 0x10018f03
mov dword [ebp - 4], 0xec8e12b6
mov dword [ebp - 0x14], 0xec76e8d2
mov dword [ebp - 4], 0x9458d81c
mov dword [ebp - 4], edx
jmp 0x10018e02
mov eax, dword [ebp - 4]
mov dword [ebp + eax*4 - 0x74], esi
inc dword [ebp - 4]
cmp dword [ebp - 4], edi
jl 0x10018df8
mov eax, dword [ebp - 0x74]
mov eax, dword [ebp - 0x70]
mov dword [ebp - 0x11c], eax
mov eax, dword [ebp - 8]
mov ecx, dword [ebp + eax*4 - 0x88]
mov eax, dword [ebp - 8]
mov dword [ebp + eax*4 - 0x88], ecx
mov dword [ebp - 4], ecx
mov eax, dword [ebp - 4]
mov eax, dword [ebp - 8]
mov eax, dword [ebp - 8]
mov eax, dword [ebp - 8]
mov eax, dword [ebp + eax*4 - 0x88]
mov eax, dword [ebp - 8]
mov eax, dword [ebp - 8]
mov dword [ebp - 0x10], eax
mov eax, dword [ebp - 0x70]
mov dword [ebp - 0x74], eax
test eax, eax
je 0x10018ef8
mov eax, dword [ebp - 8]
cmp dword [ebp + eax*4 - 0x88], edx
jne 0x10018e6a
mov eax, dword [ebp - 8]
mov eax, dword [ebp + eax*4 - 0x88]
mov eax, dword [ebp - 0x11c]
mov dword [ebp - 0x10], eax
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0x16c]
add eax, dword [ebp - 8]
jne 0x10018e8b
mov eax, edx
cmp dword [ebp - 0x84], edx
je 0x10018e8d
mov eax, esi
mov dword [ebp - 4], eax
xor ecx, ecx
mov eax, dword [ebp - 4]
mov eax, dword [ebp - 0x16c]
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 8]
mov esi, dword [ebp + eax*4 - 0x88]
mov dword [ebp - 0x70], esi
mov eax, dword [ebp - 0x16c]
add eax, dword [ebp - 8]
cmp eax, 0xffffffff
setl cl
mov dword [ebp - 4], ecx
xor ecx, ecx
mov eax, dword [ebp - 4]
cmp ecx, eax
mov eax, dword [ebp - 0x118]
sbb ecx, ecx
xor edx, edx
neg ecx
cmp ecx, eax
mov eax, dword [ebp - 8]
setge dl
mov eax, dword [ebp + eax*4 - 0x88]
imul eax, edx
imul eax, esi
xor esi, esi
cmp eax, 0x208dd2dc
jle 0x10018ef5
inc esi
xor edx, edx
mov eax, esi
jmp 0x10018efa
xor edx, edx
inc esi
mov eax, edx
mov dword [ebp - 0x120], eax
inc dword [ebp - 8]
cmp dword [ebp - 8], edi
jle 0x10018dde
mov dword [ebp - 0x10], edi
cmp dword [ebp - 0x10], edx
jl 0x10018f3d
mov dword [ebp - 8], edi
cmp dword [ebp - 8], edx
jl 0x10018f38
mov byte [ebp - 9], dl
cmp byte [ebp - 9], 0
je 0x10018f33
push 0x503
push edx
call dword [sym.imp.USER32.dll_CharLowerBuffW]
xor edx, edx
dec dword [ebp - 8]
jns 0x10018f1c
dec dword [ebp - 0x10]
jns 0x10018f14
mov dword [ebp - 0x14], 0x2891ba8
mov dword [ebp - 0x20], esi
mov dword [ebp - 4], 0xaa8e55a4
mov dword [ebp - 4], edx
jmp 0x10018f60
mov eax, dword [ebp - 4]
mov dword [ebp + eax*4 - 0x1d0], edx
inc dword [ebp - 4]
cmp dword [ebp - 4], ebx
jl 0x10018f53
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x20]
cmp dword [ebp - 0x20], edx
jne 0x10018f73
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x20]
cmp dword [ebp - 0x20], edx
jne 0x10018f7e
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x20]
xor ecx, ecx
mov eax, dword [ebp - 0x20]
cmp eax, 0x33563700
mov ebx, dword [sym.imp.USER32.dll_GetDesktopWindow]
mov dword [ebp - 0x1cc], eax
setle cl
imul ecx, dword [ebp - 0x20]
mov dword [ebp - 4], ecx
mov dword [ebp - 4], edi
mov edi, dword [sym.imp.USER32.dll_KillTimer]
cmp dword [ebp - 4], edx
jl 0x10018fdf
mov byte [ebp - 9], dl
cmp byte [ebp - 9], 0
je 0x10018fc9
push edx
push 0x1959
call ebx
push eax
call dword [sym.imp.USER32.dll_SetDlgItemTextA]
xor edx, edx
mov byte [ebp - 9], dl
cmp byte [ebp - 9], 0
je 0x10018fda
push edx
call ebx
push eax
call edi
xor edx, edx
dec dword [ebp - 4]
jns 0x10018faf
mov dword [ebp - 0x28], 0xe387
mov byte [ebp - 9], dl
cmp byte [ebp - 9], 0
je 0x10018fff
push 0x18ea
push edx
push edx
push edx
call dword [sym.imp.KERNEL32.dll_VirtualQueryEx]
xor edx, edx
mov byte [ebp - 9], dl
cmp byte [ebp - 9], 0
je 0x10019021
push edx
push 0x1f9c
push edx
call ebx
push eax
call dword [sym.imp.USER32.dll_GetDC]
push eax
call dword [sym.imp.GDI32.dll_GetTextExtentPoint32W]
xor edx, edx
mov dword [ebp - 0x28], 0x39e3cf95
mov dword [ebp - 0x24], 0xffffffff
push 0xfffffffffffffffd
pop eax
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x28], 0xfffffffb
mov dword [ebp - 0x14], 0x1e6e2bf
mov dword [ebp - 0x10], eax
mov dword [ebp - 0x14], 0xce1a812c
mov dword [ebp - 0x28], 0xe1a0e1c2
mov dword [ebp - 0x18], esi
mov dword [ebp - 0x2c], 0x1fdf20be
mov dword [ebp - 4], edx
jmp 0x10019074
mov eax, dword [ebp - 4]
mov dword [ebp + eax*4 - 0x114], 0xb59008cf
inc dword [ebp - 4]
cmp dword [ebp - 4], 3
jl 0x10019063
mov eax, dword [ebp - 0x24]
mov ecx, dword [ebp - 0x14]
sub ecx, dword [ebp - 0x10]
mov eax, dword [ebp - 0x18]
neg ecx
sbb ecx, ecx
neg eax
inc ecx
dec dword [ebp - 0x18]
cmp eax, ecx
mov eax, dword [ebp - 0x114]
mov ecx, esi
cmovge ecx, edx
xor eax, eax
cmp ecx, esi
setg al
xor edx, edx
cmp eax, 0x61c0f806
setl dl
sub edx, dword [ebp - 0x114]
mov ecx, dword [ebp - 0x10]
neg edx
mov eax, dword [ebp - 0x110]
sbb edx, edx
inc edx
imul ecx, edx
dec ecx
neg ecx
sbb ecx, ecx
xor edx, edx
inc ecx
cmp ecx, eax
mov eax, dword [ebp - 0x114]
setg dl
xor ecx, ecx
cmp edx, eax
setl cl
xor edx, edx
mov dword [ebp - 0x24], ecx
mov eax, dword [ebp - 0x2c]
mov dword [ebp - 0x14], eax
mov dword [ebp - 4], edx
jmp 0x100190fc
mov eax, dword [ebp - 4]
mov dword [ebp + eax*4 - 0x1e4], edx
inc dword [ebp - 4]
cmp dword [ebp - 4], 3
jl 0x100190ef
mov eax, dword [ebp - 0x1c]
xor ecx, ecx
cmp eax, esi
setl cl
mov dword [ebp - 4], ecx
mov dword [ebp - 0x20], 0xad313dd3
mov dword [ebp - 0x24], 0x36378284
mov dword [ebp - 4], edx
jmp 0x10019133
mov eax, dword [ebp - 4]
mov dword [ebp + eax*4 - 0x1d8], 0xa62
inc dword [ebp - 4]
cmp dword [ebp - 4], 2
jl 0x10019122
mov dword [ebp - 0x20], 0x18
jmp 0x10019312
mov dword [ebp - 8], 7
mov ecx, esi
mov dword [ebp - 0x10], 0x3a3dbc56
mov dword [ebp - 0x2c], esi
mov dword [ebp - 4], 3
mov dword [ebp - 0x14], 0xfffffffe
mov eax, dword [ebp - 8]
mov eax, dword [ebp - 0x20]
sub ecx, eax
je 0x100191ab
mov eax, dword [ebp - 0x10]
mov ecx, edx
cmp dword [ebp - 8], edx
je 0x1001917c
mov ecx, esi
mov eax, dword [ebp - 8]
sub eax, ecx
sub eax, dword [ebp - 0x20]
cmp eax, 0x5062d7bc
jg 0x10019192
cmp dword [ebp - 0x20], edx
je 0x10019192
mov edx, esi
mov eax, dword [ebp - 0x10]
xor ecx, ecx
cmp edx, eax
setle cl
xor edx, edx
imul ecx, dword [ebp - 0x2c]
test ecx, ecx
je 0x100191ab
cmp dword [ebp - 0x10], edx
jne 0x100191b0
cmp dword [ebp - 0x10], edx
je 0x100191e0
mov dword [ebp - 4], edx
jmp 0x100191c2
mov eax, dword [ebp - 4]
mov dword [ebp + eax*4 - 0xe8], edx
inc dword [ebp - 4]
cmp dword [ebp - 4], esi
jl 0x100191b5
mov dword [ebp - 8], edx
jmp 0x100191d9
mov eax, dword [ebp - 8]
mov dword [ebp + eax*4 - 0xe8], esi
inc dword [ebp - 8]
cmp dword [ebp - 8], esi
jl 0x100191cc
jmp 0x10019244
mov dword [ebp - 4], edx
jmp 0x100191f3
mov eax, dword [ebp - 4]
mov dword [ebp + eax*4 - 0x48], 5
inc dword [ebp - 4]
cmp dword [ebp - 4], esi
jl 0x100191e5
mov eax, dword [ebp - 0x10]
cmp dword [ebp - 0x2c], edx
je 0x10019203
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0x20]
mov ecx, 0xd0b41ef3
mov eax, dword [ebp - 0x10]
xor edx, edx
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x48]
mov dword [ebp - 0x24], eax
mov eax, dword [ebp - 0x2c]
sub ecx, eax
add ecx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x48]
cmp ecx, eax
mov eax, dword [ebp - 0x24]
setge dl
xor ecx, ecx
cmp eax, edx
setg cl
xor edx, edx
mov dword [ebp - 4], ecx
cmp dword [ebp - 0x48], edx
jne 0x1001931c
mov dword [ebp - 0x24], 0xffffffee
jmp 0x10019305
mov dword [ebp - 0x18], 0xe743
mov dword [ebp - 8], edx
jmp 0x100192f9
mov dword [ebp - 0x1c], 7
mov dword [ebp - 0x14], 0x61160dd4
cmp dword [ebp - 0x1c], edx
jne 0x10019302
mov dword [ebp - 0x2c], edx
cmp dword [ebp - 0x2c], esi
jg 0x100192f6
mov dword [ebp - 0x10], 0xaed5a0a0
xor edx, edx
mov dword [ebp - 0x14], 0xffffffff
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x14], eax
mov eax, dword [ebp - 0x10]
mov dword [ebp - 4], eax
mov ecx, dword [ebp - 0x10]
mov eax, dword [ebp - 4]
cmp ecx, eax
mov esi, dword [ebp - 0x18]
mov eax, dword [ebp - 0x18]
setle dl
sub esi, edx
neg esi
sbb esi, esi
xor edx, edx
inc esi
cmp eax, 0x995
setl dl
xor ecx, ecx
imul edx, dword [ebp - 0x14]
mov eax, dword [ebp - 0x18]
cmp edx, eax
setge cl
sub esi, ecx
neg esi
sbb esi, esi
xor edx, edx
inc esi
add esi, dword [ebp - 0x2c]
neg esi
mov dword [ebp - 0x14], esi
mov ecx, dword [ebp - 0x14]
mov eax, dword [ebp - 0x24]
cmp ecx, eax
setle dl
xor esi, esi
mov dword [ebp - 0x14], edx
inc esi
inc dword [ebp - 0x2c]
cmp dword [ebp - 0x2c], esi
jle 0x1001927e
xor edx, edx
inc dword [ebp - 8]
cmp dword [ebp - 8], esi
jle 0x1001925f
inc dword [ebp - 0x24]
cmp dword [ebp - 0x24], 9
jge 0x10019250
dec dword [ebp - 0x20]
cmp dword [ebp - 0x20], 0xfffffffa
jg 0x10019145
mov dword [ebp - 4], edx
jmp 0x10019884
mov dword [ebp - 0x18], 0x667a876e
mov dword [ebp - 0x18], edx
jmp 0x1001933d
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0xb8], edx
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 2
jl 0x10019330
mov dword [ebp - 0x18], esi
cmp dword [ebp - 0x18], edx
jl 0x100193ac
mov dword [ebp - 0x1c], 0x6887e0
xor ecx, ecx
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp + eax*4 - 0xb8]
cmp eax, 0xffffaf82
mov eax, dword [ebp - 0x18]
sete cl
xor edx, edx
test ecx, ecx
mov eax, dword [ebp + eax*4 - 0xb8]
sets dl
xor ecx, ecx
test eax, eax
sete cl
cmp ecx, edx
jge 0x10019390
mov dword [ebp - 0x14], 0xfff7
dec dword [ebp - 0x14]
xor edx, edx
jmp 0x100193a7
mov dword [ebp - 0x1c], esi
xor edx, edx
cmp dword [ebp - 0x1c], edx
jl 0x100193a7
cmp dword [ebp - 0xb4], edx
jne 0x100193a7
dec dword [ebp - 0x1c]
jns 0x1001939a
dec dword [ebp - 0x18]
jns 0x1001934b
mov dword [ebp - 0x28], 0xf13b01d9
mov dword [ebp - 0x1c], edx
mov dword [ebp - 0x148], 0x2cb51dba
mov dword [ebp - 0x144], 0x2cb51dba
mov dword [ebp - 0x140], 0x2cb51dba
mov dword [ebp - 0x13c], 0x2cb51dba
mov dword [ebp - 0x14], 0x885c82f7
mov dword [ebp - 0x14], edx
mov dword [ebp - 0x14], 0xfffffff9
mov dword [ebp - 0x1c], edx
jmp 0x100194ec
mov dword [ebp - 0x10], 0xffffffff
mov dword [ebp - 0x14], 0x4c039ecf
mov dword [ebp - 0x20], 0xf57440e7
mov dword [ebp - 0x14], 0xfffffffe
mov dword [ebp - 0x14], 0xffffffff
mov dword [ebp - 0x14], 0xfffffffe
mov dword [ebp - 0x14], 0x1fc53136
mov dword [ebp - 0x10], edx
jmp 0x100194df
mov dword [ebp - 0x24], 0xd2086bd0
mov dword [ebp - 0x18], 0x868fdadf
mov dword [ebp - 0x14], 0x5c59c3f9
mov dword [ebp - 0x14], 0x6a687e91
mov dword [ebp - 0x14], 0x426ae69e
mov dword [ebp - 0x2c], 0xffff
mov dword [ebp - 0x24], edx
jmp 0x100194d6
mov dword [ebp - 8], 0x17d0b0a3
mov dword [ebp - 0x14], 0x85bd
mov dword [ebp - 0x18], edx
jmp 0x10019483
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x1b4], 0xd0d42ad0
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 2
jl 0x10019472
mov ecx, dword [ebp - 0x14]
xor edx, edx
mov eax, dword [ebp - 0x10]
cmp eax, ecx
setle dl
mov dword [ebp - 0x18], edx
xor edx, edx
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x24]
mov ecx, dword [ebp + eax*4 - 0x148]
mov eax, dword [ebp - 0x24]
mov dword [ebp + eax*4 - 0x148], ecx
mov dword [ebp - 0x14], ecx
mov dword [ebp - 0x1b0], esi
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 8]
mov eax, dword [ebp - 0x14]
mov dword [ebp - 0x14], edx
dec dword [ebp - 0x2c]
inc dword [ebp - 0x24]
cmp dword [ebp - 0x24], 3
jle 0x1001945f
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], 3
jle 0x10019430
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], 8
jl 0x100193f7
mov byte [ebp - 9], dl
cmp byte [ebp - 9], 0
je 0x10019507
call dword [sym.imp.USER32.dll_GetMessageTime]
xor edx, edx
mov dword [ebp - 0x1c], edx
jmp 0x10019877
mov dword [ebp - 8], 0xb871c7bf
mov dword [ebp - 0x24], esi
mov dword [ebp - 0x2c], 8
mov dword [ebp - 0xe4], esi
mov dword [ebp - 0xe0], esi
mov dword [ebp - 0xdc], esi
mov dword [ebp - 0xd8], esi
mov dword [ebp - 0x20], 0xfcd553b7
mov dword [ebp - 0x18], edx
jmp 0x10019552
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x38], 0x64a6847d
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 3
jl 0x10019544
mov dword [ebp - 8], edx
cmp dword [ebp - 8], 2
jg 0x100195f7
mov dword [ebp - 0x18], esi
xor ecx, ecx
mov dword [ebp - 0x10], 0xa4ccfd6
mov eax, dword [ebp - 8]
mov eax, dword [ebp + eax*4 - 0x38]
mov eax, dword [ebp - 0x38]
mov eax, dword [ebp - 8]
mov eax, dword [ebp - 8]
mov eax, dword [ebp + eax*4 - 0x38]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 8]
mov eax, dword [ebp + eax*4 - 0x38]
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x10], 3
mov eax, dword [ebp - 0x34]
mov eax, dword [ebp - 8]
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x10], eax
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 8]
cmp eax, 0xfffa
mov eax, dword [ebp - 0x24]
setne cl
xor edx, edx
cmp ecx, eax
mov ecx, dword [ebp - 0x34]
mov eax, dword [ebp - 8]
setle dl
mov dword [ebp + eax*4 - 0x38], ecx
mov eax, dword [ebp - 8]
add eax, edx
add eax, ecx
imul eax, dword [ebp - 0x24]
sub eax, dword [ebp - 0x18]
imul eax, dword [ebp - 0x18]
mov dword [ebp - 0x24], eax
inc dword [ebp - 8]
cmp dword [ebp - 8], 2
jle 0x10019565
xor edx, edx
cmp dword [ebp - 0x30], edx
je 0x1001961a
mov eax, dword [ebp - 8]
xor edx, edx
mov ecx, dword [ebp - 0x38]
mov eax, dword [ebp - 0x24]
cmp eax, ecx
mov ecx, esi
setl dl
imul eax, edx, 0x16e1
xor edx, edx
test eax, eax
jne 0x1001961c
mov ecx, edx
mov eax, dword [ebp - 8]
sub eax, ecx
xor ecx, ecx
cmp eax, 0xf7fa
setl cl
sub ecx, dword [ebp - 0x24]
mov eax, dword [ebp - 0x34]
sub ecx, eax
mov eax, dword [ebp - 0x2c]
sub ecx, eax
xor eax, eax
cmp eax, ecx
sbb eax, eax
neg eax
sub eax, dword [ebp - 8]
neg eax
sbb eax, eax
xor ecx, ecx
inc eax
cmp eax, 0x7342
mov eax, dword [ebp - 0x24]
setl cl
sub eax, ecx
cmp eax, 0x7fcf6239
jne 0x10019677
mov dword [ebp - 0x14], 0x3ad33dc2
mov dword [ebp - 0x18], 0xfffffff8
mov eax, dword [ebp - 0x14]
mov dword [ebp - 0x18], eax
jmp 0x1001974e
mov dword [ebp - 0x14], 0x59a1248f
mov dword [ebp - 0x14], 0x7f4763cd
mov dword [ebp - 0x14], 0xfffffffd
mov dword [ebp - 0x10], 0xb48eda29
mov dword [ebp - 0x18], edx
jmp 0x100196a9
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0xac], 0x7b094c6
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 2
jl 0x10019698
cmp dword [ebp - 0xa8], edx
je 0x10019749
mov eax, dword [ebp - 0xd8]
dec dword [ebp - 0xd8]
test eax, eax
je 0x10019749
mov eax, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x38]
neg eax
sbb eax, eax
neg eax
imul ecx, eax
neg ecx
sbb ecx, ecx
neg ecx
mov dword [ebp - 0x14], ecx
mov eax, dword [ebp - 0x14]
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], edx
jne 0x100196f8
mov eax, edx
cmp dword [ebp - 0xa8], edx
je 0x100196fa
mov eax, esi
xor edx, edx
mov dword [ebp - 0x14], eax
mov ecx, dword [ebp - 0xac]
mov eax, dword [ebp - 0x14]
cmp ecx, eax
setle dl
mov dword [ebp - 0xac], edx
mov eax, dword [ebp - 0x10]
lea ecx, [edx - 9]
xor edx, edx
cmp ecx, eax
setg dl
cmp edx, dword [ebp - 0x10]
jle 0x1001972f
cmp dword [ebp - 0x2c], 0
je 0x1001972f
mov edx, esi
jmp 0x10019731
xor edx, edx
mov eax, dword [ebp - 0xe4]
xor ecx, ecx
cmp edx, eax
mov eax, dword [ebp - 0x24]
setge cl
xor edx, edx
add eax, ecx
mov eax, esi
jne 0x1001974b
mov eax, edx
mov dword [ebp - 0x24], eax
push 7
pop eax
mov dword [ebp - 0x168], eax
mov dword [ebp - 0x164], eax
mov dword [ebp - 0x160], eax
mov dword [ebp - 0x15c], eax
mov dword [ebp - 0x14], 0xffffffff
mov byte [ebp - 9], dl
cmp byte [ebp - 9], 0
je 0x10019781
push edx
call ebx
push eax
call edi
xor edx, edx
mov byte [ebp - 9], dl
cmp byte [ebp - 9], 0
je 0x10019793
push edx
call dword [sym.imp.USER32.dll_CharUpperW]
xor edx, edx
mov dword [ebp - 0x2c], 0xffffffff
mov dword [ebp - 0x10], esi
mov dword [ebp - 0x14], edx
mov dword [ebp - 0x20], edx
jmp 0x100197b6
mov eax, dword [ebp - 0x20]
mov dword [ebp + eax*4 - 0x128], 0x3198a8f9
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], 2
jl 0x100197a5
mov dword [ebp - 0x20], edx
jmp 0x100197ce
mov eax, dword [ebp - 0x20]
mov dword [ebp + eax*4 - 0x94], edx
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], esi
jl 0x100197c1
mov dword [ebp - 0x2c], esi
cmp dword [ebp - 0x2c], edx
jl 0x10019802
mov dword [ebp - 0x14], 0x6dd8
mov dword [ebp - 0x14], 0xd00693e9
mov dword [ebp - 0x14], 0xfffffffc
mov dword [ebp - 0x14], 0xffffffff
dec dword [ebp - 0x94]
dec dword [ebp - 0x2c]
jns 0x100197db
mov dword [ebp - 0x10], edx
cmp dword [ebp - 0x10], edx
jl 0x1001985f
mov byte [ebp - 9], dl
cmp byte [ebp - 9], 0
je 0x10019822
push 0x233
push edx
push edx
call dword [sym.imp.KERNEL32.dll_QueryDosDeviceW]
xor edx, edx
mov dword [ebp - 0x2c], esi
cmp dword [ebp - 0x2c], edx
jl 0x1001985a
mov dword [ebp - 0x18], 0xffffffff
mov dword [ebp - 0x18], edx
jmp 0x10019850
mov eax, dword [ebp - 0x18]
mov ecx, dword [ebp + eax*4 - 0x128]
mov eax, dword [ebp - 0x2c]
add ecx, dword [ebp + eax*4 - 0x128]
mov dword [ebp - 0x14], ecx
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], esi
jle 0x10019836
dec dword [ebp - 0x2c]
jns 0x1001982a
dec dword [ebp - 0x10]
jns 0x1001980a
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x164]
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp - 0x164]
mov dword [ebp - 0x14], esi
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], 0x10
jle 0x1001950f
inc dword [ebp - 4]
cmp dword [ebp - 4], 0x14
jle 0x10019324
mov esi, dword [sym.imp.COMDLG32.dll_GetOpenFileNameW]
mov ebx, dword [sym.imp.USER32.dll_PostMessageA]
mov edi, dword [sym.imp.KERNEL32.dll_IsDebuggerPresent]
mov dword [ebp - 4], 0xfd3df75d
mov dword [ebp - 4], 0xffffffe8
jmp 0x100198f2
mov dword [ebp - 0x28], 0xffff
cmp dword [ebp - 0x28], edx
mov byte [ebp - 9], dl
je 0x100198ca
cmp byte [ebp - 9], 0
je 0x100198e2
push edx
call esi
jmp 0x100198e0
cmp byte [ebp - 9], 0
je 0x100198e2
push edx
push edx
push 0x16a5
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call ebx
xor edx, edx
mov byte [ebp - 9], dl
cmp byte [ebp - 9], 0
je 0x100198ef
call edi
xor edx, edx
inc dword [ebp - 4]
cmp dword [ebp - 4], 0xffffffea
jle 0x100198b0
mov dword [ebp - 0x18], 0x95364446
mov dword [ebp - 0x2c], edx
mov dword [ebp - 0x20], 0x6c0e263
mov dword [ebp - 0x14], 0xb4983ca3
mov dword [ebp - 0x2c], edx
jmp 0x10019ad5
mov dword [ebp - 0x24], 0xa12b57e8
mov dword [ebp - 0x20], 4
mov dword [ebp - 0x24], edx
jmp 0x10019ac8
mov dword [ebp - 8], 0xfffffff9
mov dword [ebp - 0x10], 0xffffffff
mov dword [ebp - 8], 0xffffffe6
jmp 0x1001998e
mov dword [ebp - 0x20], 0x2c9cc141
mov dword [ebp - 0x20], 9
jmp 0x10019965
mov dword [ebp - 0x28], 1
mov eax, dword [ebp - 0x28]
mov dword [ebp - 0x10], eax
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], 0x11
jge 0x10019955
mov dword [ebp - 0x20], edx
jmp 0x10019985
mov byte [ebp - 9], dl
cmp byte [ebp - 9], 0
je 0x10019982
push edx
call dword [sym.imp.USER32.dll_SetKeyboardState]
xor edx, edx
dec dword [ebp - 0x20]
cmp dword [ebp - 0x20], 0xfffffff4
jg 0x10019970
inc dword [ebp - 8]
cmp dword [ebp - 8], edx
jle 0x10019945
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0x24]
mov dword [ebp - 0x20], eax
mov eax, dword [ebp - 0x20]
mov dword [ebp - 8], eax
mov edx, dword [ebp - 8]
add edx, 0x4adca19c
neg edx
sbb edx, edx
inc edx
sub edx, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x2c]
mov ecx, dword [ebp - 0x10]
neg eax
sub ecx, eax
neg ecx
sbb ecx, ecx
inc ecx
cmp ecx, edx
jge 0x100199f1
xor edx, edx
mov byte [ebp - 9], dl
cmp byte [ebp - 9], dl
je 0x10019ac5
push 0xda8
push edx
push 0x50c
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.USER32.dll_GetDlgItemTextA]
jmp 0x10019ac3
mov dword [ebp - 0x1c], 0xffffffff
xor ecx, ecx
mov dword [ebp - 4], 0xb0f4f2d8
mov dword [ebp - 0x19c], ecx
mov dword [ebp - 0x198], ecx
mov dword [ebp - 0x194], ecx
mov dword [ebp - 0x190], ecx
mov eax, dword [ebp - 0x2c]
mov dword [ebp - 4], eax
cmp dword [ebp - 4], ecx
je 0x10019a29
cmp dword [ebp - 0x14], ecx
jne 0x10019a32
cmp dword [ebp - 0x24], ecx
jne 0x10019a32
mov eax, ecx
jmp 0x10019a35
xor eax, eax
inc eax
neg eax
jne 0x10019a42
cmp dword [ebp - 8], ecx
jne 0x10019a42
xor eax, eax
inc eax
add eax, 8
xor edx, edx
imul eax, dword [ebp - 0x14]
imul ecx, eax, 0x5f7f
mov eax, dword [ebp - 0x1c]
cmp ecx, eax
setg dl
imul edx, dword [ebp - 8]
test edx, edx
jne 0x10019a71
xor edx, edx
inc dword [ebp - 0x24]
cmp dword [ebp - 0x24], 9
je 0x1001992e
inc dword [ebp - 0x2c]
cmp dword [ebp - 0x2c], 0xc
jl 0x10019918
mov dword [ebp - 0x1c], 0xfffffff8
mov dword [ebp - 0x1c], 0xfffffff9
jmp 0x10019b32