Function at 0x41c870
Capabilities:
Write file on windows

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x468f50
mov eax, dword fs:[0]
push eax
sub esp, 0x34
mov eax, dword [0x48706c]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x3c], ecx
mov dword [ebp - 4], 0
push 0x48a820
mov dword [ebp - 0x40], 0x48a820
call fcn.0042a844
add esp, 4
test eax, eax
je 0x41c8c6
push eax
call fcn.0042a3c4
add esp, 4
xorps xmm0, xmm0
mov dword [ebp - 0x14], 0
movq qword [ebp - 0x1c], xmm0
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x14], 0
lea eax, [ebp + 8]
mov byte [ebp - 4], 2
push eax
lea ecx, [ebp - 0x34]
call fcn.00403fc0
mov esi, dword [ebp - 0x3c]
mov byte [ebp - 4], 3
cmp dword [esi + 4], 0
je 0x41c950
mov ecx, dword [ebp - 0x24]
mov edx, dword [ebp - 0x20]
cmp ecx, edx
jae 0x41c929
lea eax, [ecx + 1]
cmp edx, 0x10
mov dword [ebp - 0x24], eax
lea eax, [ebp - 0x34]
cmovae eax, dword [ebp - 0x34]
mov word [eax + ecx], 0xff
jmp 0x41c93b
push 0xffffffffffffffff
mov byte [ebp - 0x38], 0
push dword [ebp - 0x38]
push ecx
lea ecx, [ebp - 0x34]
call fcn.00407cd0
mov ecx, dword [esi + 4]
lea edx, [ebp - 0x1c]
push edx
lea edx, [ebp - 0x34]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
jmp 0x41ca37
push 0x47ce9c
lea ecx, [ebp - 0x34]
call fcn.00403d90
cmp dword [ebp - 0x20], 0x10
lea edx, [ebp - 0x34]
mov edi, dword [ebp - 0x24]
lea ebx, [ebp - 0x34]
cmovae edx, dword [ebp - 0x34]
mov ecx, dword [ebp - 0x1c]
add edi, edx
cmp dword [ebp - 0x20], 0x10
mov edx, dword [ebp - 0x14]
cmovae ebx, dword [ebp - 0x34]
sub edx, ecx
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x38], edi
sub eax, ecx
sub edi, ebx
cmp edi, edx
jbe 0x41c9fc
cmp edi, 0x7fffffff
ja 0x41cb7d
mov esi, edx
mov eax, SysReAllocString
shr esi, 1
sub eax, esi
cmp edx, eax
jbe 0x41c9ad
mov esi, edi
jmp 0x41c9b4
add esi, edx
cmp esi, edi
cmovb esi, edi
test ecx, ecx
je 0x41c9e0
mov eax, ecx
cmp edx, 0x1000
jb 0x41c9d6
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41cb82
push edx
push ecx
call fcn.0042bafb
add esp, 8
push esi
lea ecx, [ebp - 0x1c]
call fcn.0040d180
mov esi, dword [ebp - 0x1c]
push edi
push ebx
push esi
call fcn.00443480
lea eax, [edi + esi]
mov dword [ebp - 0x18], eax
jmp 0x41ca34
cmp edi, eax
jbe 0x41ca26
push eax
push ebx
push ecx
lea edi, [eax + ebx]
call fcn.00443480
mov ebx, dword [ebp - 0x38]
mov esi, dword [ebp - 0x18]
sub ebx, edi
push ebx
push edi
push esi
call fcn.00443480
lea eax, [ebx + esi]
add esp, 0x18
mov dword [ebp - 0x18], eax
jmp 0x41ca37
push edi
push ebx
push ecx
lea esi, [ecx + edi]
call fcn.00443480
mov dword [ebp - 0x18], esi
add esp, 0xc
mov eax, dword [ebp - 0x3c]
add eax, 8
cmp dword [eax + 0x14], 0x10
jb 0x41ca45
mov eax, dword [eax]
push 0x47cea0
push eax
call fcn.0044b7b1
mov esi, eax
add esp, 8
test esi, esi
je 0x41ca7a
mov ecx, dword [ebp - 0x18]
mov edx, dword [ebp - 0x1c]
sub ecx, edx
push esi
push ecx
push 1
push edx
call fcn.00449eb1
push esi
call fcn.00446ac4
push esi
call fcn.00446b93
add esp, 0x18
mov byte [ebp - 4], 2
mov edx, dword [ebp - 0x20]
cmp edx, 0x10
jb 0x41cab2
mov ecx, dword [ebp - 0x34]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x41caa8
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41cb87
push edx
push ecx
call fcn.0042bafb
add esp, 8
mov byte [ebp - 4], 1
mov ecx, dword [ebp - 0x1c]
mov dword [ebp - 0x24], 0
mov dword [ebp - 0x20], 0xf
mov byte [ebp - 0x34], 0
test ecx, ecx
je 0x41cb11
mov edx, dword [ebp - 0x14]
mov eax, ecx
sub edx, ecx
cmp edx, 0x1000
jb 0x41caf2
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41cb8c
push edx
push ecx
call fcn.0042bafb
add esp, 8
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x14], 0
push 0x48a820
mov byte [ebp - 4], 4
call fcn.0042a869
add esp, 4
test eax, eax
je 0x41cb2f
push eax
call fcn.0042a3c4
add esp, 4
mov edx, dword [ebp + 0x1c]
cmp edx, 0x10
jb 0x41cb5f
mov ecx, dword [ebp + 8]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x41cb55
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41cb91
push edx
push ecx
call fcn.0042bafb
add esp, 8
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.0042bab5
mov esp, ebp
pop ebp
ret 0x18
call fcn.004085f0
call fcn.0044acc1
call fcn.0044acc1
call fcn.0044acc1
call fcn.0044acc1
int3