Function at 0x592d70
Capabilities:
Create directory
Delete directory
Get common file path

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x5e519f
mov eax, dword fs:[0]
push eax
mov eax, 0x11f4
call fcn.005cbc70
mov eax, dword [0x720870]
xor eax, ebp
mov dword [ebp - 0x2c], eax
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x11a8], ecx
push 0
call fcn.005afe30
add esp, 4
lea eax, [ebp - 0x14]
push eax
call fcn.005935d0
add esp, 4
mov dword [ebp - 4], 0
mov ecx, 0x6eaff4
test ecx, ecx
jne 0x592dd7
mov dword [ebp - 0x1110], 0
jmp 0x592dea
push 0x6eaff4
call fcn.005c9900
add esp, 4
mov dword [ebp - 0x1110], eax
mov edx, dword [ebp - 0x1110]
push edx
push 0x6eaff4
lea ecx, [ebp - 0x14]
call fcn.00593d20
lea ecx, [ebp - 0x14]
call fcn.00593ae0
push eax
call sym.C700Release_M13T3.exe_SetEEPROMBinFilePath
add esp, 4
mov eax, dword [ebp - 0x14]
sub eax, 0x10
mov dword [ebp - 0x1118], eax
mov ecx, dword [ebp - 0x1118]
push ecx
call fcn.004297a0
add esp, 4
mov dword [ebp - 0x111c], eax
mov edx, dword [ebp - 0x111c]
add edx, 0x10
mov dword [ebp - 0x18], edx
mov byte [ebp - 4], 1
push str.BaseBoardApp.dll
lea eax, [ebp - 0x18]
push eax
lea ecx, [ebp - 0x10]
push ecx
call fcn.00593a00
add esp, 0xc
mov byte [ebp - 4], 2
push 0
call sym.C700Release_M13T3.exe_SetSFXFlag
add esp, 4
mov edx, dword [ebp - 0x18]
push edx
call sym.C700Release_M13T3.exe_SetDLLFilePath
add esp, 4
push 0x6eafdc
lea ecx, [ebp - 0x10]
call fcn.00593ae0
push eax
call fcn.005ca92e
add esp, 8
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], 0
je 0x592eb5
mov eax, dword [ebp - 0x1c]
push eax
call fcn.005ca6e2
add esp, 4
push 0
call sym.C700Release_M13T3.exe_SetSFXFlag
add esp, 4
mov ecx, dword [ebp - 0x18]
push ecx
call sym.C700Release_M13T3.exe_SetDLLFilePath
add esp, 4
jmp 0x593177
push str.TEMP
call fcn.005cbbeb
add esp, 4
push eax
lea ecx, [ebp - 0x28]
call fcn.00591af0
mov byte [ebp - 4], 3
mov edx, dword [ebp - 0x28]
mov eax, dword [edx - 0xc]
mov dword [ebp - 0x112c], eax
cmp dword [ebp - 0x112c], 0
jne 0x592ff1
mov byte [ebp - 0x134], 0
push 0x103
push 0
lea ecx, [ebp - 0x133]
push ecx
call fcn.005c9870
add esp, 0xc
lea edx, [ebp - 0x134]
push edx
push 0x104
call dword [sym.imp.KERNEL32.dll_GetTempPathA]
mov dword [ebp - 0x138], eax
mov byte [ebp - 0x244], 0
push 0x103
push 0
lea eax, [ebp - 0x243]
push eax
call fcn.005c9870
add esp, 0xc
push 0x104
lea ecx, [ebp - 0x244]
push ecx
lea edx, [ebp - 0x134]
push edx
call dword [sym.imp.KERNEL32.dll_GetLongPathNameA]
lea eax, [ebp - 0x244]
push eax
lea ecx, [ebp - 0x10d8]
call fcn.00591af0
mov dword [ebp - 0x11ac], eax
mov ecx, dword [ebp - 0x11ac]
mov dword [ebp - 0x1138], ecx
mov byte [ebp - 4], 4
mov edx, dword [ebp - 0x1138]
push edx
lea ecx, [ebp - 0x28]
call fcn.00429450
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x10d8]
call fcn.00429410
mov eax, dword [ebp - 0x28]
mov ecx, dword [eax - 0xc]
mov dword [ebp - 0x1140], ecx
cmp dword [ebp - 0x1140], 0
jne 0x592ff1
lea edx, [ebp - 0x10dc]
push edx
call fcn.005935d0
add esp, 4
mov dword [ebp - 0x11b0], eax
mov eax, dword [ebp - 0x11b0]
mov dword [ebp - 0x1144], eax
mov byte [ebp - 4], 5
mov ecx, dword [ebp - 0x1144]
push ecx
lea ecx, [ebp - 0x28]
call fcn.00429450
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x10dc]
call fcn.00429410
mov edx, dword [ebp - 0x28]
mov eax, dword [edx - 0xc]
mov dword [ebp - 0x114c], eax
cmp dword [ebp - 0x114c], 0
jne 0x59305c
push 0
push 0
push str.No_writable_working_directory.
call fcn.005ab103
mov dword [ebp - 0x10e0], 0
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x28]
call fcn.00429410
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x10]
call fcn.00429410
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x18]
call fcn.00429410
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x14]
call fcn.00429410
mov eax, dword [ebp - 0x10e0]
jmp 0x5935ab
push 0
call fcn.005cbb13
add esp, 4
mov dword [ebp - 0x24], eax
mov dword [ebp - 0x20], edx
mov ecx, dword [ebp - 0x20]
push ecx
mov edx, dword [ebp - 0x24]
push edx
mov eax, dword [ebp - 0x28]
push eax
push str._s_ld
mov ecx, dword [ebp - 0x11a8]
add ecx, 0xa4
push ecx
call fcn.004299c0
add esp, 0x14
mov edx, dword [ebp - 0x11a8]
mov eax, dword [edx + 0xa4]
mov dword [ebp - 0x1160], eax
push 0
mov ecx, dword [ebp - 0x1160]
push ecx
call dword [sym.imp.KERNEL32.dll_CreateDirectoryA]
mov edx, dword [ebp - 0x11a8]
add edx, 0xa4
push edx
lea ecx, [ebp - 0x28]
call fcn.00429450
push 1
call sym.C700Release_M13T3.exe_SetSFXFlag
add esp, 4
mov eax, dword [ebp - 0x28]
push eax
call sym.C700Release_M13T3.exe_SetDLLFilePath
add esp, 4
mov ecx, dword [ebp - 0x11a8]
add ecx, 0xa4
mov dword [ebp - 0x1164], ecx
lea edx, [ebp - 0x28]
push edx
mov ecx, dword [ebp - 0x1164]
call fcn.00429450
lea eax, [ebp - 0x28]
push eax
call fcn.00592180
add esp, 4
lea ecx, [ebp - 0x28]
push ecx
call fcn.00592420
add esp, 4
lea edx, [ebp - 0x28]
push edx
call fcn.00592620
add esp, 4
lea eax, [ebp - 0x28]
push eax
call fcn.00592a10
add esp, 4
lea ecx, [ebp - 0x28]
push ecx
call fcn.00592030
add esp, 4
lea edx, [ebp - 0x28]
push edx
call fcn.00592b60
add esp, 4
lea eax, [ebp - 0x28]
push eax
call fcn.005922d0
add esp, 4
lea ecx, [ebp - 0x28]
push ecx
call fcn.00592770
add esp, 4
lea edx, [ebp - 0x28]
push edx
call fcn.005928c0
add esp, 4
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x28]
call fcn.00429410
push 0
lea ecx, [ebp - 0x10d4]
call fcn.005941f0
mov byte [ebp - 4], 6
mov eax, dword [ebp - 0x11a8]
lea ecx, [ebp - 0x10d4]
mov dword [eax + 0x20], ecx
lea ecx, [ebp - 0x10d4]
call fcn.005af1d5
mov dword [ebp - 0x248], eax
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x10d4]
call fcn.005936f0
call fcn.004273c0
test eax, eax
je 0x593574
push 0x6eae3c
mov edx, dword [ebp - 0x11a8]
add edx, 0xa4
push edx
lea eax, [ebp - 0x10e4]
push eax
call fcn.00593a00
add esp, 0xc
mov dword [ebp - 0x11b4], eax
mov ecx, dword [ebp - 0x11b4]
mov dword [ebp - 0x11b8], ecx
mov byte [ebp - 4], 7
mov edx, dword [ebp - 0x11b8]
push edx
mov eax, dword [0x730fe8]
push eax
call fcn.005936a0
add esp, 8
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x10e4]
call fcn.00429410
push str.ISMBoard2_Dll.dll
mov ecx, dword [ebp - 0x11a8]
add ecx, 0xa4
push ecx
lea edx, [ebp - 0x10e8]
push edx
call fcn.00593a00
add esp, 0xc
mov dword [ebp - 0x11bc], eax
mov eax, dword [ebp - 0x11bc]
mov dword [ebp - 0x11c0], eax
mov byte [ebp - 4], 8
mov ecx, dword [ebp - 0x11c0]
push ecx
mov edx, dword [0x730fec]
push edx
call fcn.005936a0
add esp, 8
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x10e8]
call fcn.00429410
push 0x6eae18
mov eax, dword [ebp - 0x11a8]
add eax, 0xa4
push eax
lea ecx, [ebp - 0x10ec]
push ecx
call fcn.00593a00
add esp, 0xc
mov dword [ebp - 0x11c4], eax
mov edx, dword [ebp - 0x11c4]
mov dword [ebp - 0x11c8], edx
mov byte [ebp - 4], 9
mov eax, dword [ebp - 0x11c8]
push eax
mov ecx, dword [0x730ff0]
push ecx
call fcn.005936a0
add esp, 8
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x10ec]
call fcn.00429410
push 0x6eae50
mov edx, dword [ebp - 0x11a8]
add edx, 0xa4
push edx
lea eax, [ebp - 0x10f0]
push eax
call fcn.00593a00
add esp, 0xc
mov dword [ebp - 0x11cc], eax
mov ecx, dword [ebp - 0x11cc]
mov dword [ebp - 0x11d0], ecx
mov byte [ebp - 4], 0xa
mov edx, dword [ebp - 0x11d0]
push edx
mov eax, dword [0x730ffc]
push eax
call fcn.005936a0
add esp, 8
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x10f0]
call fcn.00429410
push 0x6eae04
mov ecx, dword [ebp - 0x11a8]
add ecx, 0xa4
push ecx
lea edx, [ebp - 0x10f4]
push edx
call fcn.00593a00
add esp, 0xc
mov dword [ebp - 0x11d4], eax
mov eax, dword [ebp - 0x11d4]
mov dword [ebp - 0x11d8], eax
mov byte [ebp - 4], 0xb
mov ecx, dword [ebp - 0x11d8]
push ecx
mov edx, dword [0x731004]
push edx
call fcn.005936a0
add esp, 8
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x10f4]
call fcn.00429410
push 0x6eadd0
mov eax, dword [ebp - 0x11a8]
add eax, 0xa4
push eax
lea ecx, [ebp - 0x10f8]
push ecx
call fcn.00593a00
add esp, 0xc
mov dword [ebp - 0x11dc], eax
mov edx, dword [ebp - 0x11dc]
mov dword [ebp - 0x11e0], edx
mov byte [ebp - 4], 0xc
mov eax, dword [ebp - 0x11e0]
push eax
mov ecx, dword [0x73100c]
push ecx
call fcn.005936a0
add esp, 8
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x10f8]
call fcn.00429410
push 0x6eae9c
mov edx, dword [ebp - 0x11a8]
add edx, 0xa4
push edx
lea eax, [ebp - 0x10fc]
push eax
call fcn.00593a00
add esp, 0xc
mov dword [ebp - 0x11e4], eax
mov ecx, dword [ebp - 0x11e4]
mov dword [ebp - 0x11e8], ecx
mov byte [ebp - 4], 0xd
mov edx, dword [ebp - 0x11e8]
push edx
mov eax, dword [0x731010]
push eax
call fcn.005936a0
add esp, 8
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x10fc]
call fcn.00429410
push str.RelayBoardApp.dll
mov ecx, dword [ebp - 0x11a8]
add ecx, 0xa4
push ecx
lea edx, [ebp - 0x1100]
push edx
call fcn.00593a00
add esp, 0xc
mov dword [ebp - 0x11ec], eax
mov eax, dword [ebp - 0x11ec]
mov dword [ebp - 0x11f0], eax
mov byte [ebp - 4], 0xe
mov ecx, dword [ebp - 0x11f0]
push ecx
mov edx, dword [0x731008]
push edx
call fcn.005936a0
add esp, 8
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x1100]
call fcn.00429410
push 0x6eae64
mov eax, dword [ebp - 0x11a8]
add eax, 0xa4
push eax
lea ecx, [ebp - 0x1104]
push ecx
call fcn.00593a00
add esp, 0xc
mov dword [ebp - 0x11f4], eax
mov edx, dword [ebp - 0x11f4]
mov dword [ebp - 0x11f8], edx
mov byte [ebp - 4], 0xf
mov eax, dword [ebp - 0x11f8]
push eax
mov ecx, dword [0x730ff4]
push ecx
call fcn.005936a0
add esp, 8
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x1104]
call fcn.00429410
push 0x6eae74
mov edx, dword [ebp - 0x11a8]
add edx, 0xa4
push edx
lea eax, [ebp - 0x1108]
push eax
call fcn.00593a00
add esp, 0xc
mov dword [ebp - 0x11fc], eax
mov ecx, dword [ebp - 0x11fc]
mov dword [ebp - 0x1200], ecx
mov byte [ebp - 4], 0x10
mov edx, dword [ebp - 0x1200]
push edx
mov eax, dword [0x730ff8]
push eax
call fcn.005936a0
add esp, 8
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x1108]
call fcn.00429410
mov ecx, dword [ebp - 0x11a8]
mov edx, dword [ecx + 0xa4]
mov dword [ebp - 0x1198], edx
mov eax, dword [ebp - 0x1198]
push eax
call dword [sym.imp.KERNEL32.dll_RemoveDirectoryA]
mov dword [ebp - 0x110c], 0
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x10]
call fcn.00429410
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x18]
call fcn.00429410
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x14]
call fcn.00429410
mov eax, dword [ebp - 0x110c]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
mov ecx, dword [ebp - 0x2c]
xor ecx, ebp
call fcn.005c7e68
mov esp, ebp
pop ebp
ret