Function at 0x4790ef
Capabilities:
Get disk information

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x918
mov dword [ebp - 0x918], 0xffffffff
mov dword [ebp - 0x85c], 0
mov dword [ebp - 4], 0
push 0x1e
push 0
lea eax, [ebp - 0x914]
push eax
call fcn.0054bf90
add esp, 0xc
movsx ecx, byte [ebp + 8]
push ecx
push 0x5b1c84
lea edx, [ebp - 0x914]
push edx
call fcn.0054c6e3
add esp, 0xc
push 0
push 0x20000000
push 3
push 0
push 3
push 0xc0000000
lea eax, [ebp - 0x914]
push eax
call dword [sym.imp.KERNEL32.dll_CreateFileA]
mov dword [ebp - 0x918], eax
cmp dword [ebp - 0x918], 0xffffffff
jne 0x479174
xor eax, eax
jmp 0x479450
mov dword [0x673b90], 0
lea ecx, [ebp - 0x8e0]
push ecx
mov edx, dword [ebp - 0x918]
push edx
push 0
push 0
push 0
push 0
push 0
push 0
call fcn.004c0289
add esp, 0x20
push 0x10
push 0
lea eax, [ebp - 0x8f4]
push eax
call fcn.0054bf90
add esp, 0xc
push 0x800
push 0
lea ecx, [ebp - 0x804]
push ecx
call fcn.0054bf90
add esp, 0xc
push 0x200
lea edx, [ebp - 0x804]
push edx
mov eax, dword [ebp - 0x918]
push eax
push 0
push 0
push 0
call fcn.0051b8e5
add esp, 0x18
mov dword [ebp - 0x85c], eax
mov ecx, dword [ebp - 0x918]
push ecx
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [ebp - 0x918], 0xffffffff
mov dword [0x673b90], 2
cmp dword [ebp - 0x85c], 0
je 0x47924a
push 0x5b1c8c
push 0x67a524
call fcn.0054cf00
add esp, 8
test eax, eax
jne 0x4792c7
push str.3000
push 0x67a424
call fcn.0054cf00
add esp, 8
test eax, eax
jne 0x4792c7
push str.090C
push 0x67a524
call fcn.0054c6e3
add esp, 8
push str.1000
push 0x67a424
call fcn.0054c6e3
add esp, 8
push 0x5b1cac
push 0x67a124
call fcn.0054c6e3
add esp, 8
push str.Recover_USB_Flash_Drive
push 0x67a324
call fcn.0054c6e3
add esp, 8
push 0x5b1ccc
push 0x678928
call fcn.0054c6e3
add esp, 8
push str.USB_Flash_Drive
push 0x67a224
call fcn.0054c6e3
add esp, 8
mov dword [0x673b90], 3
xor eax, eax
jmp 0x479450
mov dword [0x673b90], 2
push 0
push 0
push 0x67a224
push 0x678928
push 0x67a324
push 0x67a124
push 0x678f58
lea edx, [ebp - 0x808]
push edx
lea eax, [ebp - 0x8e4]
push eax
lea ecx, [ebp - 0x804]
push ecx
mov edx, dword [0x673ea0]
push edx
call fcn.0051ca56
add esp, 0x2c
mov eax, dword [ebp - 0x8e4]
and eax, 0xffff
push eax
push 0x5b1ce4
push 0x67a524
call fcn.0054c6e3
add esp, 0xc
mov ecx, dword [ebp - 0x808]
and ecx, 0xffff
push ecx
push str._.4X
push 0x67a424
call fcn.0054c6e3
add esp, 0xc
mov edx, dword [ebp - 0x7f8]
and edx, 0xff
push edx
mov eax, dword [ebp - 0x7f7]
and eax, 0xff
push eax
push 0x5b1cf4
push 0x678918
call fcn.0054c6e3
add esp, 0x10
push 0x678f58
push 0x678884
call fcn.0054be90
add esp, 8
push 0x678f58
call fcn.0054ce70
add esp, 4
mov dword [0x673ba8], eax
push 0xff
push 0
push 0x678e58
call fcn.0054bf90
add esp, 0xc
mov ecx, dword [0x673ba8]
push ecx
push 0x47
push 0x678e58
call fcn.0054bf90
add esp, 0xc
movsx edx, byte [ebp + 8]
push edx
push 0x5b1d00
lea eax, [ebp - 0x914]
push eax
call fcn.0054c6e3
add esp, 0xc
push 0x80
push 0
lea ecx, [ebp - 0x8e0]
push ecx
call fcn.0054bf90
add esp, 0xc
push 0x50
push 0
lea edx, [ebp - 0x858]
push edx
call fcn.0054bf90
add esp, 0xc
push 0x50
lea eax, [ebp - 0x858]
push eax
push 0
push 0
lea ecx, [ebp - 0x860]
push ecx
push 0x80
lea edx, [ebp - 0x8e0]
push edx
lea eax, [ebp - 0x914]
push eax
call dword [sym.imp.KERNEL32.dll_GetVolumeInformationA]
lea ecx, [ebp - 0x8e0]
push ecx
push 0x6788e4
call fcn.0054be90
add esp, 8
mov eax, 1
mov esp, ebp
pop ebp
ret