Function at 0x429c59
Capabilities:
Get common file path
Get disk information

Disassembly:
push ebp
mov ebp, esp
mov eax, 0x17c4
call fcn.00612c90
mov eax, dword [0x6ffe74]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
push esi
push edi
xor eax, eax
mov esi, 0x3e7
push esi
push eax
mov dword [ebp - 0x17bc], eax
mov ebx, ecx
mov byte [ebp - 0xfa8], al
lea eax, [ebp - 0xfa7]
push eax
mov dword [ebp - 0x17c0], ebx
call fcn.006390b0
push esi
lea eax, [ebp - 0x138f]
mov byte [ebp - 0x1390], 0
push 0
push eax
call fcn.006390b0
push esi
lea eax, [ebp - 0x1777]
mov byte [ebp - 0x1778], 0
push 0
push eax
call fcn.006390b0
add esp, 0x20
lea eax, [ebp - 0x7d8]
push eax
push str.InstanceA
call fcn.00429bed
add esp, 0xc
test eax, eax
js 0x429f45
mov esi, dword [ebp - 0x7d8]
lea eax, [ebp - 0x7d8]
push ecx
push eax
push str.InstanceB
call fcn.00429bed
add esp, 0xc
test eax, eax
js 0x429f45
push dword [ebp - 0x7d8]
lea eax, [ebp - 0xfa8]
push esi
push str._08X_08X
mov esi, 0x3e8
push esi
push eax
call fcn.00402e0a
add esp, 0x14
lea eax, [ebp - 0xfa8]
mov edi, 0x73de18
push eax
push str.INSTALL_s_
push esi
push edi
call fcn.00643470
pop ecx
add eax, edi
push eax
call fcn.00402e0a
push 0x40
lea eax, [ebp - 0x17b8]
push 0
push eax
call fcn.006390b0
mov edi, dword [sym.imp.NETAPI32.dll_Netbios]
lea eax, [ebp - 0xbc0]
add esp, 0x1c
mov dword [ebp - 0x17b4], eax
lea eax, [ebp - 0x17b8]
mov byte [ebp - 0x17b8], 0x37
mov word [ebp - 0x17b0], si
push eax
call edi
test al, al
jne 0x429f3f
xor esi, esi
cmp byte [ebp - 0xbc0], al
jbe 0x429eba
mov ebx, 0x3e8
push 0x40
lea eax, [ebp - 0x17b8]
push 0
push eax
call fcn.006390b0
mov al, byte [ebp + esi - 0xbbf]
add esp, 0xc
mov byte [ebp - 0x1788], al
lea eax, [ebp - 0x17b8]
mov byte [ebp - 0x17b8], 0x32
push eax
call edi
test al, al
jne 0x429ea4
push 0x40
lea eax, [ebp - 0x17b8]
push 0
push eax
call fcn.006390b0
push 0x10
lea eax, [ebp - 0x17ae]
push 0x20
push eax
call fcn.006390b0
mov al, byte [ebp + esi - 0xbbf]
add esp, 0x18
mov byte [ebp - 0x1788], al
lea eax, [ebp - 0x3f0]
mov dword [ebp - 0x17b4], eax
lea eax, [ebp - 0x17b8]
mov byte [ebp - 0x17b8], 0x33
push eax
mov byte [ebp - 0x17ae], 0x2a
mov word [ebp - 0x17b0], bx
call edi
test al, al
jne 0x429ea4
movzx eax, byte [ebp - 0x3eb]
push eax
movzx eax, byte [ebp - 0x3ec]
push eax
movzx eax, byte [ebp - 0x3ed]
push eax
movzx eax, byte [ebp - 0x3ee]
push eax
movzx eax, byte [ebp - 0x3ef]
push eax
movzx eax, byte [ebp - 0x3f0]
push eax
push str._02X_02X_02X_02X_02X_02X
lea eax, [ebp - 0x1390]
push ebx
push eax
call fcn.00402e0a
add esp, 0x24
lea eax, [ebp - 0x1390]
push eax
push str.MAC_s_
push ebx
push 0x73de18
call fcn.00643470
pop ecx
add eax, 0x73de18
push eax
call fcn.00402e0a
add esp, 0x10
movzx eax, byte [ebp - 0xbc0]
inc esi
cmp esi, eax
jl 0x429da3
mov ebx, dword [ebp - 0x17c0]
mov esi, 0x3e8
lea eax, [ebp - 0x7d8]
push esi
push eax
call dword [sym.imp.KERNEL32.dll_GetSystemDirectoryA]
xor ecx, ecx
lea eax, [ebp - 0x17bc]
push ecx
push ecx
push ecx
push ecx
push eax
push ecx
push ecx
lea eax, [ebp - 0x7d8]
mov byte [ebp - 0x7d5], cl
push eax
call dword [sym.imp.KERNEL32.dll_GetVolumeInformationA]
test eax, eax
je 0x429f3f
push dword [ebp - 0x17bc]
lea eax, [ebp - 0x1778]
push str._08X
push esi
push eax
call fcn.00402e0a
add esp, 0x10
lea eax, [ebp - 0x1778]
mov edi, 0x73de18
push eax
push str.SYSVOL_s_
push esi
push edi
call fcn.00643470
pop ecx
add eax, edi
push eax
call fcn.00402e0a
push edi
push esi
push ebx
call fcn.006494f3
xor eax, eax
add esp, 0x1c
inc eax
jmp 0x429f47
call dword [sym.imp.KERNEL32.dll_GetLastError]
xor eax, eax
mov ecx, dword [ebp - 4]
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.006122f0
leave
ret