Function at 0x439ab0
Capabilities:
Get common file path

Disassembly:
push ebp
mov ebp, esp
mov eax, 0x1030
call fcn.0042a830
mov eax, dword [0x44e234]
xor eax, ebp
mov dword [ebp - 4], eax
push esi
push edi
xor eax, eax
push 0x7fe
push eax
lea ecx, [ebp - 0x1016]
push ecx
mov word [ebp - 0x1018], ax
call fcn.0041be80
add esp, 0xc
xor edx, edx
push 0x7fe
push edx
lea eax, [ebp - 0x816]
push eax
mov word [ebp - 0x818], dx
call fcn.0041be80
add esp, 0xc
push 0x800
lea ecx, [ebp - 0x1018]
push ecx
call dword [sym.imp.KERNEL32.dll_GetSystemDirectoryW]
push 0x800
lea edx, [ebp - 0x818]
push edx
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
xor eax, eax
push eax
push eax
push eax
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x10], eax
mov dword [ebp - 0xc], eax
mov word [ebp - 8], ax
lea eax, [ebp - 0x14]
push eax
lea ecx, [ebp - 0x818]
push ecx
call fcn.0041defb
lea edi, [ebp - 0x14]
add esp, 0x14
add edi, 0xfffffffe
mov ax, word [edi + 2]
add edi, 2
test ax, ax
jne 0x439b54
mov edx, dword [0x447538]
lea eax, [ebp - 0x1030]
push eax
mov dword [edi], edx
call fcn.0041ae4b
mov ecx, dword [ebp - 0x1030]
mov edx, dword [ebp - 0x102c]
lea eax, [ebp - 0x1028]
add esp, 4
push eax
mov dword [ebp - 0x1028], ecx
mov dword [ebp - 0x1024], edx
call fcn.0041eec6
fld qword [0x448260]
fldz
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x439bb3
fld st(0)
jmp 0x439c69
mov eax, dword [ecx + 0x14]
add eax, 0x76c
cmp eax, 0x64
jge 0x439bc5
cmp eax, 0x1e
jge 0x439bcd
lea edx, [eax - 0x65]
cmp edx, 0x62
ja 0x439bd4
add eax, 0x76c
jmp 0x439bde
cmp eax, 0x1e
jge 0x439bde
add eax, 0x7d0
mov esi, dword [ecx + 0x10]
inc esi
cmp esi, 2
jle 0x439bea
inc esi
jmp 0x439bee
add esi, 0xd
dec eax
mov edx, dword [ecx + 8]
imul eax, eax, 0x8ead
imul esi, esi, 0x132
mov edi, edx
shl edi, 4
sub edi, edx
mov edx, dword [ecx + 4]
lea edx, [edx + edi*4]
mov edi, edx
shl edi, 4
sub edi, edx
add edi, edi
add edi, edi
mov dword [ebp - 0x101c], edi
mov edx, eax
mov eax, 0x51eb851f
fild dword [ebp - 0x101c]
imul edx
fiadd dword [ecx]
fdiv st(2)
mov ecx, dword [ecx + 0xc]
sar edx, 5
mov edi, edx
shr edi, 0x1f
add edi, edx
mov eax, 0x66666667
imul esi
sar edx, 2
mov eax, edx
add edi, edx
shr eax, 0x1f
add eax, edi
lea edx, [eax + ecx - 0xa9716]
mov dword [ebp - 0x101c], edx
fild dword [ebp - 0x101c]
faddp st(1)
fadd qword [0x448278]
test bl, bl
je 0x439c88
movzx eax, bl
fstp st(1)
imul eax, eax, 0xe10
mov dword [ebp - 0x101c], eax
fild dword [ebp - 0x101c]
fdivrp st(2)
jmp 0x439c8c
fstp st(2)
fxch st(1)
sub esp, 0x10
fxch st(1)
fstp qword [esp + 8]
lea ecx, [ebp - 0x1018]
fstp qword [esp]
push 1
push ecx
call fcn.0040e63d
add esp, 0x18
test al, al
jne 0x439e15
lea edx, [ebp - 0x1028]
push edx
call fcn.0041ae4b
mov eax, dword [ebp - 0x1028]
mov ecx, dword [ebp - 0x1024]
lea edx, [ebp - 0x1030]
add esp, 4
push edx
mov dword [ebp - 0x1030], eax
mov dword [ebp - 0x102c], ecx
call fcn.0041eec6
mov esi, eax
add esp, 4
test esi, esi
jne 0x439cf4
fldz
jmp 0x439dae
mov eax, dword [esi + 0x14]
add eax, 0x76c
cmp eax, 0x64
jge 0x439d06
cmp eax, 0x1e
jge 0x439d0e
lea ecx, [eax - 0x65]
cmp ecx, 0x62
ja 0x439d15
add eax, 0x76c
jmp 0x439d1f
cmp eax, 0x1e
jge 0x439d1f
add eax, 0x7d0
mov ecx, dword [esi + 0x10]
inc ecx
cmp ecx, 2
jle 0x439d2b
inc ecx
jmp 0x439d2f
add ecx, 0xd
dec eax
mov edx, dword [esi + 8]
imul eax, eax, 0x8ead
imul ecx, ecx, 0x132
mov edi, edx
shl edi, 4
sub edi, edx
mov edx, dword [esi + 4]
lea edx, [edx + edi*4]
mov edi, edx
shl edi, 4
sub edi, edx
add edi, edi
add edi, edi
mov dword [ebp - 0x101c], edi
mov edx, eax
mov eax, 0x51eb851f
fild dword [ebp - 0x101c]
imul edx
fiadd dword [esi]
fdiv qword [0x448260]
sar edx, 5
mov edi, edx
shr edi, 0x1f
add edi, edx
mov eax, 0x66666667
imul ecx
mov ecx, dword [esi + 0xc]
sar edx, 2
mov eax, edx
add edi, edx
shr eax, 0x1f
add eax, edi
lea edx, [eax + ecx - 0xa9716]
mov dword [ebp - 0x101c], edx
fild dword [ebp - 0x101c]
faddp st(1)
fadd qword [0x448278]
test bl, bl
je 0x439dcf
movzx eax, bl
imul eax, eax, 0xe10
mov dword [ebp - 0x101c], eax
fild dword [ebp - 0x101c]
fdiv qword [0x448260]
jmp 0x439dd1
fldz
sub esp, 0x10
fstp qword [esp + 8]
lea ecx, [ebp - 0x818]
fstp qword [esp]
push 0
push ecx
call fcn.0040e63d
add esp, 0x18
test al, al
jne 0x439e15
push 0
lea edx, [ebp - 0x14]
push ebx
push edx
call fcn.0040e8c0
add esp, 0xc
test al, al
jne 0x439e15
mov al, 1
pop edi
pop esi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00419e3b
mov esp, ebp
pop ebp
ret
mov ecx, dword [ebp - 4]
pop edi
xor ecx, ebp
xor al, al
pop esi
call fcn.00419e3b
mov esp, ebp
pop ebp
ret