Function at 0x41e900
Capabilities:
Write file on windows

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x43c
mov eax, dword [0x452398]
mov dword [ebp - 4], eax
fild dword [ebp - 4]
fstp dword [ebp - 4]
fld dword [0x4523c0]
fadd dword [ebp - 4]
call fcn.00420a9c
mov ecx, dword [ebp + 8]
mov dword [0x452398], eax
call fcn.00406840
cmp eax, 0x8000
jbe 0x41ed4f
push ebx
lea ecx, [ebp - 0x12c]
push esi
mov dword [0x4523d8], 0xe800000
push ecx
mov dword [0x4523dc], 0xc1c57079
call fcn.0041deb0
mov esi, eax
call fcn.00416ee0
movzx edx, al
and edx, 0x80000003
jns 0x41e976
dec edx
or edx, 0xfffffffc
inc edx
add edx, 7
push edx
lea eax, [ebp + esi - 0x12c]
push eax
call fcn.00406ca0
fld qword [0x4520b8]
mov cx, word [0x452544]
fsub qword [0x44c110]
movsx edx, cx
mov dword [ebp - 4], edx
fstp qword [ebp - 0x14]
fild dword [ebp - 4]
fadd qword [ebp - 0x14]
call fcn.00420a9c
push 5
mov word [0x452544], ax
push 0x163
call fcn.00407770
fld dword [0x452210]
fstp qword [ebp - 0x14]
add esp, 0x14
fld dword [0x4523e0]
mov ebx, eax
fmul qword [ebp - 0x14]
mov edx, eax
fstp dword [0x4523e0]
nop
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x41e9e0
push edi
lea edi, [ebp - 0x12c]
sub eax, edx
dec edi
mov cl, byte [edi + 1]
inc edi
test cl, cl
jne 0x41e9f1
fld qword [0x452558]
mov ecx, eax
fsub qword [0x452108]
shr ecx, 2
mov esi, edx
rep movsd dword es:[edi], dword [esi]
fsub qword [0x44c108]
fstp qword [ebp - 0x14]
fld dword [0x452520]
fadd qword [ebp - 0x14]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
fstp dword [0x452520]
fld qword [0x452108]
fsub qword [0x44b7f0]
fstp qword [0x452108]
push 3
push 0x188
call fcn.00407770
mov edi, eax
mov eax, dword [0x45217c]
sub eax, 0x3cf0788b
add esp, 8
cmp eax, 0x46a9b12f
jl 0x41eaee
movzx ecx, word [0x452220]
movsx edx, cx
mov eax, 0x32a0a7c4
sub eax, edx
mov dword [ebp - 4], eax
fild dword [ebp - 4]
fstp qword [ebp - 0xc]
fld qword [0x452270]
movzx ecx, word [0x452170]
fsub qword [0x44c100]
movsx edx, cx
fstp qword [ebp - 0x14]
mov dword [ebp - 4], edx
fild dword [ebp - 4]
fsubr qword [ebp - 0x14]
fcomp qword [ebp - 0xc]
fnstsw ax
fld qword [0x452270]
fadd qword [0x44b7f0]
fstp qword [0x452270]
inc word [0x452220]
test ah, 1
jne 0x41eae4
fld dword [0x4524a0]
fstp qword [ebp - 0xc]
fld qword [0x452058]
fsubr qword [0x44c0f8]
fsubr qword [ebp - 0xc]
fstp dword [0x4524a0]
jmp 0x41eaee
add dword [0x452288], 0x6b796948
push ebx
push 5
call fcn.004164d0
lea eax, [ebp - 0x12c]
push edi
push eax
mov dword [0x4521bc], 0x542c031d
call fcn.00421546
push edi
push 3
mov esi, eax
call fcn.004164d0
add esp, 0x18
test esi, esi
je 0x41ed4c
mov eax, dword [0x4522a8]
mov cx, word [0x45209c]
movsx edx, cx
add eax, 0x6a9a1e8a
cmp eax, edx
jle 0x41eb4c
fld dword [0x4521b8]
fsub dword [0x44c0f0]
fstp dword [0x4521b8]
mov edi, dword [ebp + 8]
push esi
mov ebx, 1
push ebx
mov ecx, edi
call fcn.00406840
push eax
mov ecx, edi
call fcn.0041b4c0
push eax
call fcn.00421410
push esi
call fcn.00421245
add dword [0x452190], ebx
fld qword [0x452130]
fsub qword [0x44b7f0]
add esp, 0x14
fstp qword [0x452130]
mov eax, dword [0x452314]
add eax, dword [0x452190]
mov dword [ebp - 4], eax
fild dword [ebp - 4]
fstp qword [ebp - 0xc]
fld qword [0x452130]
mov ecx, dword [0x4520f8]
fsubr qword [ebp - 0xc]
mov dword [ebp - 4], ecx
fstp qword [ebp - 0xc]
fild dword [ebp - 4]
fadd qword [ebp - 0xc]
call fcn.00420a9c
mov dword [0x4520f8], eax
add dword [0x452314], ebx
mov ecx, edi
call fcn.004127b0
mov edx, dword [0x452154]
mov eax, 0x6b60f473
sub eax, edx
mov byte [ebp - 0x130], 0
cmp eax, 0xd31f824e
jge 0x41ec01
movzx ecx, word [0x45224c]
sub ecx, 0xc7fcf8d
mov word [0x45224c], cx
push 0x104
lea edx, [ebp - 0x234]
push edx
push 0
call dword [0x453c2c]
mov ax, word [0x4523c8]
movsx ecx, ax
mov edx, 0xefeeb965
sub edx, ecx
mov dword [ebp - 4], edx
mov byte [ebp - 0x235], 0
fild dword [ebp - 4]
fstp qword [ebp - 0xc]
fld qword [0x452218]
fsub qword [0x44c0e8]
fsub qword [0x44c0e0]
fld qword [ebp - 0xc]
fucompp
fnstsw ax
test ah, 0x44
jp 0x41ec9b
fld dword [0x452440]
fld1
fsubp st(1)
fstp dword [0x452440]
fld dword [0x452440]
mov eax, dword [0x452008]
mov cx, word [0x4523c4]
fstp qword [ebp - 0xc]
mov dword [ebp - 4], eax
fild dword [ebp - 4]
movsx edx, cx
mov dword [ebp - 4], edx
fadd qword [ebp - 0xc]
fstp qword [ebp - 0xc]
fild dword [ebp - 4]
fmul qword [ebp - 0xc]
call fcn.00420a9c
mov word [0x4523c4], ax
push 0x15
push 0x1797
call fcn.00407770
mov ecx, dword [0x4544ec]
mov esi, eax
mov eax, dword [0x454490]
push eax
push ecx
lea edx, [ebp - 0x234]
push edx
push esi
lea eax, [ebp - 0x43c]
push 0x207
push eax
call fcn.004220a1
fld dword [0x452094]
fmul dword [0x44c0d8]
push esi
push 0x15
fstp dword [0x452094]
call fcn.004164d0
mov ecx, dword [0x454490]
push ecx
call fcn.0041ad70
lea edx, [ebp - 0x43c]
push edx
lea eax, [ebp - 0x12c]
push eax
call fcn.00411970
push 0x208
lea ecx, [ebp - 0x43c]
push 0
push ecx
call fcn.00420970
add esp, 0x40
push 0x105
lea edx, [ebp - 0x234]
push 0
push edx
call fcn.00420970
add esp, 0xc
push 0x15f90
call dword [0x453c40]
lea eax, [ebp - 0x12c]
push eax
call dword [0x454744]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret