Function at 0x1000df6a
Capabilities:
Write file on windows

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x654
mov eax, dword [0x10020014]
xor eax, esp
mov dword [esp + 0x650], eax
push ebx
mov ebx, dword [ebp + 0xc]
push esi
mov esi, ecx
mov dword [esp + 0x10], ebx
push edi
mov dword [esp + 0x10], esi
cmp dword [esi + 4], 0xffffffff
je 0x1000dfa1
mov ecx, dword [esi]
call fcn.1000d7f0
mov eax, dword [esi]
or dword [esi + 4], 0xffffffff
mov edi, dword [ebp + 8]
cmp edi, dword [eax + 4]
jl 0x1000dfcb
mov eax, 0x10000
mov ecx, dword [esp + 0x65c]
pop edi
pop esi
pop ebx
xor ecx, esp
call fcn.1000e71a
mov esp, ebp
pop ebp
ret 0x10
cmp dword [eax + 0x10], edi
jle 0x1000dfe5
mov ecx, eax
call fcn.1000d24e
jmp 0x1000dfe0
mov ecx, dword [esi]
call fcn.1000d285
mov eax, dword [esi]
cmp dword [eax + 0x10], edi
jl 0x1000dfd9
lea eax, [esp + 0x18]
mov ecx, esi
push eax
push edi
call fcn.1000d989
test byte [esp + 0x224], 0x10
movzx eax, word [ebx]
je 0x1000e02c
cmp eax, 0x2f
je 0x1000e01f
cmp eax, 0x5c
je 0x1000e01f
test ax, ax
je 0x1000e017
cmp word [ebx + 2], 0x3a
je 0x1000e01f
lea ecx, [esi + 0x244]
jmp 0x1000e021
xor ecx, ecx
mov edx, ebx
call fcn.1000de3e
xor eax, eax
jmp 0x1000dfb4
mov edx, ebx
mov ecx, ebx
test ax, ax
je 0x1000e05f
push 0x5c
pop esi
push 0x2f
mov edi, eax
pop ebx
cmp di, bx
je 0x1000e047
cmp di, si
jne 0x1000e04a
lea edx, [ecx + 2]
add ecx, 2
movzx eax, word [ecx]
mov edi, eax
test ax, ax
jne 0x1000e03d
mov esi, dword [esp + 0x10]
mov ebx, dword [esp + 0x14]
lea edi, [esp + 0x248]
mov ecx, ebx
sub edi, ebx
movzx eax, word [ecx]
mov word [edi + ecx], ax
lea ecx, [ecx + 2]
test ax, ax
jne 0x1000e06a
xor edi, edi
cmp edx, ebx
jne 0x1000e08b
xor eax, eax
mov word [esp + 0x248], ax
jmp 0x1000e0cf
mov eax, edx
sub eax, ebx
and eax, 0xfffffffe
cmp eax, 0x208
jae 0x1000e219
xor ecx, ecx
mov word [esp + eax + 0x248], cx
mov ax, word [esp + 0x248]
push 0x2f
pop ecx
cmp ax, cx
je 0x1000e0f7
push 0x5c
pop ecx
cmp ax, cx
je 0x1000e0f7
test ax, ax
je 0x1000e0cf
cmp word [esp + 0x24a], 0x3a
je 0x1000e0f7
push edx
lea eax, [esp + 0x24c]
push eax
lea ebx, [esi + 0x244]
push ebx
lea eax, [esp + 0x45c]
push 0x10007028
push eax
call dword [sym.imp.USER32.dll_wsprintfW]
add esp, 0x14
jmp 0x1000e118
push edx
lea eax, [esp + 0x24c]
push eax
lea eax, [esp + 0x458]
push 0x1000701c
push eax
call dword [sym.imp.USER32.dll_wsprintfW]
add esp, 0x10
mov ebx, edi
lea edx, [esp + 0x248]
mov ecx, ebx
call fcn.1000de3e
push edi
push dword [esp + 0x228]
lea eax, [esp + 0x458]
push 2
push edi
push edi
push 0x40000000
push eax
call dword [sym.imp.KERNEL32.dll_CreateFileW]
mov dword [esp + 0x10], eax
cmp eax, 0xffffffff
jne 0x1000e158
mov eax, 0x200
jmp 0x1000dfb4
mov edx, dword [esi + 0x23c]
mov ecx, dword [esi]
call fcn.1000d469
cmp dword [esi + 0x240], edi
jne 0x1000e17e
push 0x4000
call fcn.1000e769
pop ecx
mov dword [esi + 0x240], eax
mov edx, dword [esi + 0x240]
lea eax, [esp + 0xf]
mov ecx, dword [esi]
push eax
push 0x4000
call fcn.1000d5bd
mov ebx, eax
pop ecx
pop ecx
cmp ebx, 0xffffff96
je 0x1000e1fc
test ebx, ebx
js 0x1000e1ca
jle 0x1000e1bf
push edi
lea eax, [esp + 0x18]
push eax
push ebx
push dword [esi + 0x240]
push dword [esp + 0x20]
call dword [sym.imp.KERNEL32.dll_WriteFile]
test eax, eax
je 0x1000e1d1
cmp byte [esp + 0xf], 0
jne 0x1000e1d8
test ebx, ebx
jne 0x1000e17e
mov edi, 0x5000000
jmp 0x1000e201
mov edi, 0x400
jmp 0x1000e201
lea eax, [esp + 0x238]
push eax
lea eax, [esp + 0x22c]
push eax
lea eax, [esp + 0x238]
push eax
push dword [esp + 0x1c]
call dword [sym.imp.KERNEL32.dll_SetFileTime]
jmp 0x1000e201
mov edi, 0x1000
push dword [esp + 0x10]
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov ecx, dword [esi]
call fcn.1000d7f0
mov eax, edi
jmp 0x1000dfb4
call fcn.1000e8bb
int3