Function at 0x4234d1
Capabilities:
Create directory
Move file
Write file on windows

Disassembly:
push 0x1b0
mov eax, 0x6cea18
call fcn.00573bfd
mov eax, dword [ebp + 0x18]
xor ebx, ebx
mov esi, 0x7c5e0c
mov edi, dword [ebp + 0x14]
mov dword [ebp - 0x1bc], eax
cmp byte [0x7b742c], bl
je 0x423549
cmp dword [0x7c5e20], 0x10
mov eax, esi
push ebx
cmovae eax, dword [0x7c5e0c]
push eax
mov byte [0x7b742c], bl
call fcn.0069751c
pop ecx
pop ecx
test eax, eax
jne 0x423549
cmp dword [0x7c5e38], 0x10
mov ecx, 0x7c5e24
mov eax, esi
cmovae ecx, dword [0x7c5e24]
cmp dword [0x7c5e20], 0x10
push ecx
cmovae eax, dword [0x7c5e0c]
push eax
call dword [sym.imp.KERNEL32.dll_MoveFileA]
push 0x32
lea eax, [ebp - 0x44]
push ebx
push eax
call fcn.0068d6d0
add esp, 0xc
mov dword [ebp - 0x178], ebx
mov byte [ebp - 0x188], bl
push 0xf
pop eax
mov dword [ebp - 0x174], eax
mov dword [ebp - 4], ebx
mov dword [ebp - 0x190], ebx
mov dword [ebp - 0x18c], eax
mov byte [ebp - 0x1a0], bl
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x170]
push 0x78241a
mov dword [ebp - 0x160], ebx
mov dword [ebp - 0x15c], eax
mov byte [ebp - 0x170], bl
call fcn.0040249b
push 0xff
lea eax, [ebp - 0x148]
mov byte [ebp - 4], 2
push ebx
push eax
call fcn.0068d6d0
add esp, 0xc
lea eax, [ebp - 0x158]
push eax
call dword [sym.imp.KERNEL32.dll_GetLocalTime]
movzx eax, word [ebp - 0x14a]
push eax
movzx eax, word [ebp - 0x14c]
push eax
movzx eax, word [ebp - 0x14e]
push eax
movzx eax, word [ebp - 0x150]
push eax
movzx eax, word [ebp - 0x152]
push eax
movzx eax, word [ebp - 0x156]
push eax
movzx eax, word [ebp - 0x158]
push eax
lea eax, [ebp - 0x44]
push str._04d__02d__02d__02d:_02d:_02d._03d
push eax
call fcn.004035a8
add esp, 0x24
lea ecx, [ebp - 0x188]
push edi
call fcn.0040249b
cmp dword [ebp - 0x174], 0x10
lea edx, [ebp - 0x188]
mov eax, dword [ebp - 0x178]
cmovae edx, dword [ebp - 0x188]
or edi, 0xffffffff
test eax, eax
je 0x42365e
dec eax
mov ecx, edi
cmp eax, edi
cmovb ecx, eax
add ecx, edx
jmp 0x423655
cmp ecx, edx
je 0x42365e
dec ecx
cmp byte [ecx], 0x5c
jne 0x423650
sub ecx, edx
jmp 0x423660
mov ecx, edi
push ecx
lea eax, [ecx + 1]
push edi
push eax
lea eax, [ebp - 0x188]
push eax
lea ecx, [ebp - 0x1b8]
call fcn.004182e9
lea eax, [ebp - 0x1b8]
push eax
lea ecx, [ebp - 0x1a0]
call fcn.00409b0f
lea ecx, [ebp - 0x1b8]
call fcn.00402475
mov ecx, dword [ebp + 0x10]
cmp byte [ecx], 0
jne 0x4236c9
push 0xff
lea eax, [ebp - 0x148]
push eax
push ebx
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameA]
test eax, eax
je 0x4236db
lea eax, [ebp - 0x148]
push 0x5c
push eax
call fcn.0068cf70
pop ecx
pop ecx
mov byte [eax + 1], bl
jmp 0x4236db
lea edx, [ebp - 0x148]
sub edx, ecx
mov al, byte [ecx]
mov byte [edx + ecx], al
inc ecx
test al, al
jne 0x4236d1
lea eax, [ebp - 0x148]
push eax
call fcn.00697589
cmp dword [0x7c5e20], 0x10
mov dword [esp], 0x784c84
cmovae esi, dword [0x7c5e0c]
push esi
call fcn.006947c9
mov edi, eax
pop ecx
pop ecx
test edi, edi
jne 0x423712
push 0xfffffffffffffffe
pop ebx
jmp 0x423823
push dword [ebp + 0x20]
lea ecx, [ebp - 0x170]
call fcn.004022f2
mov eax, dword [ebp + 0x24]
test eax, eax
je 0x423744
lea esi, [ebp + 0x24]
cmp byte [eax], 0
je 0x423744
push eax
lea ecx, [ebp - 0x170]
call fcn.004022f2
add esi, 4
mov eax, dword [esi]
test eax, eax
jne 0x42372a
mov eax, dword [ebp - 0x160]
add eax, 0xc8
push eax
call fcn.0042e7cd
cmp dword [ebp - 0x15c], 0x10
lea edx, [ebp - 0x170]
lea ecx, [ebp - 0x1a0]
mov esi, eax
cmovae edx, dword [ebp - 0x170]
lea eax, [ebp - 0x44]
cmp dword [ebp - 0x18c], 0x10
push edx
push dword [ebp + 0x1c]
cmovae ecx, dword [ebp - 0x1a0]
push dword [ebp - 0x1bc]
push ecx
push eax
push str._TIME:_s___FILE:_s__s___d___OUT:_s_n
push esi
call fcn.004035a8
push 2
push ebx
push edi
call fcn.00694bab
mov ecx, esi
add esp, 0x2c
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4237aa
push edi
sub ecx, edx
push 1
push ecx
push esi
call fcn.00696d66
push edi
call fcn.00694856
add esp, 0x14
cmp dword [ebp + 8], 2
jne 0x42381c
cmp byte [0x7c5cf0], 0
je 0x42381c
cmp dword [0x7b7410], 0x10
mov eax, 0x7b73fc
push 0x784c84
cmovae eax, dword [0x7b73fc]
push eax
call fcn.006947c9
mov edi, eax
pop ecx
pop ecx
test edi, edi
je 0x42381c
mov ecx, esi
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x423800
push edi
sub ecx, edx
push 1
push ecx
push esi
call fcn.00696d66
push edi
call fcn.00694856
add esp, 0x14
push esi
call fcn.0042e7c8
pop ecx
lea ecx, [ebp - 0x170]
call fcn.00402475
lea ecx, [ebp - 0x1a0]
call fcn.00402475
lea ecx, [ebp - 0x188]
call fcn.00402475
mov eax, ebx
call fcn.00573ba7
ret