Function at 0x57dd8b
Capabilities:
Get common file path

Disassembly:
jmp 0x668d00
mov eax, 0x1004
call fcn.0057f249
lea eax, [esp + 0xc04]
push eax
push 0x400
call dword [sym.imp.KERNEL32.dll_GetCurrentDirectoryA]
mov eax, dword [esp + 0x1010]
test eax, eax
je 0x668dc1
lea ecx, [esp + 0x404]
push ecx
lea edx, [esp + 0xc08]
push edx
push eax
call fcn.0057aa19
push 0
push 1
lea eax, [esp + 0x418]
push 0
push eax
call fcn.0057a0e6
add esp, 0x1c
test eax, eax
je 0x668d71
push eax
call fcn.0057ea29
lea ecx, [esp + 0x408]
add esp, 4
mov dword [esp], ecx
jmp 0x668dc1
push 0
lea edx, [esp + 0x208]
push edx
lea eax, [esp + 0x40c]
push eax
call fcn.0057c198
push 0
push 1
lea ecx, [esp + 0x218]
push 0
push ecx
call fcn.0057a0e6
add esp, 0x1c
test eax, eax
je 0x668db7
push eax
call fcn.0057ea29
lea edx, [esp + 0x208]
add esp, 4
mov dword [esp], edx
jmp 0x668dc1
lea eax, [esp + 0x404]
mov dword [esp], eax
push ebx
mov ebx, dword [esp + 0x1018]
test ebx, ebx
push ebp
push esi
push edi
je 0x668e4c
lea ecx, [esp + 0x814]
push ecx
lea edx, [esp + 0xc18]
push edx
push ebx
call fcn.0057aa19
push 0
push 1
lea eax, [esp + 0x828]
push 0
push eax
call fcn.0057a0e6
add esp, 0x1c
test eax, eax
je 0x668e12
push eax
call fcn.0057ea29
add esp, 4
lea ebp, [esp + 0x814]
jmp 0x668e50
push 0
lea ecx, [esp + 0x18]
push ecx
lea edx, [esp + 0x81c]
push edx
call fcn.0057c198
push 0
push 1
lea eax, [esp + 0x28]
push 0
push eax
call fcn.0057a0e6
add esp, 0x1c
test eax, eax
je 0x668e09
push eax
call fcn.0057ea29
add esp, 4
lea ebp, [esp + 0x14]
jmp 0x668e50
mov ebp, dword [esp + 0x10]
cmp byte [esp + 0x1030], 0
mov edi, dword [esp + 0x1018]
je 0x668ed9
mov esi, dword [edi + 0x44]
xor ebx, ebx
cmp ebx, dword [edi + 0x40]
jae 0x668ecc
jmp 0x668e70
cmp dword [esp + 0x1020], 0
je 0x668e93
mov eax, dword [esi + 0x20]
test eax, eax
je 0x668ebe
mov ecx, dword [esp + 0x10]
push ecx
push eax
call fcn.0057a131
add esp, 8
test eax, eax
jmp 0x668e97
cmp dword [esi + 0x20], 0
jne 0x668ebe
cmp dword [esp + 0x1024], 0
je 0x668eb8
mov eax, dword [esi + 0x24]
test eax, eax
je 0x668ebe
push ebp
push eax
call fcn.0057a131
add esp, 8
test eax, eax
jmp 0x668ebc
cmp dword [esi + 0x24], 0
je 0x668ec9
mov esi, dword [esi + 4]
add ebx, 1
cmp ebx, dword [edi + 0x40]
jb 0x668e70
cmp ebx, dword [edi + 0x40]
jne 0x668fa7
mov ebx, dword [esp + 0x1024]
push 0
push 0
push edi
push 0x38
call fcn.0057ae60
mov esi, eax
add esp, 0x10
test esi, esi
jne 0x668efb
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x1004
ret
cmp dword [edi + 0x44], 0
jne 0x668f06
mov dword [edi + 0x44], esi
jmp 0x668f11
mov edx, dword [edi + 0x48]
mov dword [esi], edx
mov eax, dword [edi + 0x48]
mov dword [eax + 4], esi
mov edx, dword [esp + 0x101c]
mov ecx, dword [edi + 0x40]
push edx
mov dword [edi + 0x48], esi
mov dword [esi + 8], ecx
add dword [edi + 0x40], 1
push edi
call fcn.0057e9d4
add esp, 8
test eax, eax
mov dword [esi + 0xc], eax
je 0x668eee
fld dword [esp + 0x102c]
xor ecx, ecx
cmp byte [esp + 0x1034], cl
fstp dword [esi + 0x2c]
mov eax, 1
setne cl
cmp dword [esp + 0x1020], 0
mov dword [esi + 0x14], eax
mov dword [esi + 0x18], eax
mov eax, dword [esp + 0x1028]
mov dword [esi + 0x1c], 2
mov dword [esi + 0x28], eax
mov dword [esi + 0x34], ecx
je 0x668f8e
mov edx, dword [esp + 0x10]
push edx
push edi
call fcn.0057e9d4
add esp, 8
test eax, eax
mov dword [esi + 0x20], eax
je 0x668eee
test ebx, ebx
je 0x668fa7
push ebp
push edi
call fcn.0057e9d4
add esp, 8
test eax, eax
mov dword [esi + 0x24], eax
je 0x668eee
pop edi
mov eax, esi
pop esi
pop ebp
pop ebx
add esp, 0x1004
ret