Function at 0x48f570
Capabilities:
Write file on windows

Disassembly:
sub esp, 0x850
mov eax, dword [0x59a024]
xor eax, esp
mov dword [esp + 0x84c], eax
push ebp
mov ebp, dword [esp + 0x858]
push esi
xor esi, esi
push edi
mov dword [esp + 0x24], ebp
mov edi, ecx
mov dword [esp + 0x1c], esi
mov dword [esp + 0x20], esi
mov dword [esp + 0x10], esi
cmp ebp, esi
jne 0x48f5ce
push 0xffffe005
call fcn.004207c0
add esp, 4
pop edi
pop esi
or eax, 0xffffffff
pop ebp
mov ecx, dword [esp + 0x84c]
xor ecx, esp
call fcn.00409b58
add esp, 0x850
ret
cmp dword [esp + 0x864], esi
jne 0x48f5ff
push 0xffffe042
call fcn.004207c0
add esp, 4
pop edi
pop esi
or eax, 0xffffffff
pop ebp
mov ecx, dword [esp + 0x84c]
xor ecx, esp
call fcn.00409b58
add esp, 0x850
ret
push ebx
push ebp
call fcn.00420ef0
mov ebx, eax
add esp, 4
mov dword [esp + 0x18], ebx
cmp ebx, esi
je 0x48f6c8
mov eax, ebp
lea edx, [eax + 1]
lea esp, [esp]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x48f620
sub eax, edx
inc byte [eax + ebx - 1]
lea eax, [esp + 0x2c]
push eax
push ebp
call fcn.00554940
movzx esi, word [esp + 0x3a]
add esp, 8
test eax, eax
je 0x48f649
mov esi, 0x180
push 0x5970ec
push ebp
call fcn.0040aea0
mov ebp, eax
add esp, 8
mov dword [esp + 0x10], ebp
test ebp, ebp
je 0x48f6b7
push esi
push 0x302
push ebx
call fcn.00416f2e
mov esi, eax
add esp, 0xc
test esi, esi
jge 0x48f67a
xor esi, esi
jmp 0x48f6a1
push 0x597550
push esi
call fcn.005545d1
mov ebp, eax
add esp, 8
test ebp, ebp
jne 0x48f697
push esi
call fcn.00411853
add esp, 4
mov esi, ebp
test ebp, ebp
jne 0x48f6df
mov ebp, dword [esp + 0x10]
push ebp
call fcn.0040b073
add esp, 4
test esi, esi
je 0x48f6b7
push esi
call fcn.0040b073
add esp, 4
push ebx
call fcn.0054ec30
push ebx
call fcn.00420770
add esp, 8
xor esi, esi
push esi
call fcn.00420770
push esi
call fcn.00420770
add esp, 8
or eax, 0xffffffff
jmp 0x48f8c7
push edi
push str.name
call fcn.00436ee0
add esp, 8
mov dword [esp + 0x1c], eax
test eax, eax
je 0x48f705
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x48f6f8
sub eax, edx
mov dword [esp + 0x20], eax
push edi
push str.library
call fcn.00436ee0
mov ebx, eax
add esp, 8
test ebx, ebx
je 0x48f72d
lea edx, [eax + 1]
lea esp, [esp]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x48f720
sub eax, edx
mov dword [esp + 0x24], eax
mov ecx, dword [esp + 0x10]
push ecx
lea edx, [esp + 0x60]
push 0x800
push edx
xor esi, esi
xor edi, edi
call fcn.0040ac94
add esp, 0xc
test eax, eax
je 0x48f861
cmp byte [esp + 0x5c], 0xa
je 0x48f800
test edi, edi
jne 0x48f842
cmp dword [esp + 0x14], edi
jne 0x48f7ef
cmp dword [esp + 0x1c], edi
je 0x48f7a6
push 5
lea eax, [esp + 0x60]
push 0x565a40
push eax
call fcn.005533d0
add esp, 0xc
test eax, eax
jne 0x48f7a6
mov ecx, dword [esp + 0x20]
mov edx, dword [esp + 0x1c]
push ecx
push edx
lea eax, [esp + 0x69]
push eax
call fcn.00409be4
add esp, 0xc
test eax, eax
je 0x48f7d9
test ebx, ebx
je 0x48f7ef
push 8
lea ecx, [esp + 0x60]
push 0x565a48
push ecx
call fcn.005533d0
add esp, 0xc
test eax, eax
jne 0x48f7ef
mov edx, dword [esp + 0x24]
push edx
lea eax, [esp + 0x68]
push ebx
push eax
call fcn.00409be4
add esp, 0xc
test eax, eax
jne 0x48f7ef
push esi
call fcn.00420770
mov edi, 1
add esp, 4
xor esi, esi
mov dword [esp + 0x14], edi
jmp 0x48f842
push esi
lea edx, [esp + 0x60]
call fcn.0048f460
add esp, 4
mov esi, eax
jmp 0x48f842
test esi, esi
je 0x48f82e
mov eax, esi
lea edx, [eax + 1]
lea esp, [esp]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x48f810
push ebp
sub eax, edx
push 1
push eax
push esi
call fcn.0040b251
push esi
call fcn.00420770
add esp, 0x14
xor esi, esi
test edi, edi
jne 0x48f840
lea ecx, [esp + 0x5c]
push ebp
push ecx
call fcn.00554757
add esp, 8
xor edi, edi
mov edx, dword [esp + 0x10]
push edx
lea eax, [esp + 0x60]
push 0x800
push eax
call fcn.0040ac94
add esp, 0xc
test eax, eax
jne 0x48f750
mov ecx, dword [esp + 0x10]
push ecx
call fcn.0040b073
push ebp
call fcn.0040b073
add esp, 8
cmp dword [esp + 0x14], 0
je 0x48f895
mov edi, dword [esp + 0x28]
push edi
call fcn.0054ec30
mov edx, dword [esp + 0x1c]
push edi
push edx
call fcn.0054ec50
add esp, 0xc
jmp 0x48f8a2
mov eax, dword [esp + 0x18]
push eax
call fcn.0054ec30
add esp, 4
mov ecx, dword [esp + 0x18]
push ecx
call fcn.00420770
push ebx
call fcn.00420770
mov edx, dword [esp + 0x24]
push edx
call fcn.00420770
push esi
call fcn.00420770
add esp, 0x10
xor eax, eax
mov ecx, dword [esp + 0x85c]
pop ebx
pop edi
pop esi
pop ebp
xor ecx, esp
call fcn.00409b58
add esp, 0x850
ret