Function at 0x1000c700
Capabilities:
Write file on windows

Disassembly:
push ebp
push ebx
push edi
push esi
sub esp, 0x90
mov eax, dword [0x1002b040]
xor eax, esp
mov dword [esp + 0x8c], eax
cmp dword [ecx + 0x10], 0
sete byte [esp + 3]
mov dword [esp + 0x64], ecx
lea eax, [ecx + 0x14]
mov dword [esp + 0x5c], eax
mov dword [esp + 0x60], edx
lea eax, [edx + 4]
mov dword [esp + 0x58], eax
mov ebx, 0xf2588785
lea edi, [esp + 0x70]
mov ebp, dword [sym.imp.KERNEL32.dll_CreateFileA]
jmp 0x1000c760
push esi
push dword [esp + 0x18]
call fcn.100144ea
add esp, 8
mov ebx, 0x2471675c
nop word [eax + eax]
cmp ebx, 0xb82db92
jle 0x1000c7e0
cmp ebx, 0x2edea824
jle 0x1000c880
cmp ebx, 0x3f31d874
jg 0x1000c8d8
cmp ebx, 0x2edea825
je 0x1000c748
cmp ebx, 0x3e1918b4
jne 0x1000c760
mov eax, dword [esp + 0x10]
mov dword [esp + 0x34], eax
mov dword [esp + 0x38], edi
mov eax, dword [esp + 0x38]
mov dword [esp + 0x70], 0
mov eax, dword [esp + 0x20]
mov eax, dword [eax]
mov dword [esp + 0x3c], eax
mov eax, dword [esp + 0x24]
mov eax, dword [eax]
mov dword [esp + 0x40], eax
mov ecx, dword [esp + 0x3c]
mov ebx, 0xa96fdf0a
cmp ecx, dword [esp + 0x40]
je 0x1000c760
mov ebx, 0x3f31d875
jmp 0x1000c760
cmp ebx, 0xb13386ae
jg 0x1000c830
cmp ebx, 0xa7b9ec94
jle 0x1000c97a
cmp ebx, 0xa7b9ec95
je 0x1000c9fc
cmp ebx, 0xa96fdf0a
jne 0x1000c760
push dword [esp + 0x34]
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [esp + 0x38]
mov ebx, 0x884dffda
jmp 0x1000c760
cmp ebx, 0xf2588784
jle 0x1000c9b7
cmp ebx, 0xf2588785
je 0x1000ca4f
cmp ebx, 0x6d48751
jne 0x1000c760
mov eax, dword [esp + 8]
mov ecx, eax
and ecx, 0x24
add ecx, eax
mov edx, eax
not edx
add edx, ecx
and eax, 0xffffffdb
lea esi, [eax + edx]
add esi, 0x25
mov eax, dword [esp + 0x54]
mov dword [esp + 0x14], eax
mov ebx, 0x2edea825
jmp 0x1000c760
cmp ebx, 0xb82db93
je 0x1000ca69
cmp ebx, 0xea4ba5e
je 0x1000ca97
cmp ebx, 0x2471675c
jne 0x1000c760
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x4c]
add ecx, 0x18
mov ebx, 0xa96fdf0a
mov dword [esp + 0x1c], ecx
cmp ecx, dword [esp + 0x40]
mov ecx, dword [esp + 0x50]
mov ecx, dword [esp + 0x50]
mov dword [esp + 0x18], ecx
je 0x1000c760
mov ebx, 0xb13386af
jmp 0x1000c760
cmp ebx, 0x3f31d875
je 0x1000cab1
cmp ebx, 0x6a58ca85
jne 0x1000c760
mov dword [esp + 0x68], esi
mov eax, dword [esp + 0xc]
mov eax, dword [eax - 4]
mov dword [esp + 0x54], eax
mov ebx, dword [esp + 0xc]
lea ebp, [ebx - 4]
mov ecx, dword [esp + 0x54]
mov edx, 3
sub edx, ebx
mov esi, edx
and esi, 0xfc654103
mov eax, ebp
and eax, 0x39abefc
or eax, esi
xor eax, 0x39abefc
and eax, ecx
add eax, ecx
neg eax
add eax, ebx
add eax, 0xfffffffc
mov ebx, edx
xor ebx, ebp
and ebx, ecx
xor ebx, ebp
add ebx, eax
and edx, 0x26609a52
and ebp, 0xd99f65ad
or ebp, edx
xor ebp, 0xd99f65ad
or ebp, ecx
lea ecx, [ebx + ebp]
add ecx, 1
mov ebx, 0x6d48751
cmp ecx, 0x20
jb 0x1000c967
mov ebx, 0xdda29e86
lea edi, [esp + 0x70]
mov ebp, dword [sym.imp.KERNEL32.dll_CreateFileA]
mov esi, dword [esp + 0x68]
jmp 0x1000c760
cmp ebx, 0x9a0c748f
jne 0x1000cbb4
mov eax, dword [esp + 0x60]
mov dword [esp + 0x20], eax
mov eax, dword [esp + 0x20]
mov ecx, dword [eax]
mov eax, dword [esp + 0x58]
mov dword [esp + 0x24], eax
mov edx, dword [esp + 0x24]
mov ebx, 0x884dffda
cmp ecx, dword [edx]
je 0x1000c760
mov ebx, 0xb82db93
jmp 0x1000c760
cmp ebx, 0xb13386af
jne 0x1000cbc2
mov eax, dword [esp + 0x1c]
mov dword [esp + 0x4c], eax
mov eax, dword [esp + 4]
mov edx, dword [esp + 0x4c]
lea ecx, [esp + 0x74]
call fcn.10013010
mov eax, dword [esp + 0x6c]
mov eax, dword [eax]
mov ecx, dword [esp + 0x44]
cmp dword [ecx], 0x10
mov ecx, dword [esp + 0x48]
jae 0x1000caed
mov ecx, dword [esp + 4]
jmp 0x1000caef
mov eax, dword [esp + 0x48]
mov eax, dword [eax]
mov dword [esp + 0xc], eax
mov eax, dword [esp + 8]
mov ecx, eax
not ecx
mov edx, eax
and edx, 1
lea esi, [eax + eax]
lea edx, [edx + eax*2]
or esi, 2
sub edx, esi
xor eax, 1
add eax, edx
and ecx, 1
lea esi, [ecx + eax]
add esi, 1
mov eax, dword [esp + 0xc]
mov dword [esp + 0x14], eax
mov ebx, 0x6a58ca85
cmp esi, 0x1000
jae 0x1000c760
mov ebx, 0x2edea825
jmp 0x1000c760
cmp byte [esp + 3], 0
mov ebx, 0x884dffda
jne 0x1000c760
mov ebx, 0x9a0c748f
jmp 0x1000c760
mov ecx, dword [esp + 0x64]
mov dword [esp + 0x28], ecx
mov eax, dword [esp + 0x5c]
mov dword [esp + 0x2c], eax
mov eax, dword [esp + 0x2c]
cmp dword [eax], 0x10
mov dword [esp + 0x30], ecx
mov eax, dword [esp + 0x30]
jae 0x1000cb30
mov eax, dword [esp + 0x28]
jmp 0x1000cb32
mov eax, dword [esp + 0x2c]
cmp dword [eax], 0x10
mov eax, dword [esp + 0x30]
jae 0x1000cb72
mov eax, dword [esp + 0x28]
jmp 0x1000cb74
lea ecx, [esp + 0x74]
mov dword [esp + 4], ecx
lea eax, [esp + 0x84]
mov dword [esp + 0x6c], eax
lea eax, [esp + 0x88]
mov dword [esp + 0x44], eax
mov dword [esp + 0x48], ecx
mov dword [esp + 0x18], 0
mov ebx, 0xb13386af
mov ecx, dword [esp + 0x3c]
mov dword [esp + 0x1c], ecx
jmp 0x1000c760
mov ecx, dword [ecx]
push 0
push edi
push eax
push ecx
push dword [esp + 0x44]
call dword [sym.imp.KERNEL32.dll_WriteFile]
mov eax, dword [esp + 0x70]
add eax, dword [esp + 0x18]
mov dword [esp + 0x50], eax
mov eax, dword [esp + 0x44]
mov eax, dword [eax]
mov dword [esp + 8], eax
mov ecx, dword [esp + 8]
mov ebx, 0xa7b9ec95
cmp ecx, 0x10
jae 0x1000c760
mov ebx, 0x2471675c
jmp 0x1000c760
mov eax, dword [eax]
sub esp, 0x1c
movaps xmm0, xmmword [0x10023960]
movups xmmword [esp + 4], xmm0
mov dword [esp], eax
mov dword [esp + 0x18], 0
mov dword [esp + 0x14], 0x80
call ebp
mov ebx, 0xea4ba5e
mov dword [esp + 0x10], eax
cmp eax, 0xffffffff
je 0x1000c760
mov ebx, 0x3e1918b4
jmp 0x1000c760
mov eax, dword [eax]
sub esp, 0x1c
movaps xmm0, xmmword [0x10023950]
movups xmmword [esp + 4], xmm0
mov dword [esp], eax
mov dword [esp + 0x18], 0
mov dword [esp + 0x14], 0x80
call ebp
mov ebx, 0x884dffda
mov dword [esp + 0x10], eax
cmp eax, 0xffffffff
je 0x1000c760
mov ebx, 0x3e1918b4
jmp 0x1000c760
cmp ebx, 0x884dffda
jne 0x1000c760
jmp 0x1000cbd3
cmp ebx, 0xdda29e86
jne 0x1000c760
call fcn.100164ad
mov ecx, dword [esp + 0x8c]
xor ecx, esp
call fcn.100149fa
add esp, 0x90
pop esi
pop edi
pop ebx
pop ebp
ret