Function at 0x41d280
Capabilities:
Get disk information
Get disk information via ioctl
Get storage device properties

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x4452dd
mov eax, dword fs:[0]
push eax
mov eax, 0x12e4
call fcn.0042d980
mov eax, dword [0x4629b4]
xor eax, ebp
mov dword [ebp - 0x10], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
cmp dword [0x461140], 1
mov eax, dword [ebp + 8]
mov dword [ebp - 0x1244], eax
jne 0x41e1dd
cmp dword [0x46c120], 1
je 0x41e1dd
lea ecx, [ebp - 0x10dc]
mov dword [0x46c120], 1
mov dword [ebp - 0x1070], 0
call fcn.004050b0
lea eax, [ebp - 0x10dc]
mov dword [ebp - 4], 0
push eax
call fcn.0041e3e0
add esp, 4
lea ecx, [ebp - 0x1178]
call fcn.004050b0
push 0x208
lea eax, [ebp - 0x438]
mov byte [ebp - 4], 1
push 0
push eax
call fcn.0042f620
add esp, 0xc
lea eax, [ebp - 0x438]
push eax
push 0x104
call dword [sym.imp.KERNEL32.dll_GetLogicalDriveStringsW]
push fcn.004050d0
push fcn.004050b0
push 0x80
mov esi, eax
lea eax, [ebp - 0x1038]
push 0x18
push eax
call fcn.0042db0d
lea eax, [esi - 1]
mov byte [ebp - 4], 2
cmp eax, 0x103
ja 0x41d520
cmp word [ebp - 0x438], 0
lea esi, [ebp - 0x438]
je 0x41d520
push esi
call dword [sym.imp.KERNEL32.dll_GetDriveTypeW]
cmp eax, 3
je 0x41d39a
cmp eax, 2
jne 0x41d4fd
push esi
lea ecx, [ebp - 0x106c]
call fcn.00405090
push 1
push 0x4610a4
lea eax, [ebp - 0x106c]
mov byte [ebp - 4], 3
push eax
lea eax, [ebp - 0x10c4]
push eax
call fcn.0040c410
add esp, 0x10
lea ecx, [ebp - 0x106c]
push eax
call fcn.004050f0
lea ecx, [ebp - 0x10c4]
call fcn.004050d0
lea eax, [ebp - 0x106c]
push eax
lea eax, [ebp - 0x1178]
push eax
lea eax, [ebp - 0x1278]
push eax
call fcn.00404aa0
push 0x469a44
push eax
lea eax, [ebp - 0x10c4]
mov byte [ebp - 4], 4
push eax
call fcn.00404a40
add esp, 0x18
lea ecx, [ebp - 0x1178]
push eax
call fcn.004050f0
lea ecx, [ebp - 0x10c4]
call fcn.004050d0
lea ecx, [ebp - 0x1278]
mov byte [ebp - 4], 3
call fcn.004050d0
lea eax, [ebp - 0x106c]
push eax
lea eax, [ebp - 0x10ac]
push str.__
push eax
call fcn.0040ca90
add esp, 0xc
push 0
push 0
push 3
push 0
push 3
push SysReAllocString
lea ecx, [ebp - 0x10ac]
mov byte [ebp - 4], 5
call fcn.00409580
push eax
call dword [sym.imp.KERNEL32.dll_CreateFileW]
mov edi, eax
cmp edi, 0xffffffff
je 0x41d4e3
push 0
lea eax, [ebp - 0x1070]
mov dword [ebp - 0x104c], 0
push eax
push 0xc
lea eax, [ebp - 0x1054]
xorps xmm0, xmm0
push eax
push 0
push 0
push 0x2d1080
push edi
movq qword [ebp - 0x1054], xmm0
call dword [sym.imp.KERNEL32.dll_DeviceIoControl]
push edi
call dword [sym.imp.KERNEL32.dll_CloseHandle]
cmp dword [ebp - 0x1054], 7
jne 0x41d4e3
lea eax, [ebp - 0x106c]
push eax
mov eax, dword [ebp - 0x1050]
lea ecx, [ebp - 0x1038]
lea eax, [eax + eax*2]
lea ecx, [ecx + eax*8]
call fcn.004051f0
lea ecx, [ebp - 0x10ac]
call fcn.004050d0
lea ecx, [ebp - 0x106c]
mov byte [ebp - 4], 2
call fcn.004050d0
mov ecx, esi
lea edx, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x41d502
sub ecx, edx
sar ecx, 1
lea esi, [esi + ecx*2]
add esi, 2
cmp word [esi], ax
jne 0x41d385
push 0x469acc
lea eax, [ebp - 0x1178]
push eax
lea eax, [ebp - 0x1278]
push eax
call fcn.00404aa0
lea ecx, [ebp - 0x10dc]
mov byte [ebp - 4], 6
push ecx
push eax
lea eax, [ebp - 0x10c4]
push eax
call fcn.00404a40
add esp, 0x18
lea ecx, [ebp - 0x10dc]
push eax
call fcn.004050f0
lea ecx, [ebp - 0x10c4]
call fcn.004050d0
lea ecx, [ebp - 0x1278]
mov byte [ebp - 4], 2
call fcn.004050d0
lea ecx, [ebp - 0x10dc]
call fcn.00409580
mov ecx, 0x46acdc
nop dword [eax]
mov dx, word [ecx]
cmp dx, word [eax]
jne 0x41d5b6
test dx, dx
je 0x41d5b2
mov dx, word [ecx + 2]
cmp dx, word [eax + 2]
jne 0x41d5b6
add ecx, 4
add eax, 4
test dx, dx
jne 0x41d590
xor eax, eax
jmp 0x41d5bb
sbb eax, eax
or eax, 1
test eax, eax
jne 0x41d5c6
xor esi, esi
jmp 0x41e1a7
push 2
push str.__n___
lea eax, [ebp - 0x10dc]
push eax
lea eax, [ebp - 0x1148]
push eax
call fcn.0040c410
add esp, 0x10
lea ecx, [ebp - 0x1148]
mov byte [ebp - 4], 7
call fcn.00409580
mov ecx, 0x46aedc
mov dx, word [ecx]
cmp dx, word [eax]
jne 0x41d61d
test dx, dx
je 0x41d619
mov dx, word [ecx + 2]
cmp dx, word [eax + 2]
jne 0x41d61d
add ecx, 4
add eax, 4
test dx, dx
jne 0x41d5f7
xor eax, eax
jmp 0x41d622
sbb eax, eax
or eax, 1
mov esi, dword [ebp - 0x1244]
mov dword [ebp - 0x1260], eax
test eax, eax
je 0x41d662
cmp dword [ebp + 0xc], 0
je 0x41d643
push 0
push esi
call fcn.00424ee0
add esp, 8
lea eax, [ebp - 0x1148]
push eax
sub esp, 0x18
mov ecx, esp
push 0x46aedc
call fcn.00405090
push esi
call fcn.00424d40
add esp, 0x20
push 0xffffffffffffffff
lea ecx, [ebp - 0x1148]
call fcn.00409580
push eax
push 0x46aedc
call fcn.0040d900
add esp, 0xc
lea ecx, [ebp - 0x10dc]
push 0xffffffffffffffff
call fcn.00409580
push eax
push 0x46acdc
call fcn.0040d840
add esp, 0xc
lea ecx, [ebp - 0x11a8]
push 0x44c80c
call fcn.004088c0
push 0x4464a0
lea ecx, [ebp - 0x1190]
mov byte [ebp - 4], 8
call fcn.00405090
push 0x100
lea eax, [ebp - 0x130]
push 0
push eax
call fcn.0042f620
push 0x100
lea eax, [ebp - 0x230]
push 0
push eax
call fcn.0042f620
movzx eax, word [0x46c236]
lea ecx, [ebp - 0x1048]
add esp, 0x18
mov dword [ebp - 0x103c], 0
mov dword [ebp - 0x125c], eax
mov dword [ebp - 0x1258], 0
push 0xc
call fcn.0040ba70
lea ecx, [ebp - 0x1048]
call fcn.0040d9a0
push 0x46109c
lea ecx, [ebp - 0x10ac]
mov byte [ebp - 4], 0xa
call fcn.00405090
lea eax, [ebp - 0x10ac]
mov byte [ebp - 4], 0xb
push eax
lea eax, [ebp - 0x1048]
push eax
lea eax, [ebp - 0x1148]
push eax
call fcn.0040b220
add esp, 0xc
mov byte [ebp - 4], 0xa
lea ecx, [ebp - 0x10ac]
call fcn.004050d0
xor edi, edi
lea ecx, [ebp - 0x1048]
mov dword [ebp - 0x1254], edi
call fcn.0040c280
test eax, eax
je 0x41e082
mov dword [ebp - 0x1240], 0x1fa6
nop word [eax + eax]
push edi
lea ecx, [ebp - 0x1048]
call fcn.0040df90
mov ecx, eax
call fcn.00409580
push eax
lea ecx, [ebp - 0x1278]
call fcn.00405090
push 0xa
lea eax, [ebp - 0x1278]
mov byte [ebp - 4], 0xc
push 0
push eax
call fcn.0042bde0
add esp, 0xc
mov dword [ebp - 0x1250], eax
lea ecx, [ebp - 0x1278]
mov byte [ebp - 4], 0xa
call fcn.004050d0
push edi
lea ecx, [ebp - 0x1048]
call fcn.0040df90
push eax
lea eax, [ebp - 0x10ac]
push str..PhysicalDrive
push eax
call fcn.0040ca90
add esp, 0xc
push 0
push 0
push 3
push 0
push 3
push SysReAllocString
lea ecx, [ebp - 0x10ac]
call fcn.00409580
push eax
call dword [sym.imp.KERNEL32.dll_CreateFileW]
mov edi, eax
cmp edi, 0xffffffff
je 0x41e073
push 0x200
push 0
push 0x46e3e8
call fcn.0042f620
add esp, 0xc
mov dword [ebp - 0x104c], 0
lea eax, [ebp - 0x103c]
mov dword [ebp - 0x1054], 0
mov dword [ebp - 0x1050], 0
push 0
push eax
push 0x200
push 0x46e3e8
push 0xc
lea eax, [ebp - 0x1054]
push eax
push 0x2d1400
push edi
call dword [sym.imp.KERNEL32.dll_DeviceIoControl]
movzx esi, byte [0x46e404]
lea eax, [ebp - 0x103c]
push 0
push eax
push 0xc
lea eax, [ebp - 0x110c]
mov dword [ebp - 0x124c], esi
push eax
push 0xc
lea eax, [ebp - 0x1100]
mov dword [ebp - 0x10f8], 0
push eax
push 0x2d1400
xorps xmm0, xmm0
mov dword [ebp - 0x1100], 7
push edi
mov dword [ebp - 0x10fc], 0
movq qword [ebp - 0x110c], xmm0
mov dword [ebp - 0x1104], 0
call dword [sym.imp.KERNEL32.dll_DeviceIoControl]
cmp eax, 1
jne 0x41d90a
cmp byte [ebp - 0x1104], al
jne 0x41d90a
cmp dword [ebp - 0x124c], 7
mov esi, 6
cmovne esi, eax
jmp 0x41d994
push 0
lea eax, [ebp - 0x103c]
mov dword [ebp - 0x1110], 0
push eax
push 0xc
lea eax, [ebp - 0x107c]
mov dword [ebp - 0x1118], 8
push eax
push 0xc
lea eax, [ebp - 0x1118]
mov dword [ebp - 0x1114], 0
push eax
push 0x2d1400
xorps xmm0, xmm0
mov dword [ebp - 0x1074], 0
push edi
movq qword [ebp - 0x107c], xmm0
call dword [sym.imp.KERNEL32.dll_DeviceIoControl]
mov cl, byte [ebp - 0x1074]
xor eax, eax
cmp cl, 1
setne al
mov dword [ebp - 0x1248], eax
cmp esi, 7
jne 0x41d98e
xor eax, eax
cmp cl, 1
setne al
add eax, 2
mov dword [ebp - 0x1248], eax
mov esi, dword [ebp - 0x1248]
lea ecx, [ebp - 0x1094]
call fcn.004088e0
mov eax, dword [0x46e3f8]
lea ecx, [ebp - 0x1094]
mov byte [ebp - 4], 0xe
lea eax, [eax + 0x46e3e8]
push eax
call fcn.0040df00
mov eax, dword [0x46e3f4]
test eax, eax
je 0x41da48
lea eax, [eax + 0x46e3e8]
push eax
lea ecx, [ebp - 0x10f4]
call fcn.004088c0
lea eax, [ebp - 0x11a8]
mov byte [ebp - 4], 0xf
push eax
mov eax, dword [0x46e3f4]
lea eax, [eax + 0x46e3e8]
push eax
lea eax, [ebp - 0x1290]
push eax
call fcn.0040c940
lea ecx, [ebp - 0x1094]
mov byte [ebp - 4], 0x10
push ecx
push eax
lea eax, [ebp - 0x1278]
push eax
call fcn.0040c910
add esp, 0x18
lea ecx, [ebp - 0x1094]
push eax
call fcn.00408910
lea ecx, [ebp - 0x1278]
call fcn.00408900
lea ecx, [ebp - 0x1290]
call fcn.00408900
lea ecx, [ebp - 0x10f4]
mov byte [ebp - 4], 0xe
call fcn.00408900
push 0x200
push 0
push 0x46e3e8
call fcn.0042f620
add esp, 0xc
lea ecx, [ebp - 0x1094]
call fcn.00409570
push eax
push 0xffffffffffffffff
push 0x46e3e8
call fcn.00434d26
add esp, 0xc
lea ecx, [ebp - 0x1094]
push 0x4474e0
call fcn.0040df00
lea eax, [ebp - 0x123c]
mov dword [ebp - 0x123c], 0
push eax
push 0x44c80c
push 0x46e3e8
call fcn.00434782
add esp, 0xc
test eax, eax
je 0x41db00
nop
lea ecx, [ebp - 0x11a8]
push ecx
push eax
lea eax, [ebp - 0x10f4]
push eax
call fcn.0040c940
add esp, 0xc
push eax
lea ecx, [ebp - 0x1094]
mov byte [ebp - 4], 0x11
call fcn.0040e070
lea ecx, [ebp - 0x10f4]
mov byte [ebp - 4], 0xe
call fcn.00408900
lea eax, [ebp - 0x123c]
push eax
push 0x44c80c
push 0
call fcn.00434782
add esp, 0xc
test eax, eax
jne 0x41dab0
lea ecx, [ebp - 0x1094]
call fcn.00406800
test eax, eax
je 0x41db1f
dec eax
lea ecx, [ebp - 0x1094]
push eax
call fcn.00408950
mov byte [eax], 0
lea eax, [ebp - 0x1094]
push eax
lea eax, [ebp - 0x1130]
push eax
call fcn.0040c200
add esp, 8
lea eax, [ebp - 0x1130]
mov byte [ebp - 4], 0x12
push eax
lea ecx, [ebp - 0x10c4]
call fcn.0040aeb0
push 0x4549e4
push dword [ebp - 0x1254]
lea ecx, [ebp - 0x1048]
mov byte [ebp - 4], 0x13
call fcn.0040df90
push eax
lea eax, [ebp - 0x1290]
push eax
call fcn.00404b30
lea ecx, [ebp - 0x1130]
mov byte [ebp - 4], 0x14
push ecx
push eax
lea eax, [ebp - 0x10f4]
push eax
call fcn.00404a40
add esp, 0x18
lea ecx, [ebp - 0x1130]
push eax
call fcn.004050f0
lea ecx, [ebp - 0x10f4]
call fcn.004050d0
lea ecx, [ebp - 0x1290]
mov byte [ebp - 4], 0x13
call fcn.004050d0
push str.Unknown
lea ecx, [ebp - 0x1160]
call fcn.00405090
mov eax, dword [ebp - 0x124c]
mov byte [ebp - 4], 0x15
cmp eax, 0x15
jae 0x41dbfd
push dword [eax*4 + 0x462650]
lea ecx, [ebp - 0x1160]
call fcn.00405130
cmp dword [ebp - 0x124c], 8
jne 0x41dbfd
push 0x46b8b0
lea ecx, [ebp - 0x1160]
call fcn.00405200
push 0
lea eax, [ebp - 0x103c]
xorps xmm0, xmm0
push eax
push 0x18
lea eax, [ebp - 0x106c]
movq qword [ebp - 0x105c], xmm0
push eax
push 0
push 0
push 0x70000
push edi
movups xmmword [ebp - 0x106c], xmm0
call dword [sym.imp.KERNEL32.dll_DeviceIoControl]
push 0x90
lea eax, [ebp - 0x1238]
push 0
push eax
call fcn.0042f620
add esp, 0xc
lea eax, [ebp - 0x103c]
push 0
push eax
push 0x90
lea eax, [ebp - 0x1238]
push eax
push 0
push 0
push 0x70048
push edi
call dword [sym.imp.KERNEL32.dll_DeviceIoControl]
cmp dword [ebp - 0x1238], 1
mov ecx, 0x462648
mov eax, 0x462644
cmovne eax, ecx
push edi
mov dword [ebp - 0x1248], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [ebp - 0x1058]
xorps xmm0, xmm0
mul dword [ebp - 0x105c]
movups xmmword [ebp - 0x30], xmm0
movups xmmword [ebp - 0x20], xmm0
push 0
push dword [ebp - 0x1060]
push edx
push eax
call fcn.0042daa0
push dword [ebp - 0x1068]
push dword [ebp - 0x106c]
push edx
push eax
call fcn.0042daa0
cmp edx, 0xf9
jl 0x41dd0e
jg 0x41dcd7
cmp eax, 0xc0000000
jbe 0x41dd0e
mov ecx, eax
call fcn.0042e300
cvtsd2ss xmm0, xmm0
sub esp, 8
lea eax, [ebp - 0x30]
mulss xmm0, dword [0x456c30]
cvtss2sd xmm0, xmm0
movsd qword [esp], xmm0
push str._.2fTB
push 0xffffffffffffffff
push eax
call fcn.0040d490
add esp, 0x14
jmp 0x41dda8
test edx, edx
jl 0x41dd90
jg 0x41dd1b
cmp eax, 0x3e700000
jbe 0x41dd4f
mov ecx, eax
call fcn.0042e300
cvtsd2ss xmm0, xmm0
sub esp, 8
lea eax, [ebp - 0x30]
mulss xmm0, dword [0x456c34]
cvtss2sd xmm0, xmm0
movsd qword [esp], xmm0
push str._.2fGB
push 0xffffffffffffffff
push eax
call fcn.0040d490
add esp, 0x14
jmp 0x41dda8
test edx, edx
jl 0x41dd90
jg 0x41dd5c
cmp eax, 0x400
jb 0x41dd90
mov ecx, eax
call fcn.0042e300
cvtsd2ss xmm0, xmm0
sub esp, 8
lea eax, [ebp - 0x30]
mulss xmm0, dword [0x456c3c]
cvtss2sd xmm0, xmm0
movsd qword [esp], xmm0
push str._.2fMB
push 0xffffffffffffffff
push eax
call fcn.0040d490
add esp, 0x14
jmp 0x41dda8
push str.0.0MB
push 0x4471d0
lea eax, [ebp - 0x30]
push 0xffffffffffffffff
push eax
call fcn.0040d490
add esp, 0x10
lea ecx, [ebp - 0x1130]
call fcn.00409580
push dword [esi*4 + 0x462634]
push eax
push str._s__s
lea eax, [ebp - 0x130]
push 0xffffffffffffffff
push eax
call fcn.00401430
mov eax, dword [ebp - 0x1250]
lea edi, [ebp - 0x1038]
add esp, 0x14
lea eax, [eax + eax*2]
lea edi, [edi + eax*8]
mov ecx, edi
call fcn.00409580
lea ecx, [ebp - 0x1160]
mov esi, eax
call fcn.00409580
push esi
lea ecx, [ebp - 0x30]
push ecx
mov ecx, dword [ebp - 0x1248]
push dword [ecx]
push eax
push str.____s__s__s____s__
lea eax, [ebp - 0x230]
push 0xffffffffffffffff
push eax
call fcn.00401430
mov esi, dword [ebp - 0x1244]
add esp, 0x1c
push dword [ebp - 0x1240]
push esi
call dword [sym.imp.USER32.dll_GetDlgItem]
test eax, eax
jne 0x41de8d
mov eax, dword [ebp - 0x125c]
mov ecx, dword [0x46c0d4]
movsx esi, ax
add ecx, 3
mov eax, dword [ebp - 0x1240]
dec eax
push eax
lea eax, [esi + 1]
imul ecx, eax
mov eax, dword [ebp - 0x1244]
push ecx
push 0x466
push eax
call dword [sym.imp.USER32.dll_SendMessageW]
mov ecx, dword [0x46c0d4]
lea eax, [esi + 2]
push dword [ebp - 0x1240]
mov esi, dword [ebp - 0x1244]
add ecx, 3
imul ecx, eax
push ecx
push 0x466
push esi
call dword [sym.imp.USER32.dll_SendMessageW]
lea eax, [ebp - 0x130]
push eax
mov eax, dword [ebp - 0x1240]
dec eax
push eax
push esi
call dword [sym.imp.USER32.dll_SetDlgItemTextW]
lea eax, [ebp - 0x230]
push eax
push dword [ebp - 0x1240]
push esi
call dword [sym.imp.USER32.dll_SetDlgItemTextW]
push dword [ebp - 0x124c]
add dword [ebp - 0x125c], 2
lea eax, [ebp - 0x130]
add dword [ebp - 0x1240], 2
add dword [ebp - 0x1258], 2
push 0x454a60
push 0xffffffffffffffff
push eax
call fcn.00401430
add esp, 0x10
lea ecx, [ebp - 0x1048]
push 0x469acc
push dword [ebp - 0x1254]
call fcn.0040df90
push eax
lea eax, [ebp - 0x12a8]
push eax
call fcn.00404aa0
lea ecx, [ebp - 0x130]
mov byte [ebp - 4], 0x16
push ecx
push eax
lea eax, [ebp - 0x12f0]
push eax
call fcn.00404a70
push 0x469acc
push eax
lea eax, [ebp - 0x12d8]
mov byte [ebp - 4], 0x17
push eax
call fcn.00404a40
lea ecx, [ebp - 0x230]
mov byte [ebp - 4], 0x18
push ecx
push eax
lea eax, [ebp - 0x12c0]
push eax
call fcn.00404a70
push 0x469acc
push eax
lea eax, [ebp - 0x1278]
mov byte [ebp - 4], 0x19
push eax
call fcn.00404a40
lea ecx, [ebp - 0x10c4]
mov byte [ebp - 4], 0x1a
push ecx
push eax
lea eax, [ebp - 0x1290]
push eax
call fcn.00404a40
add esp, 0x48
push 0x469a14
push eax
lea eax, [ebp - 0x10f4]
mov byte [ebp - 4], 0x1b
push eax
call fcn.00404a40
add esp, 0xc
mov byte [ebp - 4], 0x1c
lea ecx, [ebp - 0x1190]
push eax
call fcn.004051f0
lea ecx, [ebp - 0x10f4]
call fcn.004050d0
lea ecx, [ebp - 0x1290]
call fcn.004050d0
lea ecx, [ebp - 0x1278]
call fcn.004050d0
lea ecx, [ebp - 0x12c0]
call fcn.004050d0
lea ecx, [ebp - 0x12d8]
call fcn.004050d0
lea ecx, [ebp - 0x12f0]
call fcn.004050d0
lea ecx, [ebp - 0x12a8]
call fcn.004050d0
lea ecx, [ebp - 0x12a8]
call fcn.004050b0
push edi
mov ecx, eax
call fcn.0042bee0
lea ecx, [ebp - 0x12a8]
call fcn.004050d0
lea ecx, [ebp - 0x1160]
call fcn.004050d0
lea ecx, [ebp - 0x10c4]
call fcn.004050d0
lea ecx, [ebp - 0x1130]
call fcn.004050d0
lea ecx, [ebp - 0x1094]
call fcn.00408900
lea ecx, [ebp - 0x10ac]
mov byte [ebp - 4], 0xa
call fcn.004050d0
mov edi, dword [ebp - 0x1254]
lea ecx, [ebp - 0x1048]
inc edi
mov dword [ebp - 0x1254], edi
call fcn.0040c280
cmp edi, eax
jb 0x41d790
jmp 0x41e082
lea ecx, [ebp - 0x10ac]
mov byte [ebp - 4], 0xa
call fcn.004050d0
mov edi, dword [ebp - 0x1258]
lea ecx, [ebp - 0x107c]
mov word [0x46c23a], di
call fcn.0040d9a0
lea ecx, [ebp - 0x1048]
push ecx
mov ecx, eax
call fcn.0042bf00
lea ecx, [ebp - 0x107c]
call fcn.0040de10
mov ecx, 0x46b7f4
call fcn.0042b3d0
lea eax, [ebp - 0x1190]
mov ecx, 0x46b7f4
push eax
call fcn.0040df10
cmp dword [0x461144], 1
mov dword [0x46c120], 0
jne 0x41e0ea
cmp dword [0x461148], 1
je 0x41e13a
movsx eax, word [0x46c236]
movsx edx, word [0x46c23a]
mov ecx, dword [0x46c0d4]
add edx, eax
add ecx, 3
mov dword [0x46c19c], edx
push 0
lea eax, [edx + 1]
imul ecx, eax
push ecx
mov ecx, dword [0x46c0d0]
shl ecx, 4
sub ecx, dword [0x46c0d0]
shl ecx, 3
push ecx
push dword [0x46c118]
push dword [0x46c114]
push 1
push esi
call dword [sym.imp.USER32.dll_SetWindowPos]
test di, di
jne 0x41e15e
push 0x1fa4
push 0
push 0x465
push esi
call dword [sym.imp.USER32.dll_SendMessageW]
mov dword [0x46c1fc], 0
jmp 0x41e168
mov dword [0x46c218], 1
lea ecx, [ebp - 0x1048]
call fcn.0040de10
lea ecx, [ebp - 0x1190]
call fcn.004050d0
lea ecx, [ebp - 0x11a8]
call fcn.00408900
lea ecx, [ebp - 0x1148]
call fcn.004050d0
xor eax, eax
cmp dword [ebp - 0x1260], eax
setne al
mov dword [ebp - 0x1250], eax
mov esi, eax
push fcn.004050d0
push 0x80
push 0x18
lea eax, [ebp - 0x1038]
mov byte [ebp - 4], 1
push eax
call fcn.0042db81
lea ecx, [ebp - 0x1178]
call fcn.004050d0
lea ecx, [ebp - 0x10dc]
call fcn.004050d0
mov eax, esi
jmp 0x41e1df
xor eax, eax
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.0042d960
mov esp, ebp
pop ebp
ret