Function at 0x108c8e3
Capabilities:
Write file on windows

Disassembly:
mov edi, edi
push ebp
mov ebp, esp
sub esp, 0x48
lea eax, [ebp - 0x14]
mov dword [ebp - 0x48], eax
lea eax, [ebp - 0x18]
mov dword [ebp - 0x40], eax
push esi
lea eax, [ebp - 0x20]
mov dword [ebp - 0x38], eax
lea eax, [ebp - 0x48]
push eax
xor esi, esi
push 3
lea eax, [ebp - 0x10]
push eax
mov dword [ebp - 8], esi
mov dword [ebp - 0x10], esi
mov dword [ebp - 0x14], esi
mov dword [ebp - 0x18], esi
mov dword [ebp - 0x20], esi
mov dword [ebp - 0x44], 0x101b5f4
mov dword [ebp - 0x3c], 0x101b5e0
mov dword [ebp - 0x34], 0x101b574
call fcn.0108c81c
cmp eax, esi
mov dword [ebp - 4], eax
je 0x108c94a
push eax
push 0x2760197
call fcn.0107ae44
jmp 0x108ca93
lea eax, [ebp - 8]
push eax
lea eax, [ebp - 0xc]
push eax
call fcn.0108c768
cmp eax, esi
mov dword [ebp - 4], eax
je 0x108c969
push eax
push 0x2790197
jmp 0x108ca7a
lea eax, [ebp - 0x30]
push eax
push dword [ebp - 0xc]
push dword [ebp + 0xc]
push dword [ebp + 8]
call dword [ebp - 0x14]
cmp eax, esi
mov dword [ebp - 4], eax
je 0x108c98b
push eax
push 0x27e0197
jmp 0x108ca7a
push esi
push esi
push 1
push esi
push esi
push 0x40000000
push dword [ebp + 0x10]
call dword [sym.imp.KERNEL32.dll_CreateFileW]
cmp eax, 0xffffffff
mov dword [ebp + 0xc], eax
jne 0x108c9c2
call fcn.010a4804
push eax
push 0x28d0197
push dword [ebp + 0x10]
mov dword [ebp - 4], eax
call fcn.0107ae7f
jmp 0x108ca6a
mov ecx, dword [ebp - 0xc]
push ebx
xor eax, eax
add ecx, dword [ebp - 0x30]
push edi
mov edx, eax
adc edx, dword [ebp - 0x2c]
push eax
push dword [ebp - 0xc]
sub ecx, 1
sbb edx, esi
push edx
push ecx
call fcn.010a73e0
cmp dword [ebp - 0x30], esi
mov edi, dword [ebp + 0x1c]
mov dword [ebp - 0x28], eax
jne 0x108c9f1
cmp dword [ebp - 0x2c], esi
je 0x108ca55
xor ebx, ebx
lea eax, [ebp - 0x1c]
push eax
push dword [ebp - 0xc]
push dword [ebp - 8]
push dword [ebp + 8]
call dword [ebp - 0x18]
cmp eax, esi
mov dword [ebp - 4], eax
jne 0x108caa9
push esi
lea eax, [ebp - 0x24]
push eax
push dword [ebp - 0x1c]
push dword [ebp - 8]
push dword [ebp + 0xc]
call dword [sym.imp.KERNEL32.dll_WriteFile]
test eax, eax
je 0x108cab6
mov eax, dword [ebp - 0x1c]
cmp dword [ebp - 0x24], eax
jne 0x108cac3
sub dword [ebp - 0x30], eax
sbb dword [ebp - 0x2c], esi
add ebx, dword [ebp + 0x18]
xor edx, edx
mov eax, ebx
div dword [ebp - 0x28]
add eax, dword [ebp + 0x14]
cmp dword [ebp - 0x30], esi
mov dword [edi], eax
jne 0x108c9f3
cmp dword [ebp - 0x2c], esi
jne 0x108c9f3
mov eax, dword [ebp + 0x14]
mov ecx, dword [ebp + 0x18]
add eax, ecx
mov dword [edi], eax
push dword [ebp + 0xc]
call dword [sym.imp.KERNEL32.dll_CloseHandle]
pop edi
pop ebx
push dword [ebp + 8]
call dword [ebp - 0x20]
cmp eax, esi
je 0x108ca7f
push eax
push 0x2c10197
call fcn.0107ae44
cmp dword [ebp - 8], esi
je 0x108ca93
push 0x8000
push esi
push dword [ebp - 8]
call dword [sym.imp.KERNEL32.dll_VirtualFree]
cmp dword [ebp - 0x10], esi
pop esi
je 0x108caa2
push dword [ebp - 0x10]
call dword [sym.imp.KERNEL32.dll_FreeLibrary]
mov eax, dword [ebp - 4]
leave
ret 0x18
push eax
push 0x29b0197
call fcn.0107ae44
jmp 0x108ca5f
call fcn.010a4804
push eax
push 0x2a20197
jmp 0x108cace
mov eax, 0x80070026
push eax
push 0x2a70197
push dword [ebp + 0x10]
mov dword [ebp - 4], eax
call fcn.0107ae7f
jmp 0x108ca5f