Function at 0x44c130
Capabilities:
Get common file path
Get disk size
Get hostname

Disassembly:
push ebx
mov ebx, esp
sub esp, 8
and esp, 0xfffffff8
add esp, 4
push ebp
mov ebp, dword [ebx + 4]
mov dword [esp + 4], ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x5d4e1e
mov eax, dword fs:[0]
push eax
push ebx
sub esp, 0x758
mov eax, dword [0x64c00c]
xor eax, ebp
mov dword [ebp - 0x14], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov eax, ecx
mov dword [ebp - 0x748], eax
mov dword [ebp - 0x750], eax
mov dword [ebp - 4], 0
mov dword [ebp - 0x764], eax
mov dword [ebp - 0x758], 0
call fcn.00405800
mov ecx, eax
test ecx, ecx
je 0x44c6d8
mov eax, dword [ecx]
mov eax, dword [eax + 0xc]
call eax
add eax, 0x10
mov dword [ebp - 0x744], eax
push 0
mov dword [ebp - 4], 1
call fcn.005ad932
add esp, 4
push eax
call fcn.005b75c9
add esp, 4
call fcn.005b75a8
push eax
lea eax, [ebp - 0x744]
push str._05ld
push eax
call fcn.00439ef0
add esp, 0xc
lea eax, [ebp - 0x548]
push eax
call dword [sym.imp.ole32.dll_CoCreateGuid]
push 0x104
lea eax, [ebp - 0x330]
push 0
push eax
call fcn.005a52f0
add esp, 0xc
lea edx, [ebp - 0x548]
mov ecx, 0x5d89d8
mov esi, 0xc
nop dword [eax]
mov eax, dword [ecx]
cmp eax, dword [edx]
jne 0x44c233
add ecx, 4
add edx, 4
sub esi, 4
jae 0x44c220
jmp 0x44c29d
movzx eax, byte [ebp - 0x539]
push eax
movzx eax, byte [ebp - 0x53a]
push eax
movzx eax, byte [ebp - 0x53b]
push eax
movzx eax, byte [ebp - 0x53c]
push eax
movzx eax, byte [ebp - 0x53d]
push eax
movzx eax, byte [ebp - 0x53e]
push eax
movzx eax, byte [ebp - 0x53f]
push eax
movzx eax, byte [ebp - 0x540]
push eax
movzx eax, word [ebp - 0x542]
push eax
movzx eax, word [ebp - 0x544]
push eax
push dword [ebp - 0x548]
lea eax, [ebp - 0x330]
push str._08lX_04X_04x_02X_02X_02X_02X_02X_02X_02X_02X
push eax
call fcn.0040fdd0
add esp, 0x34
lea eax, [ebp - 0x73c]
mov dword [ebp - 0x740], eax
lea ecx, [ebp - 0x740]
push 3
lea eax, [ebp - 0x330]
push eax
call fcn.0040ed10
mov byte [ebp - 4], 2
mov edx, dword [ebp - 0x740]
test edx, edx
jne 0x44c2cf
xor ecx, ecx
jmp 0x44c2e3
mov ecx, edx
lea esi, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x44c2d4
sub ecx, esi
sar ecx, 1
push ecx
push edx
lea ecx, [ebp - 0x744]
call fcn.004089b0
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x73c]
mov eax, dword [ebp - 0x740]
cmp eax, ecx
je 0x44c30d
push eax
call fcn.005a8164
add esp, 4
lea eax, [ebp - 0x558]
push eax
call dword [sym.imp.KERNEL32.dll_GetLocalTime]
call fcn.00405800
mov ecx, eax
test ecx, ecx
je 0x44c6e2
mov eax, dword [ecx]
mov eax, dword [eax + 0xc]
call eax
add eax, 0x10
mov dword [ebp - 0x74c], eax
mov byte [ebp - 4], 3
movzx eax, word [ebp - 0x556]
push eax
movzx eax, word [ebp - 0x54c]
push eax
movzx eax, word [ebp - 0x550]
push eax
movzx eax, word [ebp - 0x558]
push eax
movzx eax, word [ebp - 0x552]
push eax
movzx eax, word [ebp - 0x54e]
push eax
movzx eax, word [ebp - 0x54a]
push eax
lea eax, [ebp - 0x74c]
push str._03d_02d_02d_04d_02d_02d_02d
push eax
call fcn.00408c40
mov edi, dword [ebp - 0x74c]
lea ecx, [ebp - 0x744]
add esp, 0x24
push dword [edi - 0xc]
push edi
call fcn.004089b0
push 0x104
lea eax, [ebp - 0x120]
push 0
push eax
call fcn.005a52f0
add esp, 0xc
mov dword [ebp - 0x754], 0x104
lea eax, [ebp - 0x754]
push eax
lea eax, [ebp - 0x120]
push eax
call dword [sym.imp.KERNEL32.dll_GetComputerNameA]
movaps xmm0, xmmword [0x63c740]
movups xmmword [ebp - 0x624], xmm0
mov dword [ebp - method.Md5.virtual_0], vtable.Md5.0
xorps xmm0, xmm0
mov dword [ebp - 0x614], 0x98badcfe
mov dword [ebp - 0x610], 0x10325476
movups xmmword [ebp - 0x638], xmm0
lea ecx, [ebp - 0x120]
mov byte [ebp - 4], 4
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x44c415
sub ecx, edx
lea eax, [ebp - 0x120]
push ecx
push eax
lea ecx, [ebp - 0x628]
call fcn.00405510
lea ecx, [ebp - 0x638]
call fcn.00410870
call fcn.00405800
mov ecx, eax
test ecx, ecx
je 0x44c6ec
mov eax, dword [ecx]
mov eax, dword [eax + 0xc]
call eax
mov edi, dword [ebp - 0x748]
add eax, 0x10
mov dword [edi], eax
mov dword [ebp - 0x758], 1
xor esi, esi
nop dword [eax]
movzx eax, byte [ebp + esi - 0x638]
push eax
push str._02x
push edi
call fcn.00439ef0
inc esi
add esp, 0xc
cmp esi, 0x10
jl 0x44c470
mov eax, dword [edi]
lea ecx, [ebp - 0x744]
push dword [eax - 0xc]
push eax
call fcn.004089b0
push 0x208
lea eax, [ebp - 0x538]
push 0
push eax
call fcn.005a52f0
add esp, 0xc
lea eax, [ebp - 0x538]
push 0x104
push eax
call dword [sym.imp.KERNEL32.dll_GetSystemDirectoryW]
lea eax, [ebp - 0x760]
xorps xmm0, xmm0
push eax
push 0
push 0
lea eax, [ebp - 0x538]
movq qword [ebp - 0x760], xmm0
push eax
call dword [sym.imp.KERNEL32.dll_GetDiskFreeSpaceExW]
push dword [ebp - 0x760]
lea eax, [ebp - 0x744]
push str._010lu
push eax
call fcn.00439ef0
add esp, 0xc
lea eax, [ebp - 0x228]
push 0x104
push 0
push eax
call fcn.005a52f0
mov esi, dword [ebp - 0x744]
lea eax, [ebp - 0x6bc]
add esp, 0xc
mov dword [ebp - 0x6c0], eax
lea ecx, [ebp - 0x6c0]
push 3
push esi
call fcn.00409120
push dword [ebp - 0x6c0]
lea eax, [ebp - 0x228]
push 0x104
push eax
call fcn.005b7f0e
mov eax, dword [ebp - 0x6c0]
lea ecx, [ebp - 0x6bc]
add esp, 0xc
cmp eax, ecx
je 0x44c56c
push eax
call fcn.005a8164
add esp, 4
movaps xmm0, xmmword [0x63c740]
movups xmmword [ebp - 0x5b4], xmm0
mov dword [ebp - method.Md5.virtual_0], vtable.Md5.0
xorps xmm0, xmm0
mov dword [ebp - 0x5a4], 0x98badcfe
mov dword [ebp - 0x5a0], 0x10325476
movups xmmword [ebp - 0x5c8], xmm0
lea ecx, [ebp - 0x228]
mov byte [ebp - 4], 5
lea edx, [ecx + 1]
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x44c5b0
sub ecx, edx
lea eax, [ebp - 0x228]
push ecx
push eax
lea ecx, [ebp - 0x5b8]
call fcn.00405510
lea ecx, [ebp - 0x5c8]
call fcn.00410870
mov eax, dword [ebp - 0x748]
mov ecx, dword [eax]
cmp dword [ecx - 0xc], 0
lea edx, [ecx - 0x10]
mov esi, dword [edx]
je 0x44c635
cmp dword [edx + 0xc], 0
jge 0x44c60a
cmp dword [ecx - 8], 0
jl 0x44c6f6
mov dword [ecx - 0xc], 0
xor ecx, ecx
mov eax, dword [eax]
mov word [eax], cx
jmp 0x44c635
or eax, 0xffffffff
lea ecx, [edx + 0xc]
lock xadd dword [ecx], eax
dec eax
test eax, eax
jg 0x44c621
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov ecx, esi
mov eax, dword [ecx]
mov eax, dword [eax + 0xc]
call eax
mov ecx, dword [ebp - 0x748]
add eax, 0x10
mov dword [ecx], eax
mov edi, dword [ebp - 0x748]
xor esi, esi
nop dword [eax]
movzx eax, byte [ebp + esi - 0x5c8]
push eax
push str._02x
push edi
call fcn.00439ef0
inc esi
add esp, 0xc
cmp esi, 0x10
jl 0x44c640
mov byte [ebp - 4], 1
or edi, 0xffffffff
mov edx, dword [ebp - 0x74c]
mov eax, edi
mov dword [ebp - method.Md5.virtual_0], vtable.Md5.0
add edx, 0xfffffff0
mov dword [ebp - method.Md5.virtual_0], vtable.Md5.0
lock xadd dword [edx + 0xc], eax
dec eax
mov esi, dword [ebp - 0x744]
test eax, eax
jg 0x44c69b
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov byte [ebp - 4], 0
add esi, 0xfffffff0
lock xadd dword [esi + 0xc], edi
dec edi
test edi, edi
jg 0x44c6b4
mov ecx, dword [esi]
push esi
mov edx, dword [ecx]
call dword [edx + 4]
mov eax, dword [ebp - 0x748]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov ecx, dword [ebp - 0x14]
xor ecx, ebp
call fcn.00483ab6
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
push 0x80004005
call fcn.00405600
push 0x80004005
call fcn.00405600
push 0x80004005
call fcn.00405600
push 0x80070057
call fcn.00405600
int3