Function at 0x10174930
Capabilities:
Get disk size
Get memory capacity
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff0
sub esp, 0x210
push 0
call fcn.10168810
add esp, 4
test eax, eax
je 0x10175061
movdqu xmm1, xmmword [eax]
mov edi, dword [0x103564a0]
mov esi, dword [0x1035648c]
movd edx, xmm1
pshufd xmm0, xmm1, 0x55
movdqa xmmword [esp + 0x1f0], xmm1
add edx, 1
movd ecx, xmm0
adc ecx, 0
mov dword [eax], edx
mov dword [eax + 4], ecx
movzx eax, byte [edi]
mov eax, dword [esi]
test eax, eax
jne 0x1017499a
call sub.KERNEL32.dll_GetProcessHeap
test eax, eax
je 0x10175031
mov dword [esi], eax
push 0x3a420
push 0
push eax
call sub.KERNEL32.dll_HeapAlloc
test eax, eax
je 0x10175031
mov ebx, eax
and ebx, 0xfffffff0
mov dword [ebx + 0xc], eax
add ebx, 0x3a010
push 0x410
push 0xff
push ebx
call sub.msvcrt.dll_memset
add esp, 0xc
movdqa xmm0, xmmword [esp + 0x1f0]
mov dword [esp + 0x70], ebx
mov dword [esp + 0x74], 0x3ff
mov dword [esp + 0x78], 0x380
mov dword [esp + 0x7c], 0
movdqu xmmword [esp + 0x80], xmm0
movzx eax, byte [edi]
mov eax, dword [esi]
test eax, eax
jne 0x10174a16
call sub.KERNEL32.dll_GetProcessHeap
test eax, eax
je 0x10175042
mov dword [esi], eax
push 9
push 0
push eax
call sub.KERNEL32.dll_HeapAlloc
test eax, eax
je 0x10175042
mov byte [eax + 8], 0x55
mov dword [eax + 4], 0x5043206c
mov dword [eax], 0x61746f54
mov dword [esp + 8], 4
mov dword [esp + 0xc], 0
mov dword [esp + 0x24], 0
mov dword [esp + 0x20], 0
mov dword [esp + 0x28], eax
mov dword [esp + 0x2c], 9
mov dword [esp + 0x30], 9
mov dword [esp + 0x34], 1
mov dword [esp + 0x38], 0
mov dword [esp + 0x3c], 0
mov dword [esp + 0x40], 1
mov dword [esp + 0x48], 0
mov dword [esp + 0x44], 0
mov dword [esp + 0x50], 0
mov dword [esp + 0x4c], 0
mov dword [esp + 0x60], 8
mov dword [esp + 0x64], 0
mov dword [esp + 0x68], 0
mov byte [esp + 0x6c], 0
mov dword [esp + 0x10], 0
movzx eax, byte [edi]
mov eax, dword [esi]
test eax, eax
jne 0x10174aea
call sub.KERNEL32.dll_GetProcessHeap
test eax, eax
je 0x10175050
mov dword [esi], eax
push 0xa0
push 0
push eax
call sub.KERNEL32.dll_HeapAlloc
test eax, eax
je 0x10175050
mov dword [esp + 0x14], eax
mov dword [esp + 0x18], 2
mov dword [esp + 0x1c], 0
mov dword [esp + 0xb0], 0
push 0
call fcn.10168810
add esp, 4
test eax, eax
lea esi, [esp + 0xe8]
je 0x10175084
mov dword [esp + 0x90], 0x1034d630
mov dword [esp + 0x94], 0
mov dword [esp + 0x98], 0
mov dword [esp + 0x9c], 0
movdqu xmm0, xmmword [eax]
movd edx, xmm0
pshufd xmm1, xmm0, 0x55
add edx, 1
movd ecx, xmm1
adc ecx, 0
mov dword [eax], edx
mov dword [eax + 4], ecx
mov dword [esp + 0xe8], 0
movdqu xmmword [esp + 0xa0], xmm0
mov dword [esp + 0xec], 0
mov eax, dword [0x101d408c]
push esi
call eax
mov eax, dword [esp + 0xe8]
mov ecx, dword [esp + 0xec]
mov edx, 0xd53e7fff
mov esi, 0x19db1de
sub edx, eax
sbb esi, ecx
setl bl
add edx, 1
adc esi, 0
add eax, 0x2ac18000
adc ecx, 0xfe624e21
test bl, bl
cmove eax, edx
test bl, bl
cmove ecx, esi
push 0
push 0x989680
push ecx
push eax
call fcn.101b9908
add esp, 0x10
mov esi, eax
mov edi, edx
xor eax, eax
test bl, bl
mov edx, 0
je 0x10174c26
call sub.KERNEL32.dll_GetTickCount64
push 0
push 0x3e8
push edx
push eax
call fcn.101b9908
add esp, 0x10
xor ecx, ecx
sub esi, eax
sbb edi, edx
cmovb edi, ecx
cmovb esi, ecx
mov eax, esi
mov edx, edi
movsd xmm0, qword [esp + 0x88]
movsd xmm1, qword [esp + 0x78]
lea edi, [esp + 0x178]
lea esi, [esp + 0x20]
mov ecx, 0x14
movsd qword [esp + 0x100], xmm0
movsd xmm0, qword [esp + 0x80]
movsd qword [esp + 0xf0], xmm1
movsd qword [esp + 0xf8], xmm0
movsd xmm0, qword [esp + 0x70]
movsd qword [esp + 0xe8], xmm0
mov dword [esp + 0x12c], 0
mov dword [esp + 0x128], 0
mov dword [esp + 0x134], 0
mov dword [esp + 0x130], 0
mov dword [esp + 0x13c], 0
mov dword [esp + 0x138], 0
mov dword [esp + 0x144], 0
mov dword [esp + 0x140], 0
rep movsd dword es:[edi], dword [esi]
lea esi, [esp + 0xe8]
mov ecx, dword [esp + 0x10]
movq xmm0, qword [esp + 8]
movsd xmm1, qword [esp + 0x14]
movsd xmm2, qword [esp + 0xb0]
mov dword [esp + 0x1d0], ecx
movq qword [esp + 0x1c8], xmm0
mov ecx, dword [esp + 0x1c]
movsd qword [esp + 0x1d4], xmm1
movsd xmm1, qword [esp + 0xb8]
mov dword [esp + 0x1dc], ecx
movsd qword [esp + 0x150], xmm1
movsd xmm1, qword [esp + 0xc0]
movsd qword [esp + 0x148], xmm2
movsd xmm2, qword [esp + 0xc8]
mov ecx, dword [ebp + 0xc]
movsd qword [esp + 0x158], xmm1
movsd xmm1, qword [esp + 0xd0]
movsd qword [esp + 0x160], xmm2
movsd xmm2, qword [esp + 0xa8]
cmp byte [ecx + 4], 0
movsd qword [esp + 0x168], xmm1
movsd xmm1, qword [esp + 0xa0]
movsd qword [esp + 0x120], xmm2
movsd xmm2, qword [esp + 0x90]
movsd qword [esp + 0x118], xmm1
movq xmm1, qword [esp + 0x98]
movsd qword [esp + 0x108], xmm2
movq qword [esp + 0x110], xmm1
mov dword [esp + 0x170], eax
mov dword [esp + 0x174], edx
mov dword [esp + 0x1e0], 4
mov dword [esp + 0x1e4], 0
mov dword [esp + 0x1e8], 0
je 0x10174eda
pxor xmm0, xmm0
movdqa xmmword [esp + 0x20], xmm0
movdqa xmmword [esp + 0x50], xmm0
movdqa xmmword [esp + 0x40], xmm0
movdqa xmmword [esp + 0x30], xmm0
mov dword [esp + 0x20], 0x40
lea eax, [esp + 0x20]
push eax
call sub.KERNEL32.dll_GlobalMemoryStatusEx
movdqu xmm0, xmmword [esp + 0x28]
mov dword [esp + 0xe4], 0
mov dword [esp + 0xe0], 0
movdqu xmmword [esp + 0x128], xmm0
pxor xmm0, xmm0
movdqa xmmword [esp + 0xd0], xmm0
movdqa xmmword [esp + 0xc0], xmm0
movdqa xmmword [esp + 0xb0], xmm0
lea eax, [esp + 0xb0]
push 0x38
push eax
call sub.psapi.dll_GetPerformanceInfo
cmp eax, 1
jne 0x10174eda
mov esi, dword [esp + 0xb8]
mov eax, dword [esp + 0xc0]
mov ecx, dword [esp + 0xd8]
mov ebx, dword [esp + 0xb4]
xor edi, edi
sub esi, eax
cmovb esi, edi
sub ebx, eax
mov eax, ecx
cmovb ebx, edi
mul esi
mov esi, 0xffffffff
mov edx, 0
cmovo eax, esi
cmovo edx, edx
mov dword [esp + 0x138], eax
mov eax, ecx
mov dword [esp + 0x13c], edx
mul ebx
cmovo eax, esi
cmovo edi, edi
lea esi, [esp + 0xe8]
mov dword [esp + 0x144], edi
mov dword [esp + 0x140], eax
mov eax, dword [ebp + 0xc]
cmp byte [eax + 0xb], 2
je 0x10174ef6
movzx eax, byte [eax + 0xc]
and eax, 1
push eax
push 0
push esi
call fcn.10175110
add esp, 0xc
mov eax, dword [ebp + 0xc]
cmp byte [eax + 6], 0
je 0x10174f23
push esi
call fcn.101755d0
add esp, 4
mov ecx, dword [ebp + 0xc]
lea eax, [esp + 0x108]
cmp byte [ecx + 1], 0
je 0x10174f53
push eax
call fcn.10172d00
add esp, 4
jmp 0x10174f61
cmp byte [eax + 5], 0
je 0x10174f08
mov eax, dword [esp + 0x1d0]
test eax, eax
je 0x10174f08
mov edi, dword [esp + 0x1c8]
imul ebx, eax, 0x38
nop
push edi
call fcn.10170bb0
add esp, 4
add edi, 0x38
add ebx, 0xffffffc8
jne 0x10174f40
jmp 0x10174f08
cmp byte [ecx], 0
je 0x10174f61
push eax
call fcn.10174140
add esp, 4
mov eax, dword [ebp + 0xc]
movzx eax, word [eax + 8]
cmp al, 2
je 0x10174f82
mov ecx, dword [ebp + 0xc]
movzx ecx, byte [ecx + 0xa]
shl ecx, 0x10
or eax, ecx
push eax
push esi
call fcn.10175a40
add esp, 8
mov eax, dword [ebp + 0xc]
cmp byte [eax + 2], 0
je 0x10174fc4
push esi
call fcn.10177390
add esp, 4
mov eax, dword [ebp + 0xc]
cmp byte [eax + 7], 0
je 0x10174fa6
push esi
call fcn.101776a0
add esp, 4
mov eax, esi
mov esi, dword [ebp + 8]
push 0x108
push eax
push esi
call sub.msvcrt.dll_memcpy
add esp, 0xc
mov eax, esi
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
cmp byte [eax + 3], 0
je 0x10174f94
mov eax, dword [esp + 0x1dc]
test eax, eax
je 0x10174f94
mov edi, dword [esp + 0x1d4]
shl eax, 4
lea ebx, [eax + eax*4]
add edi, 0x18
jmp 0x10174ff8
add edi, 0x50
add ebx, 0xffffffb0
je 0x10174f94
mov eax, dword [edi]
or eax, dword [edi + 4]
je 0x10174ff0
mov dword [esp + 0x24], 0
mov dword [esp + 0x20], 0
lea eax, [esp + 0x20]
push eax
push 0
push 0
push dword [edi + 0x1c]
call sub.KERNEL32.dll_GetDiskFreeSpaceExW
test eax, eax
je 0x10174ff0
movq xmm0, qword [esp + 0x20]
movq qword [edi + 8], xmm0
jmp 0x10174ff0
push 0x3a410
push 0x10
call fcn.1001a7e0
add esp, 8
ud2
push 9
push 1
call fcn.1001a7e0
add esp, 8
jmp 0x1017509e
push 0xa0
push 8
call fcn.1001a7e0
add esp, 8
jmp 0x1017509e
lea eax, [esp + 0xe8]
push 0x1034d204
push 0x1034d458
push eax
push 0x46
push 0x1034d16c
call fcn.10026bb0
add esp, 0x14
ud2
push 0x1034d204
push 0x1034d458
push esi
push 0x46
push 0x1034d16c
call fcn.10026bb0
add esp, 0x14
ud2