Function at 0x4ebca0
Capabilities:
Write file on windows

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
mov eax, 0x15dc
call fcn.005d9990
push ebx
push esi
mov esi, dword [ebp + 0xc]
cmp byte [esi], 0
push edi
je 0x4ebf36
mov eax, dword [0x673f70]
test eax, eax
je 0x4ebcdd
push 0xf
push esi
call fcn.0055a760
mov al, byte [esi]
add esp, 8
test al, al
je 0x4ebf36
push 0x1a
push esi
call fcn.005d9b20
add esp, 8
test eax, eax
je 0x4ebd02
lea esp, [esp]
push 0x1a
push esi
mov byte [eax], 0x20
call fcn.005d9b20
add esp, 8
test eax, eax
jne 0x4ebcf0
mov ebx, dword [ebp + 8]
cmp dword [ebx + 0x12ac], 0xffffffff
jne 0x4ebd4b
push 0
push 0x80
push 4
push 0
push 3
push 0x40000000
lea eax, [ebx + 0xa3a]
push eax
call dword [sym.imp.KERNEL32.dll_CreateFileA]
cmp eax, 0xffffffff
mov dword [ebx + 0x12ac], eax
je 0x4ebf36
push 2
push 0
push 0
push eax
call fcn.0049d260
add esp, 0x10
lea ecx, [esp + 0x148]
push 0x149a
push ecx
call fcn.004232e0
mov eax, dword [0x61a1f8]
add esp, 8
test eax, eax
je 0x4ebdd4
mov eax, dword [ebp + 0x10]
test eax, eax
jne 0x4ebdd4
lea edx, [esp + 0x148]
push 3
push edx
call fcn.00565af0
mov eax, dword [0x673f70]
add esp, 8
test eax, eax
je 0x4ebd9d
lea eax, [esp + 0x148]
push 0xf
push eax
call fcn.0055a760
add esp, 8
lea ecx, [esp + 0x148]
push 0x20
push ecx
call fcn.0055ac10
mov al, byte [esp + 0x150]
add esp, 8
test al, al
je 0x4ebdd4
lea edi, [esp + 0x148]
dec edi
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x4ebdc2
mov dx, word [0x5f4858]
mov word [edi], dx
mov eax, esi
mov edx, esi
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4ebdd8
lea edi, [esp + 0x148]
sub eax, edx
dec edi
lea esp, [esp]
mov cl, byte [edi + 1]
inc edi
test cl, cl
jne 0x4ebdf0
mov ecx, eax
shr ecx, 2
mov esi, edx
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea edi, [esp + 0x148]
dec edi
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x4ebe10
mov ax, word [0x5f4c8c]
mov cl, byte [0x5f4c8e]
mov word [edi], ax
mov eax, dword [0x61a200]
test eax, eax
mov byte [edi + 2], cl
je 0x4ebee2
mov esi, dword [ebp + 0x14]
cmp esi, dword [0x63caa4]
je 0x4ebee2
lea edx, [esp + 0x10]
push 0x132
push edx
call fcn.004232e0
push esi
call fcn.0043c610
push eax
push 3
lea eax, [esp + 0x24]
push str._c_02d
push eax
call fcn.005d9929
lea eax, [esp + 0x164]
add esp, 0x1c
lea edx, [eax + 1]
lea ebx, [ebx]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4ebe80
sub eax, edx
mov edx, eax
lea eax, [esp + 0x10]
lea esi, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4ebe92
sub eax, esi
inc edx
push edx
lea ecx, [esp + 0x14c]
push ecx
lea edx, [esp + eax + 0x150]
push edx
call fcn.005daa60
lea eax, [esp + 0x1c]
add esp, 0xc
lea edx, [eax + 1]
lea esp, [esp]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4ebec0
sub eax, edx
mov ecx, eax
shr ecx, 2
lea esi, [esp + 0x10]
lea edi, [esp + 0x148]
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea eax, [esp + 0x148]
lea edx, [eax + 1]
lea esp, [esp]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4ebef0
push 0
sub eax, edx
lea ecx, [esp + 0x10]
push ecx
push eax
mov eax, dword [ebx + 0x12ac]
lea edx, [esp + 0x154]
push edx
push eax
call dword [sym.imp.KERNEL32.dll_WriteFile]
cmp dword [0x673f78], 1
jne 0x4ebf36
mov ecx, dword [ebx + 0x12ac]
push ecx
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [ebx + 0x12ac], 0xffffffff
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret