Function at 0x4bba7f
Capabilities:
Create directory
Timestomp file
Write file on windows

Disassembly:
push ebp
mov ebp, esp
push edi
push esi
push ebx
sub esp, 0x8c
mov edi, dword [ebp + 8]
mov ebx, dword [ebp + 0xc]
test edx, edx
mov dword [ebp - 0x5c], edi
mov edi, dword [ebp + 0x10]
mov dword [ebp - 0x68], ebx
mov dword [ebp - 0x6c], edi
je 0x4bbc4a
mov dword [ebp - 0x70], eax
mov eax, dword [ebp - 0x5c]
mov esi, ecx
mov ebx, edx
and ax, 0xf000
cmp ax, 0x4000
jne 0x4bbb30
mov dword [esp], edx
call dword [sym.imp.msvcrt.dll__mkdir]
test eax, eax
je 0x4bbbf8
call dword [sym.imp.msvcrt.dll__errno]
cmp dword [eax], 0x11
jne 0x4bbc4a
lea edx, [ebp - 0x48]
mov eax, ebx
call fcn.004bb918
test eax, eax
jne 0x4bbc4a
mov ax, word [ebp - 0x42]
mov edx, eax
and dx, 0xf000
cmp dx, 0x4000
jne 0x4bbc4a
xor eax, dword [ebp - 0x5c]
test ax, 0x1ff
je 0x4bbbf8
mov eax, dword [ebp - 0x5c]
mov dword [esp], ebx
and eax, 0x1ff
mov dword [esp + 4], eax
call dword [sym.imp.msvcrt.dll__chmod]
test eax, eax
je 0x4bbbf8
jmp 0x4bbc4a
mov dword [esp + 4], 0x507264
mov dword [esp], edx
call sub.msvcrt.dll_fopen
test eax, eax
mov dword [ebp - 0x60], eax
je 0x4bbc4a
mov dword [esp], esi
call fcn.0041fd54
test eax, eax
mov edi, eax
je 0x4bbb9b
mov dword [esp], esi
call fcn.0041fc6a
mov ecx, dword [ebp - 0x60]
mov dword [esp], edi
mov dword [esp + 8], eax
mov dword [esp + 4], 1
mov dword [esp + 0xc], ecx
call sub.msvcrt.dll_fwrite
mov dword [esp], esi
mov dword [ebp - 0x64], eax
call fcn.0041fc6a
mov edi, eax
mov esi, eax
xor eax, dword [ebp - 0x64]
sar edi, 0x1f
or eax, edi
setne dl
movzx edx, dl
jmp 0x4bbba1
xor edx, edx
xor esi, esi
xor edi, edi
mov eax, dword [ebp - 0x60]
mov dword [ebp - 0x64], edx
mov dword [esp], eax
call sub.msvcrt.dll_fclose
mov edx, dword [ebp - 0x64]
test edx, edx
jne 0x4bbbf4
cmp word [ebp - 0x5c], 0
je 0x4bbbf4
mov eax, dword [ebp - 0x5c]
mov dword [esp], ebx
and eax, 0x1ff
mov dword [esp + 4], eax
call dword [sym.imp.msvcrt.dll__chmod]
test eax, eax
mov eax, 2
jne 0x4bbcce
mov eax, dword [ebp - 0x70]
mov dword [esp + 4], esi
mov dword [esp + 8], edi
mov dword [esp], eax
call fcn.0040b5fc
jmp 0x4bbbf8
test edx, edx
jmp 0x4bbbd4
xor eax, eax
cmp dword [ebp - 0x6c], 0
js 0x4bbcce
lea edi, [ebp - 0x48]
lea esi, [ebp - 0x58]
mov dword [esp], edi
call dword [sym.imp.KERNEL32.dll_GetSystemTime]
push edx
mov dword [esp], edi
mov dword [esp + 4], esi
call dword [sym.imp.KERNEL32.dll_SystemTimeToFileTime]
mov eax, 0x989680
push ecx
push ecx
imul dword [ebp - 0x68]
mov dword [esp], ebx
add eax, 0xd53e8000
adc edx, 0x19db1de
mov dword [ebp - 0x50], eax
mov dword [ebp - 0x4c], edx
call fcn.004b1ce1
test eax, eax
mov edi, eax
jne 0x4bbc51
mov eax, 1
jmp 0x4bbcce
mov dword [esp + 0x18], 0
mov dword [esp + 0x14], 0x2000000
mov dword [esp + 0x10], 3
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp + 4], 0x100
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CreateFileW]
sub esp, 0x1c
mov ebx, eax
mov dword [esp], edi
call fcn.0040b268
cmp ebx, 0xffffffff
je 0x4bbc4a
lea eax, [ebp - 0x50]
mov dword [esp + 8], esi
mov dword [esp + 4], 0
mov dword [esp], ebx
mov dword [esp + 0xc], eax
call dword [sym.imp.KERNEL32.dll_SetFileTime]
sub esp, 0x10
mov esi, eax
mov dword [esp], ebx
call dword [sym.imp.KERNEL32.dll_CloseHandle]
push eax
xor eax, eax
test esi, esi
sete al
lea esp, [ebp - 0xc]
pop ebx
pop esi
pop edi
pop ebp
ret