Function at 0x765d30
Capabilities:
Check if file exists
Check mutex and terminate process on windows
Check mutex on windows
Copy file
Create directory
Delete file
Enumerate files on windows
Get common file path
Get disk size
Get file attributes
Get file version info
Print debug messages
Query or enumerate registry value
Read .ini file
Read file on windows
Terminate process
Write file on windows

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x74
mov dword [ebp - 0x34], 0x1b
mov dword [ebp - 0x44], 0x214
mov dword [ebp - 0x38], 0x124
mov dword [ebp - 0x48], 0x26e
mov dword [ebp - 0x30], 0x36e
mov dword [ebp - 0x6c], 0x2b
mov dword [ebp - 0x10], 0x1b
mov dword [ebp - 0x3c], 0x183
mov dword [ebp - 0x18], 0xc3
mov dword [ebp - 0x70], 0x3da
mov dword [ebp - 0x1c], 0x7b
mov dword [ebp - 0x24], 0x2af
mov dword [ebp - 0x68], 0xc8
mov dword [ebp - 4], 0x153
mov dword [ebp - 0x40], 0x18e
mov dword [ebp - 0x74], 0x17
mov dword [ebp - 0x28], 0x3c8
mov dword [ebp - 8], 0x3b
mov dword [ebp - 0x58], 0x28a
mov dword [ebp - 0x14], 0x93
mov dword [ebp - 0x20], 0x2ae
mov dword [ebp - 0x2c], 0x34
mov dword [ebp - 0xc], 0x20c
mov eax, dword [ebp - 0x20]
add eax, 1
mov dword [ebp - 0x20], eax
mov ecx, dword [ebp - 0x14]
add ecx, 1
mov dword [ebp - 0x14], ecx
mov edx, dword [ebp - 0x24]
cmp edx, dword [ebp - 0x14]
jge 0x765dfa
mov dword [ebp - 0x4c], 1
jmp 0x765e01
mov dword [ebp - 0x4c], 0
mov eax, dword [ebp - 0x68]
add eax, dword [ebp - 0x48]
cmp eax, dword [ebp - 0x1c]
jge 0x765e15
mov dword [ebp - 0x50], 1
jmp 0x765e1c
mov dword [ebp - 0x50], 0
mov ecx, dword [ebp - 8]
add ecx, dword [ebp - 0x58]
cmp ecx, dword [ebp - 0x30]
jge 0x765e30
mov dword [ebp - 0x54], 1
jmp 0x765e37
mov dword [ebp - 0x54], 0
mov edx, dword [ebp - 0x4c]
and edx, dword [ebp - 0x50]
or edx, dword [ebp - 0x54]
je 0x765e4b
mov eax, dword [ebp - 0x14]
add eax, 1
mov dword [ebp - 0x14], eax
mov ecx, dword [ebp - 0x24]
sub ecx, 0x23e
mov dword [ebp - 0x24], ecx
mov edx, dword [ebp - 0x20]
sub edx, 0x17f
mov dword [ebp - 0x20], edx
mov eax, dword [ebp - 0x1c]
add eax, 0x1ba
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x28]
sub ecx, 0x34
mov dword [ebp - 0x28], ecx
mov edx, dword [ebp - 0x34]
add edx, 0x18e
mov dword [ebp - 0x34], edx
mov eax, dword [ebp - 4]
sub eax, 0x89
mov dword [ebp - 4], eax
mov ecx, dword [ebp - 0x44]
add ecx, 0x119
mov dword [ebp - 0x44], ecx
mov edx, dword [ebp - 0x3c]
sub edx, 0x163
mov dword [ebp - 0x3c], edx
mov eax, dword [ebp - 4]
sub eax, 0x136
mov dword [ebp - 4], eax
mov ecx, dword [ebp - 0x40]
add ecx, 0xa4
mov dword [ebp - 0x40], ecx
mov edx, dword [ebp - 0x40]
push edx
mov eax, dword [ebp - 4]
push eax
mov ecx, dword [ebp - 0x3c]
push ecx
mov edx, dword [ebp - 0x44]
push edx
mov eax, dword [ebp - 4]
push eax
mov ecx, dword [ebp - 0x34]
push ecx
mov edx, dword [ebp - 0x28]
push edx
mov eax, dword [ebp - 0x1c]
push eax
mov ecx, dword [ebp - 0x20]
push ecx
mov edx, dword [ebp - 0x24]
push edx
call fcn.00410f10
add esp, 0x28
push 0x213a
push 0x7972
push 0xf3e5
push 0xfe5e
push 0x2cc6
push 0x67e4
push 0xe68b
push 0x45f5
push 0xc6a4
call fcn.0075e530
add esp, 0x24
push eax
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov dword [0xa9c570], eax
mov eax, dword [ebp - 0x30]
cmp eax, dword [ebp - 0x28]
jge 0x765f83
mov ecx, dword [ebp - 0x24]
cmp ecx, dword [ebp - 0x58]
jge 0x765f47
mov dword [ebp - 0x5c], 1
jmp 0x765f4e
mov dword [ebp - 0x5c], 0
mov edx, dword [ebp - 8]
sub edx, 1
mov dword [ebp - 8], edx
mov eax, dword [ebp - 0x14]
add eax, dword [ebp - 8]
cmp eax, dword [ebp - 0x28]
jge 0x765f6b
mov dword [ebp - 0x60], 1
jmp 0x765f72
mov dword [ebp - 0x60], 0
mov ecx, dword [ebp - 0x5c]
or ecx, dword [ebp - 0x60]
je 0x765f83
mov edx, dword [ebp - 0x2c]
add edx, 1
mov dword [ebp - 0x2c], edx
mov eax, dword [0xa9c584]
push eax
mov ecx, dword [0xa9c574]
push ecx
mov edx, dword [0xa9c580]
push edx
mov eax, dword [0xa9c56c]
push eax
mov ecx, dword [0xa9c570]
push ecx
push 0xeb29
push 0x320
push 0xd853
push 0x4cff
push 0x98a9
push 0xaece
push 0x5343
push 0x19e7
push 0x9047
call fcn.004248d0
add esp, 0x24
push eax
mov edx, dword [0xa9c570]
push edx
call fcn.007669a0
add esp, 8
call eax
test eax, eax
je 0x766987
mov eax, dword [ebp - 0x30]
add eax, 1
mov dword [ebp - 0x30], eax
push 0
call dword [sym.imp.KERNEL32.dll_ExitProcess]
mov ecx, dword [ebp - 4]
sub ecx, 1
mov dword [ebp - 4], ecx
mov edx, dword [ebp - 0x1c]
add edx, 1
mov dword [ebp - 0x1c], edx
mov esp, ebp
pop ebp
ret