Function at 0x6615d90
Capabilities:
Write file on windows

Disassembly:
push ebx
mov ebx, esp
sub esp, 8
and esp, 0xfffffff8
add esp, 4
push ebp
mov ebp, dword [ebx + 4]
mov dword [esp + 4], ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x6668cf0
mov eax, dword fs:[0]
push eax
push ebx
sub esp, 0x30
mov eax, dword [0x667c080]
xor eax, ebp
mov dword [ebp - 0x14], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x28], ecx
mov dword [ebp - 4], 0
mov eax, 0x7fffffff
mov ecx, dword [ebx + 0x18]
sub eax, ecx
mov dword [ebp - 0x20], ecx
cmp eax, 1
jb 0x6615fa1
cmp dword [ebx + 0x1c], 0xf
lea eax, [ebx + 8]
lea edx, [ecx + 1]
mov esi, 0xf
cmova eax, dword [ebx + 8]
lea edi, [ebp - 0x40]
mov dword [ebp - 0x1c], eax
xorps xmm0, xmm0
mov dword [ebp - 0x24], edx
movups xmmword [ebp - 0x40], xmm0
cmp edx, esi
jbe 0x6615e91
mov esi, edx
or esi, 0xf
cmp esi, 0x7fffffff
jbe 0x6615e51
mov ecx, 0x80000000
mov esi, 0x7fffffff
add ecx, 0x23
push ecx
call fcn.06644aa8
add esp, 4
test eax, eax
je 0x6615fab
mov ecx, dword [ebp - 0x20]
lea edi, [eax + 0x23]
mov edx, dword [ebp - 0x24]
and edi, 0xffffffe0
mov dword [edi - 4], eax
jmp 0x6615e8b
mov eax, 0x16
cmp esi, eax
cmovb esi, eax
lea eax, [esi + 1]
cmp eax, 0x1000
jb 0x6615e72
lea ecx, [eax + 0x23]
cmp ecx, eax
jbe 0x6615fa6
jmp 0x6615e2f
test eax, eax
je 0x6615e89
push eax
call fcn.06644aa8
mov ecx, dword [ebp - 0x20]
add esp, 4
mov edx, dword [ebp - 0x24]
mov edi, eax
jmp 0x6615e8b
xor edi, edi
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x40], edi
push ecx
push eax
push edi
mov dword [ebp - 0x30], edx
mov dword [ebp - 0x2c], esi
call fcn.06646180
mov eax, dword [ebp - 0x20]
add esp, 0xc
mov word [edi + eax], 0xa
mov ecx, dword [ebx + 0x1c]
cmp ecx, 0xf
jbe 0x6615edf
mov edx, dword [ebx + 8]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x6615ed5
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x6615fab
push ecx
push edx
call fcn.06644a77
add esp, 8
movups xmm1, xmmword [ebp - 0x40]
lea esi, [ebx + 8]
movq xmm0, qword [ebp - 0x30]
movq qword [ebx + 0x18], xmm0
mov edi, dword [ebx + 0x1c]
cmp edi, 0xf
movd edx, xmm1
movups xmmword [ebx + 8], xmm1
cmova esi, edx
mov ecx, esi
lea eax, [ecx + 1]
mov dword [ebp - 0x1c], eax
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x6615f10
sub ecx, dword [ebp - 0x1c]
je 0x6615f57
mov edi, dword [sym.imp.KERNEL32.dll_WriteFile]
mov ecx, esi
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x6615f27
push 0
lea eax, [ebp - 0x18]
sub ecx, edx
push eax
push ecx
push esi
push dword [ebp - 0x28]
call edi
test eax, eax
jne 0x6615f51
mov eax, esi
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x6615f46
sub eax, edx
jne 0x6615f22
mov edi, dword [ebx + 0x1c]
mov edx, dword [ebx + 8]
cmp edi, 0xf
jbe 0x6615f83
lea ecx, [edi + 1]
mov eax, edx
cmp ecx, 0x1000
jb 0x6615f79
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x6615fab
push ecx
push edx
call fcn.06644a77
add esp, 8
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov ecx, dword [ebp - 0x14]
xor ecx, ebp
call fcn.06644a69
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
call fcn.06611240
call fcn.06611170
call fcn.066498ca
int3