Function at 0x427610
Capabilities:
Get common file path
Get disk size

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x428
mov eax, dword [0x43e004]
xor eax, ebp
mov dword [ebp - 4], eax
mov eax, dword [0x43f9b4]
push ebx
push esi
mov esi, dword [sym.imp.KERNEL32.dll_lstrlenW]
mov ebx, ecx
push edi
push 0x43a24c
mov dword [ebp - 0x418], eax
call esi
push eax
push 0x43a24c
push ebx
call fcn.00412f6f
add esp, 0xc
mov ecx, ebx
test eax, eax
jne 0x427727
lea edx, [ebp - 0x20c]
sub edx, ebx
movzx eax, word [ecx]
lea ecx, [ecx + 2]
mov word [edx + ecx - 2], ax
test ax, ax
jne 0x427661
lea eax, [ebp - 0x20c]
push eax
call esi
push 0x5c
lea esi, [ebp + eax*2 - 0x20e]
lea eax, [ebp - 0x20c]
push eax
call fcn.004078b9
add esp, 8
cmp eax, esi
je 0x4276b3
lea edi, [ebp - 0x20c]
add edi, 0xfffffffe
nop
mov ax, word [edi + 2]
lea edi, [edi + 2]
test ax, ax
jne 0x4276a0
mov eax, dword [0x43a200]
mov dword [edi], eax
lea eax, [ebp - 0x208]
push 0x5c
push eax
call fcn.004077f2
add esp, 8
test eax, eax
je 0x42782b
add eax, 2
push 0x5c
push eax
call fcn.004077f2
mov esi, eax
add esp, 8
test esi, esi
je 0x42782b
lea eax, [ebp - 0x20c]
sub esi, eax
sar esi, 1
lea eax, [esi + 1]
push eax
lea eax, [ebp - 0x20c]
push eax
lea eax, [ebp - 0x414]
push eax
call fcn.0040bfa6
lea esi, [esi*2 + 2]
add esp, 0xc
cmp esi, 0x208
jae 0x4278bf
xor eax, eax
mov word [ebp + esi - 0x414], ax
jmp 0x42778b
lea edx, [ecx + 2]
nop word [eax + eax]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x427730
sub ecx, edx
sar ecx, 1
cmp ecx, 2
jb 0x42774f
cmp word [ebx + 2], 0x3a
jne 0x42774f
mov eax, ebx
jmp 0x42776f
lea eax, [ebp - 0x20c]
push eax
push 0x104
call dword [sym.imp.KERNEL32.dll_GetCurrentDirectoryW]
test eax, eax
je 0x42782b
lea eax, [ebp - 0x20c]
push 2
push eax
lea eax, [ebp - 0x414]
push eax
call fcn.0040bfa6
add esp, 0xc
mov dword [ebp - 0x410], 0x5c
lea eax, [ebp - 0x428]
push eax
lea eax, [ebp - 0x41c]
push eax
lea eax, [ebp - 0x420]
push eax
lea eax, [ebp - 0x424]
push eax
lea eax, [ebp - 0x414]
push eax
call dword [sym.imp.KERNEL32.dll_GetDiskFreeSpaceW]
test eax, eax
jne 0x42783e
push 0x40
push str.GetDiskFreeSpace
push 0x43fe18
mov dword [0x43fc0c], 0xcb
call fcn.0040bfa6
add esp, 0xc
xor eax, eax
mov word [0x43fe96], ax
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [0x43fc08], eax
test ebx, ebx
je 0x427804
push 0x104
push ebx
push 0x43fc10
call fcn.0040bfa6
add esp, 0xc
push 0x104
xor eax, eax
push str.C:JenkinsAE_build_workHibun_AE_Current_src_sfslfdec_sfmkcore.c
push 0x43fe98
mov word [0x43fe16], ax
call fcn.0040bfa6
add esp, 0xc
xor eax, eax
mov word [0x44009e], ax
pop edi
pop esi
xor eax, eax
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00406bb3
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp - 0x418]
xor edi, edi
xor esi, esi
mov eax, dword [eax]
test eax, eax
je 0x4278a9
mov ebx, dword [ebp - 0x420]
mov eax, dword [eax + 4]
lea edi, [edi + 1]
xor edx, edx
div ebx
test edx, edx
lea ecx, [eax + 1]
cmove ecx, eax
xor edx, edx
mov eax, ecx
div dword [ebp - 0x424]
test edx, edx
lea ecx, [eax + 1]
cmove ecx, eax
mov eax, dword [ebp - 0x418]
add esi, ecx
mov eax, dword [eax + edi*4]
test eax, eax
jne 0x427854
cmp dword [ebp - 0x41c], esi
jae 0x4278a9
mov dword [0x43fc0c], 0xffffef30
mov word [0x43fe96], ax
mov dword [0x43fc08], eax
jmp 0x427804
mov eax, 1
mov ecx, dword [ebp - 4]
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.00406bb3
mov esp, ebp
pop ebp
ret
call fcn.00406ce3
int3