Function at 0x424460
Capabilities:
Encode data using base64

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x60
mov ecx, 1
add dword [0x44c48c], ecx
mov eax, dword [0x44c48c]
add eax, dword [0x44c27c]
mov dx, word [0x44c2a0]
mov dword [ebp - 0xc], eax
fild dword [ebp - 0xc]
movsx eax, dx
mov dword [ebp - 0xc], eax
push ebx
or ebx, 0xffffffff
fild dword [ebp - 0xc]
push esi
fsub qword [0x44c300]
add word [0x44c2a0], bx
add dword [0x44c27c], ebx
fcompp
fnstsw ax
test ah, 0x41
jne 0x4244bf
fld dword [0x4489c8]
fstp dword [0x44c5ac]
fld dword [0x44c100]
push edi
fsub qword [0x4489c0]
xor edi, edi
fstp dword [0x44c100]
add dword [0x44c320], ecx
mov cx, word [0x44c330]
mov edx, dword [0x44c320]
movsx eax, cx
add edx, eax
mov word [0x44c330], dx
fld dword [0x44c578]
fsub qword [0x4489b8]
fcomp qword [0x4489b0]
fnstsw ax
fld dword [0x44c578]
fsub qword [0x445b18]
fstp dword [0x44c578]
test ah, 0x44
jp 0x42452e
mov eax, dword [0x44c474]
imul eax, eax, 0x41711020
mov dword [0x44c474], eax
mov ecx, dword [0x44c45c]
mov edx, dword [0x44c320]
mov dword [ebp - 0xc], ecx
fild dword [ebp - 0xc]
mov dword [ebp - 0xc], edx
fild dword [ebp - 0xc]
push 0x41
push 0x9ea
fsub qword [0x44c540]
fsubp st(1)
fistp qword [ebp - 0x20]
mov eax, dword [ebp - 0x20]
mov dword [0x44c45c], eax
add dword [0x44c320], ebx
call fcn.004140a0
movzx ecx, word [0x44c520]
sub ecx, 0x30f3be42
push 4
mov word [0x44c520], cx
push 0x27f1
mov dword [ebp - 0xc], eax
call fcn.004140a0
mov esi, eax
fld qword [0x44c1f0]
mov dx, word [0x44c044]
movzx ecx, word [0x44c23c]
fadd qword [0x4489a8]
inc word [0x44c044]
fsub qword [0x4489a0]
add word [0x44c23c], bx
movsx eax, dx
movsx edx, cx
add edx, eax
mov dword [ebp - 0x1c], edx
add esp, 0x10
fild dword [ebp - 0x1c]
fucompp
fnstsw ax
test ah, 0x44
jnp 0x4245f6
fld qword [0x44c2c0]
fsub qword [0x448998]
fsub qword [0x448990]
fmul dword [0x44c454]
fstp dword [0x44c454]
lea edx, [ebp - 0x10]
mov eax, esi
sub edx, esi
lea ecx, [ecx]
mov cl, byte [eax]
mov byte [edx + eax], cl
inc eax
test cl, cl
jne 0x424600
fld qword [0x44c428]
mov ax, word [0x44c388]
movsx ecx, ax
add ecx, 0x169fb314
mov dword [ebp - 0x1c], ecx
fild dword [ebp - 0x1c]
fcompp
fnstsw ax
fld qword [0x44c428]
fadd qword [0x445b18]
fstp qword [0x44c428]
test ah, 5
jp 0x424671
mov edx, dword [0x44c3c0]
mov dword [ebp - 0x1c], edx
fild dword [ebp - 0x1c]
fadd qword [0x44c528]
mov ax, word [0x44c0e0]
movsx ecx, ax
mov dword [ebp - 0x1c], ecx
fild dword [ebp - 0x1c]
faddp st(1)
fistp qword [ebp - 0x20]
mov dx, word [ebp - 0x20]
mov word [0x44c0e0], dx
push 4
push 0x699
call fcn.004140a0
fld dword [0x44c01c]
fcomp qword [0x448988]
mov ebx, eax
add esp, 8
fnstsw ax
fld dword [0x44c01c]
fld1
fadd st(1), st(0)
fxch st(1)
fstp dword [0x44c01c]
test ah, 0x44
jp 0x4246d9
inc dword [0x44c4a4]
fstp st(0)
mov ax, word [0x44c3c4]
mov ecx, dword [0x44c364]
mov edx, dword [0x44c4a4]
cwde
sub eax, ecx
lea eax, [edx + eax + 0x4648f9f5]
mov word [0x44c3c4], ax
dec dword [0x44c364]
jmp 0x424719
fld qword [0x44c300]
fadd st(1)
fstp qword [0x44c300]
fadd qword [0x44c2d0]
fstp qword [0x44c2d0]
fld qword [0x44c2d0]
fadd qword [0x44c300]
mov ecx, dword [0x44c168]
mov dword [ebp - 0x1c], ecx
fild dword [ebp - 0x1c]
faddp st(1)
fistp qword [ebp - 0x20]
mov edx, dword [ebp - 0x20]
mov dword [0x44c168], edx
push esi
push 4
call fcn.0043fe60
mov ax, word [0x44c484]
mov edx, dword [0x44c0a0]
movsx ecx, ax
mov eax, 0xdc7e973f
sub eax, ecx
mov cx, word [0x44c094]
sub eax, edx
movsx edx, cx
sub edx, 0x22ec2f23
add esp, 8
cmp eax, edx
je 0x4247d6
fld dword [0x44c258]
fld1
fadd st(1), st(0)
fxch st(1)
fstp dword [0x44c258]
fld dword [0x44c258]
fld dword [0x44c324]
fsubr qword [0x448980]
fucompp
fnstsw ax
fld dword [0x44c324]
fsub st(1)
fstp dword [0x44c324]
test ah, 0x44
jp 0x424804
inc dword [0x44c0c0]
movzx eax, word [0x44c0e0]
movsx ecx, ax
mov dword [ebp - 0x1c], ecx
fild dword [ebp - 0x1c]
fld qword [0x44c108]
mov edx, dword [0x44c0c0]
mov dword [ebp - 0x1c], edx
fild dword [ebp - 0x1c]
fsubp st(1)
fsubp st(1)
fistp qword [ebp - 0x20]
movzx eax, word [ebp - 0x20]
mov word [0x44c0e0], ax
fadd qword [0x44c108]
fstp qword [0x44c108]
jmp 0x424806
mov cx, word [0x44c180]
mov edx, dword [0x44c2cc]
movsx eax, cx
add edx, eax
cmp edx, 0x282455f1
jl 0x424806
fld dword [0x44c594]
fmul qword [0x448978]
fstp dword [0x44c594]
jmp 0x424806
fstp st(0)
lea edx, [ebp - 0x14]
mov eax, ebx
sub edx, ebx
lea ecx, [ecx]
mov cl, byte [eax]
mov byte [edx + eax], cl
inc eax
test cl, cl
jne 0x424810
mov ax, word [0x44c480]
movzx ecx, word [0x44c264]
movsx edx, cx
mov ecx, dword [0x44c2c8]
cwde
sub eax, edx
lea edx, [ecx + eax + 0x761d2dac]
push 4
mov dword [0x44c2c8], edx
push 0x2f6a
call fcn.004140a0
mov esi, eax
fld dword [0x44c340]
mov eax, dword [0x44c024]
mov dword [ebp - 0x1c], eax
push ebx
fisub dword [ebp - 0x1c]
push 4
fsub qword [0x448970]
fistp qword [ebp - 0x20]
movzx ecx, word [ebp - 0x20]
mov word [0x44c098], cx
inc dword [0x44c024]
call fcn.0043fe60
fld dword [0x44c584]
fsub qword [0x44c108]
lea edx, [ebp - 0x18]
add esp, 0x10
mov eax, esi
sub edx, esi
fsub qword [0x448968]
fadd dword [0x44c33c]
fstp dword [0x44c33c]
fld dword [0x44c584]
fadd qword [0x445b18]
fstp dword [0x44c584]
jmp 0x4248c0
mov cl, byte [eax]
mov byte [edx + eax], cl
inc eax
test cl, cl
jne 0x4248c0
movzx edx, word [0x44c180]
sub edx, 0x2509df8b
push esi
mov word [0x44c180], dx
push 4
call fcn.0043fe60
add esp, 8
fld1
or ebx, 0xffffffff
mov dword [0x44c2ec], 0x4ab42186
cmp dword [ebp + 0xc], edi
je 0x424e68
lea esi, [ebx + 2]
mov ax, word [0x44c4e0]
add word [0x44c4e0], bx
movsx ecx, ax
sub ecx, 0x75b88c97
cmp ecx, 0xf6b5c086
jg 0x42496a
fld qword [0x44c2b8]
fsub st(1)
fstp qword [0x44c2b8]
fld qword [0x44c2b8]
fadd qword [0x44c108]
mov dx, word [0x44c004]
movsx eax, dx
mov dword [ebp - 0x1c], eax
fild dword [ebp - 0x1c]
fmulp st(1)
fistp qword [ebp - 0x28]
mov cx, word [ebp - 0x28]
mov word [0x44c004], cx
fld qword [0x44c108]
fadd st(1)
fstp qword [0x44c108]
movzx edx, word [0x44c2a0]
mov ecx, dword [ebp + 8]
add edx, 0x13ae20ad
mov word [0x44c2a0], dx
movzx edx, word [0x44c038]
mov al, byte [ecx]
mov byte [ebp + edi - 4], al
movsx eax, dx
mov edx, dword [0x44c1d4]
imul edx, eax
sub dword [ebp + 0xc], esi
mov word [0x44c038], dx
add dword [0x44c1d4], ebx
mov ax, word [0x44c5d8]
mov edx, dword [0x44c15c]
cwde
add edx, eax
mov word [0x44c5d8], dx
mov eax, dword [0x44c334]
add eax, 0x12544d07
mov dword [ebp - 0x1c], eax
add edi, esi
add ecx, esi
fild dword [ebp - 0x1c]
mov dword [ebp + 8], ecx
fstp qword [0x44c560]
cmp edi, 3
jne 0x424e47
mov edx, dword [0x44c4c0]
movzx ecx, byte [ebp - 4]
mov dword [ebp - 0x1c], edx
shr cl, 2
mov byte [ebp - 8], cl
fild dword [ebp - 0x1c]
fld qword [0x44c420]
fsub qword [0x44c570]
fadd qword [0x448960]
fsubp st(1)
fistp qword [ebp - 0x30]
mov eax, dword [ebp - 0x30]
mov dword [0x44c4c0], eax
fld qword [0x44c420]
fadd st(1)
movzx ecx, byte [ebp - 4]
and cl, 3
shl cl, 4
mov byte [ebp - 7], cl
fstp qword [0x44c420]
fld dword [0x44c49c]
mov al, byte [ebp - 3]
fsub qword [0x448958]
shr al, 4
add byte [ebp - 7], al
fistp qword [ebp - 0x38]
mov edx, dword [ebp - 0x38]
mov dword [0x44c58c], edx
fld qword [0x44c3e8]
fadd qword [0x448950]
movzx ecx, byte [ebp - 3]
and cl, 0xf
add cl, cl
add cl, cl
fstp qword [0x44c3e8]
mov byte [ebp - 6], cl
fld qword [0x44c548]
fsub st(1)
fstp qword [0x44c548]
mov dx, word [0x44c180]
movsx eax, dx
mov dword [ebp - 0x1c], eax
fild dword [ebp - 0x1c]
fld qword [0x44c548]
mov dl, byte [ebp - 2]
fadd qword [0x448948]
shr dl, 6
add byte [ebp - 6], dl
fsubp st(1)
fistp qword [ebp - 0x40]
movzx ecx, word [ebp - 0x40]
mov word [0x44c180], cx
add word [0x44c0e0], si
add dword [0x44c0b4], ebx
mov eax, dword [0x44c0b4]
movzx ecx, word [0x44c0e0]
movsx edx, cx
add eax, 0xbebbc174
cmp edx, eax
je 0x424b0a
fld dword [0x44c1e4]
fsub st(1)
fstp dword [0x44c1e4]
fld dword [0x44c1e4]
fsub qword [0x448940]
fsub qword [0x448938]
fistp qword [ebp - 0x48]
mov eax, dword [ebp - 0x48]
mov dword [0x44c278], eax
fld dword [0x44c5d4]
mov cl, byte [ebp - 2]
fsub qword [0x448930]
and cl, 0x3f
mov byte [ebp - 5], cl
fcomp qword [0x448928]
fnstsw ax
fld dword [0x44c5d4]
fadd st(1)
fstp dword [0x44c5d4]
test ah, 0x44
jp 0x424b46
fld dword [0x448920]
fstp dword [0x44c57c]
mov edx, dword [0x44c510]
mov edi, dword [ebp + 0x14]
add edx, 0x4c45352f
mov dword [ebp - 0x1c], edx
fild dword [ebp - 0x1c]
xor esi, esi
or ebx, 0xffffffff
fadd qword [0x44c2b8]
fmul dword [0x44c184]
fstp dword [0x44c184]
cmp byte [ebp + 0x10], 0
mov dword [0x44c4b0], 0x37d31042
je 0x424cf7
mov cl, byte [ebp + esi - 8]
cmp cl, 0x3d
jbe 0x424cf7
fld dword [0x44c050]
fadd st(1)
fstp dword [0x44c050]
mov ax, word [0x44c524]
movsx edx, ax
mov dword [ebp - 0x1c], edx
fild dword [ebp - 0x1c]
fsub dword [0x44c050]
mov eax, dword [0x44c558]
add word [0x44c524], bx
add eax, 0x42491e6b
fadd qword [0x448918]
mov dword [ebp - 0x1c], eax
fild dword [ebp - 0x1c]
fcompp
fnstsw ax
test ah, 0x41
jne 0x424c2c
fld qword [0x44c4d0]
fstp st(0)
fld qword [0x44c5e8]
mov dx, word [0x44c158]
fstp st(0)
fld dword [0x44c568]
fstp st(0)
fld qword [0x44c4d0]
fadd st(1)
fstp qword [0x44c4d0]
fld qword [0x44c5e8]
fsub st(1)
fstp qword [0x44c5e8]
add word [0x44c158], bx
fld dword [0x44c568]
fadd st(1)
fstp dword [0x44c568]
cmp cl, 0x3e
jne 0x424c75
fstp st(0)
lea edx, [ebp - 0x10]
fld dword [0x44c0bc]
push edx
fsub qword [0x44c2d0]
mov eax, dword [0x44c3c0]
mov dword [ebp - 0x1c], eax
fsub qword [0x448910]
fild dword [ebp - 0x1c]
fmulp st(1)
fistp qword [ebp - 0x50]
mov ecx, dword [ebp - 0x50]
mov dword [0x44c3c0], ecx
mov ecx, edi
call fcn.004024c0
add dword [0x44c4cc], 0xaec9485
jmp 0x424ccb
fld qword [0x44c358]
lea eax, [ebp - 0x14]
fsub qword [0x448908]
push eax
mov ecx, edi
fadd dword [0x44c258]
fstp dword [0x44c258]
fsubr qword [0x44c358]
fstp qword [0x44c358]
call fcn.004024c0
mov cx, word [0x44c394]
movzx edx, word [0x44c0b0]
movsx eax, cx
add eax, 0xf27737fe
imul edx, eax
mov word [0x44c0b0], dx
add word [0x44c394], bx
fld dword [0x44c1e4]
fadd qword [0x448900]
fadd qword [0x44c250]
fstp qword [0x44c250]
fld dword [0x44c1e4]
fld1
fsub st(1), st(0)
fxch st(1)
fstp dword [0x44c1e4]
jmp 0x424d54
fld dword [0x44c584]
fsub qword [0x4488f8]
fcomp qword [0x4488f0]
fnstsw ax
test ah, 0x41
jp 0x424d2a
fadd dword [0x44c458]
fstp dword [0x44c458]
fld dword [0x44c458]
fstp qword [0x44c5b0]
jmp 0x424d2c
fstp st(0)
movzx eax, byte [ebp + esi - 8]
mov ecx, dword [ebp - 0xc]
movzx edx, byte [eax + ecx]
push edx
mov ecx, edi
call fcn.00413680
fld dword [0x44c0b8]
fsub qword [0x4488e8]
fstp dword [0x44c0b8]
fld1
fld dword [0x44c260]
inc esi
fsub qword [0x4488e0]
fistp qword [ebp - 0x58]
mov ax, word [ebp - 0x58]
mov word [0x44c4c4], ax
mov eax, dword [0x44c024]
mov ecx, dword [0x44c614]
inc dword [0x44c614]
add eax, 0x7451eff1
cmp eax, ecx
je 0x424db1
mov dx, word [0x44c1c4]
movzx ecx, word [0x44c374]
movsx eax, dx
add eax, 0xe6e95e79
imul ecx, eax
mov word [0x44c374], cx
add word [0x44c1c4], bx
jmp 0x424df8
fld dword [0x44c444]
fadd st(1)
fstp dword [0x44c444]
fld dword [0x44c444]
fadd dword [0x44c0d4]
mov edx, dword [0x44c194]
mov dword [ebp - 0x1c], edx
fsub qword [0x4488d8]
fild dword [ebp - 0x1c]
faddp st(1)
fistp qword [ebp - 0x60]
mov eax, dword [ebp - 0x60]
mov dword [0x44c194], eax
fld dword [0x44c0d4]
fsub st(1)
fstp dword [0x44c0d4]
cmp esi, 4
jne 0x424b72
fld dword [0x44c620]
xor edi, edi
fadd st(1)
or ebx, 0xffffffff
lea esi, [edi + 1]
fstp dword [0x44c620]
fld dword [0x44c620]
mov ecx, dword [0x44c168]
fsub qword [0x4488d0]
mov dword [ebp - 0x1c], ecx
fiadd dword [ebp - 0x1c]
fstp dword [0x44c440]
fld dword [0x44c5ac]
fmul qword [0x4488c8]
fstp dword [0x44c5ac]
mov dx, word [0x44c504]
movsx eax, dx
add dword [0x44c2ec], eax
add word [0x44c504], bx
cmp dword [ebp + 0xc], 0
jne 0x424904
mov eax, dword [0x44c510]
mov ecx, 0xa1efc19f
sub ecx, eax
mov dword [ebp + 0xc], ecx
fild dword [ebp + 0xc]
fadd dword [0x44c30c]
fstp dword [0x44c30c]
test edi, edi
je 0x4257ca
mov dx, word [0x44c290]
movsx eax, dx
mov ecx, 0xf64a3c71
sub ecx, eax
mov dword [ebp + 0xc], ecx
fild dword [ebp + 0xc]
fadd dword [0x44c598]
fstp dword [0x44c598]
add word [0x44c290], bx
fld qword [0x44c248]
mov edx, dword [0x44c58c]
mov ax, word [0x44c3f4]
inc word [0x44c3f4]
mov dword [ebp + 0xc], edx
fild dword [ebp + 0xc]
movsx ecx, ax
mov dword [ebp + 0xc], ecx
fsubp st(1)
fild dword [ebp + 0xc]
faddp st(1)
fcomp qword [0x4488c0]
fnstsw ax
test ah, 0x41
jne 0x424f0b
fld dword [0x44c1b0]
fsubr qword [0x4488b8]
fistp qword [ebp - 0x60]
mov dx, word [ebp - 0x60]
mov word [0x44c054], dx
cmp edi, 3
jge 0x424fd5
mov esi, 3
fstp st(0)
sub esi, edi
push esi
lea eax, [ebp + edi - 4]
push 0
push eax
call fcn.00425950
fld qword [0x4488b0]
fld qword [0x4488a8]
add esp, 0xc
fld qword [0x4488a0]
mov ecx, 1
fld qword [0x448898]
fld1
fld dword [0x44c578]
fsub st(5)
fadd st(4)
fcomp st(3)
fnstsw ax
test ah, 0x41
jp 0x424f83
add dword [0x44c0b4], ebx
mov eax, dword [0x44c0b4]
mov edx, 0x445e38aa
sub edx, eax
mov dword [ebp + 0xc], edx
fild dword [ebp + 0xc]
fmul qword [0x44c350]
fstp qword [0x44c350]
fld qword [0x44c5e0]
fsubr st(2)
fstp dword [0x44c568]
fld qword [0x44c5e0]
fsub st(1)
fstp qword [0x44c5e0]
mov eax, dword [0x44c03c]
sub eax, 0x4e916359
mov dword [ebp + 0xc], eax
fild dword [ebp + 0xc]
fadd qword [0x44c518]
fistp qword [ebp - 0x60]
mov edx, dword [ebp - 0x60]
mov dword [0x44c4cc], edx
add dword [0x44c03c], ecx
sub esi, ecx
jne 0x424f4c
fstp st(4)
fstp st(2)
fstp st(0)
fstp st(0)
jmp 0x424fda
mov ecx, 1
mov eax, dword [0x44c3ac]
mov edx, 0x24017807
sub edx, eax
cmp edx, 0xec683950
je 0x424ff8
add dword [0x44c3bc], 0xd61de97d
mov edx, dword [0x44c194]
movzx eax, byte [ebp - 4]
mov dword [ebp + 0xc], edx
shr al, 2
mov byte [ebp - 8], al
fild dword [ebp + 0xc]
fsub qword [0x44c2a8]
mov eax, dword [0x44c0ac]
mov edx, dword [0x44c610]
mov dword [ebp + 0xc], eax
fild dword [ebp + 0xc]
mov dword [ebp + 0xc], edx
fsubp st(1)
fild dword [ebp + 0xc]
faddp st(1)
fistp qword [ebp - 0x60]
mov eax, dword [ebp - 0x60]
mov dword [0x44c610], eax
add dword [0x44c0ac], ebx
fld qword [0x44c2a8]
fsub st(1)
movzx edx, byte [ebp - 4]
and dl, 3
shl dl, 4
mov byte [ebp - 7], dl
fstp qword [0x44c2a8]
fld qword [0x44c3d0]
fld dword [0x44c530]
fsub qword [0x448890]
fsubp st(1)
fstp qword [0x44c3d0]
fld dword [0x44c530]
movzx eax, byte [ebp - 3]
fadd st(1)
shr al, 4
add byte [ebp - 7], al
fstp dword [0x44c530]
add dword [0x44c4b0], 0x40e3393
movzx edx, byte [ebp - 3]
fld dword [str.l__NyN]
mov ax, word [0x44c330]
and dl, 0xf
add dl, dl
add dl, dl
mov byte [ebp - 6], dl
movsx edx, ax
mov dword [ebp + 0xc], edx
mov edx, dword [0x44c50c]
mov eax, 0x7ef38085
fild dword [ebp + 0xc]
sub eax, edx
mov edx, dword [0x44c4c0]
add edx, eax
fsubp st(1)
mov dword [ebp + 0xc], edx
fild dword [ebp + 0xc]
fcompp
fnstsw ax
fld dword [str.l__NyN]
fadd st(1)
fstp dword [str.l__NyN]
test ah, 0x41
jp 0x4250ff
add dword [0x44c474], ecx
mov eax, dword [0x44c474]
mov word [0x44c41c], ax
fld dword [0x44c338]
mov dl, byte [ebp - 2]
mov eax, dword [0x44c640]
shr dl, 6
add byte [ebp - 6], dl
mov edx, 0x5fdaf936
sub edx, eax
mov dword [ebp + 0xc], edx
fisub dword [ebp + 0xc]
fstp dword [0x44c338]
add dword [0x44c640], ecx
fld qword [0x44c518]
mov al, byte [ebp - 2]
fadd st(1)
and al, 0x3f
mov byte [ebp - 5], al
fstp qword [0x44c518]
fld qword [0x44c518]
mov dx, word [0x44c094]
fsub qword [0x448888]
movsx eax, dx
sub eax, 0x5fe10539
mov dword [ebp + 0xc], eax
fild dword [ebp + 0xc]
fcompp
fnstsw ax
test ah, 0x41
jp 0x425196
fld qword [0x44c2b8]
fld dword [0x44c1e4]
fsub qword [0x448880]
fsubp st(1)
fstp qword [0x44c2b8]
fld dword [0x44c1e4]
fsub st(1)
fstp dword [0x44c1e4]
jmp 0x4251da
add word [0x44c180], bx
movzx edx, word [0x44c1d0]
movsx eax, dx
mov dword [ebp + 0xc], eax
fild dword [ebp + 0xc]
fsub dword [0x44c230]
movzx edx, word [0x44c180]
movsx eax, dx
mov dword [ebp + 0xc], eax
fild dword [ebp + 0xc]
fsubp st(1)
fistp qword [ebp - 0x60]
movzx edx, word [ebp - 0x60]
mov word [0x44c534], dx
add word [0x44c1d0], cx
fld dword [0x44c0b8]
xor esi, esi
fsub st(1)
fstp dword [0x44c0b8]
fld dword [0x44c0b8]
fsub qword [0x448878]
fcomp qword [0x448870]
fnstsw ax
test ah, 0x41
jne 0x425256
mov eax, dword [0x44c610]
mov ecx, 0xfa9701d1
sub ecx, eax
mov dword [ebp + 0xc], ecx
fild dword [ebp + 0xc]
fld dword [0x44c5f4]
fsub qword [0x448868]
fucompp
fnstsw ax
test ah, 0x44
jnp 0x425244
fld dword [0x44c5ac]
fadd qword [0x448860]
fadd dword [0x44c13c]
fstp dword [0x44c13c]
jmp 0x425256
mov edx, dword [0x44c030]
mov dword [ebp + 0xc], edx
fild dword [ebp + 0xc]
fstp dword [0x44c4ac]
mov eax, 0xf5b
mov word [0x44c264], ax
test edi, edi
jl 0x4255e9
mov ebx, dword [ebp + 0x14]
cmp byte [ebp + 0x10], 0
mov ecx, 0x205e
mov word [0x44c1d0], cx
je 0x425457
mov al, byte [ebp + esi - 8]
cmp al, 0x3d
jbe 0x425457
fld dword [0x44c14c]
mov dx, word [0x44c41c]
fsubr qword [0x448858]
movsx ecx, dx
mov dword [ebp + 0xc], ecx
fild dword [ebp + 0xc]
fsubp st(1)
fstp dword [0x44c5d4]
cmp al, 0x3e
jne 0x425345
dec word [0x44c480]
mov dx, word [0x44c480]
movsx eax, dx
cmp eax, 0xe84957b8
jl 0x425317
movzx ecx, word [0x44c008]
movsx edx, cx
mov dword [ebp + 0xc], edx
fild dword [ebp + 0xc]
fld dword [0x44c238]
mov eax, dword [str.wMaHL]
fsub qword [0x448850]
mov dword [ebp + 0xc], eax
fiadd dword [ebp + 0xc]
fsubp st(1)
fistp qword [ebp - 0x60]
movzx ecx, word [ebp - 0x60]
mov word [0x44c008], cx
fadd dword [0x44c238]
fstp dword [0x44c238]
jmp 0x425319
fstp st(0)
lea edx, [ebp - 0x10]
push edx
mov ecx, ebx
call fcn.004024c0
mov eax, dword [0x44c5c8]
mov dword [ebp + 0xc], eax
fild dword [ebp + 0xc]
fadd dword [0x44c268]
fmul dword [0x44c3a8]
fstp dword [0x44c3a8]
fld1
jmp 0x4253bb
mov ecx, dword [0x44c104]
fstp st(0)
add ecx, 0x5f3e77a4
mov dword [ebp + 0xc], ecx
fild dword [ebp + 0xc]
lea edx, [ebp - 0x14]
push edx
mov ecx, ebx
fadd qword [0x44c600]
fstp qword [0x44c600]
call fcn.004024c0
dec word [0x44c330]
fld qword [0x44c420]
mov ax, word [0x44c330]
movsx ecx, ax
mov dword [ebp + 0xc], ecx
fild dword [ebp + 0xc]
fcompp
fnstsw ax
fld qword [0x44c420]
fld1
fsub st(1), st(0)
fxch st(1)
fstp qword [0x44c420]
test ah, 0x41
jne 0x4253bb
movzx edx, word [0x44c0b0]
sub edx, 0x7bc5cccc
mov word [0x44c0b0], dx
fld dword [0x44c0d0]
mov ax, word [0x44c3e0]
fadd qword [0x448848]
movsx ecx, ax
mov dword [ebp + 0xc], ecx
or ecx, 0xffffffff
fild dword [ebp + 0xc]
fsub qword [0x44c3a0]
add word [0x44c3e0], cx
fucompp
fnstsw ax
fld dword [0x44c0d0]
fsub st(1)
fstp dword [0x44c0d0]
test ah, 0x44
jnp 0x42556f
fld dword [0x44c1c0]
mov edx, dword [0x44c20c]
fadd qword [0x448840]
mov eax, 0x8f58dc9e
sub eax, edx
mov dword [ebp + 0xc], eax
fsubr qword [0x448838]
fild dword [ebp + 0xc]
fucompp
fnstsw ax
test ah, 0x44
jnp 0x42556f
mov edx, dword [0x44c15c]
mov eax, dword [0x44c090]
fld qword [0x44c358]
add dword [0x44c15c], ecx
fstp st(0)
add dword [0x44c090], ecx
jmp 0x42556f
mov cx, word [0x44c11c]
mov dx, word [0x44c41c]
movsx eax, cx
movsx ecx, dx
sub eax, ecx
mov dword [ebp + 0xc], eax
fild dword [ebp + 0xc]
fld qword [0x44c218]
fadd qword [0x448830]
fucompp
fnstsw ax
fld qword [0x44c218]
fsub st(1)
fstp qword [0x44c218]
dec word [0x44c41c]
test ah, 0x44
jnp 0x4254c1
fstp st(0)
fld dword [0x44c3a8]
fsub qword [0x448828]
fsub qword [0x448820]
fistp qword [ebp - 0x58]
mov dx, word [ebp - 0x58]
mov word [0x44c374], dx
jmp 0x4254f6
inc dword [0x44c3c0]
fsubr qword [0x44c300]
fstp qword [0x44c300]
mov eax, dword [0x44c3c0]
mov dword [ebp + 0xc], eax
fild dword [ebp + 0xc]
fsub qword [0x44c300]
fadd qword [0x448818]
fadd dword [0x44c08c]
fstp dword [0x44c08c]
movzx ecx, byte [ebp + esi - 8]
mov edx, dword [ebp - 0xc]
movzx eax, byte [ecx + edx]
push eax
mov ecx, ebx
call fcn.00413680
fld dword [0x44c1b0]
fld1
fadd st(1), st(0)
fxch st(1)
fstp dword [0x44c1b0]
fld dword [0x44c1b0]
fadd qword [0x448810]
fcomp qword [0x448808]
fnstsw ax
test ah, 0x41
jne 0x42556f
dec dword [0x44c0a0]
fld qword [0x44c1f0]
mov ecx, dword [0x44c0a0]
fadd qword [0x448800]
mov dword [ebp + 0xc], ecx
fild dword [ebp + 0xc]
fsubp st(1)
fmul dword [0x44c258]
fstp dword [0x44c258]
fld qword [0x44c1f0]
fadd st(1)
fstp qword [0x44c1f0]
fld dword [0x44c3a8]
mov edx, dword [0x44c488]
fsub qword [0x4487f8]
mov dword [ebp + 0xc], edx
fiadd dword [ebp + 0xc]
fcomp qword [0x4487f0]
fnstsw ax
test ah, 0x44
jp 0x4255b1
mov eax, dword [0x44c0c4]
mov dword [ebp + 0xc], eax
fild dword [ebp + 0xc]
fadd qword [0x44c220]
fistp qword [ebp - 0x50]
mov ecx, dword [ebp - 0x50]
mov dword [0x44c0c4], ecx
inc word [0x44c264]
mov dx, word [0x44c264]
movsx eax, dx
mov dword [ebp + 0xc], eax
inc esi
cmp esi, edi
fild dword [ebp + 0xc]
mov ecx, 0xf5b
fmul qword [0x44c5f8]
fstp qword [0x44c5f8]
mov word [0x44c264], cx
jle 0x42526c
cmp edi, 3
fld dword [0x4487e8]
fstp dword [0x44c238]
jge 0x425793
mov ebx, 3
sub ebx, edi
mov edi, dword [ebp + 0x14]
mov esi, 1
lea ecx, [ecx]
fld dword [0x44c57c]
fsub st(1)
fstp dword [0x44c57c]
fld dword [0x44c57c]
fsub qword [0x4487e0]
fsub qword [0x4487d8]
fcomp qword [0x4487d0]
fnstsw ax
test ah, 0x44
jp 0x42565f
mov dx, word [0x44c1c4]
movzx ecx, word [0x44c1c4]
movsx eax, dx
add eax, 0x63e3af60
imul ecx, eax
mov word [0x44c1c4], cx
jmp 0x425690
mov edx, dword [0x44c194]
mov dword [ebp + 0xc], edx
fild dword [ebp + 0xc]
fadd qword [0x44c300]
mov ax, word [0x44c524]
movsx ecx, ax
mov dword [ebp + 0xc], ecx
fild dword [ebp + 0xc]
fmulp st(1)
fistp qword [ebp - 0x60]
mov dx, word [ebp - 0x60]
mov word [0x44c524], dx
cmp byte [ebp + 0x10], 0
mov ax, word [0x44c388]
movsx ecx, ax
mov dword [ebp + 0xc], ecx
fild dword [ebp + 0xc]
fld dword [0x44c26c]
fadd dword [0x44c32c]
fadd qword [0x4487c8]
fsubp st(1)
fistp qword [ebp - 0x58]
mov dx, word [ebp - 0x58]
mov word [0x44c388], dx
je 0x42573c
add dword [0x44c27c], esi
mov ax, word [0x44c3f4]
mov ecx, dword [0x44c27c]
dec word [0x44c3f4]
cwde
add eax, 0xb7872e3d
add ecx, eax
cmp ecx, 0x5c9a599f
jge 0x42571b
mov edx, dword [0x44c640]
mov dword [ebp + 0xc], edx
fild dword [ebp + 0xc]
fmul qword [0x44c3e8]
fistp qword [ebp - 0x50]
mov eax, dword [ebp - 0x50]
mov dword [0x44c640], eax
fadd qword [0x44c3e8]
fstp qword [0x44c3e8]
jmp 0x42571d
fstp st(0)
lea ecx, [ebp - 0x18]
push ecx
mov ecx, edi
call fcn.004024c0
mov edx, dword [0x44c278]
imul edx, edx, 0x69429d60
mov dword [0x44c278], edx
jmp 0x425779
mov eax, dword [0x44c104]
fstp st(0)
imul eax, eax, 0x67ad89
mov dword [0x44c104], eax
push 0x3d
mov ecx, edi
call fcn.00413680
mov ecx, dword [0x44c510]
mov edx, dword [0x44c178]
mov eax, 0x35a4b363
sub eax, ecx
imul edx, eax
mov dword [0x44c178], edx
add dword [0x44c510], esi
mov eax, dword [0x44c194]
fld1
imul eax, eax, 0x6d5a1f5d
sub ebx, esi
mov dword [0x44c194], eax
jne 0x425610
fld dword [0x44c26c]
mov ecx, dword [0x44c580]
fsub qword [0x4487c0]
mov dword [ebp + 0xc], ecx
fild dword [ebp + 0xc]
or ebx, 0xffffffff
fmulp st(1)
fistp qword [ebp - 0x60]
mov edx, dword [ebp - 0x60]
mov dword [0x44c580], edx
fld dword [0x44c26c]
fadd st(1)
fstp dword [0x44c26c]
fsubr qword [0x44c048]
pop edi
fstp qword [0x44c048]
fld qword [0x44c048]
mov eax, dword [0x44c19c]
fadd qword [0x4487b8]
mov dword [ebp + 0xc], eax
fild dword [ebp + 0xc]
fadd dword [0x44c3a8]
mov ecx, dword [0x44c0c4]
add dword [0x44c0c4], ebx
mov dword [ebp + 0xc], ecx
fiadd dword [ebp + 0xc]
fcompp
fnstsw ax
test ah, 5
jp 0x425833
mov dx, word [0x44c55c]
mov ecx, dword [0x44c138]
movsx eax, dx
lea edx, [ecx + eax + 0x7db057e6]
mov dword [0x44c138], edx
add word [0x44c55c], bx
mov eax, dword [ebp - 0xc]
push eax
push 0x41
call fcn.0043fe60
mov esi, 1
add word [0x44c484], si
mov cx, word [0x44c484]
mov eax, dword [0x44c494]
mov edx, dword [0x44c364]
add dword [0x44c494], ebx
movsx ecx, cx
sub eax, ecx
add edx, 0x3993e5eb
add esp, 8
cmp eax, edx
jg 0x42588e
fld dword [0x44c09c]
fld dword [0x44c498]
fsubr qword [0x4487b0]
fsubp st(1)
fstp dword [0x44c09c]
push 4
lea eax, [ebp - 0x10]
push 0
push eax
call fcn.00425950
fld dword [0x4487a8]
push 4
fstp dword [0x44c258]
lea ecx, [ebp - 0x14]
push 0
push ecx
call fcn.00425950
mov dx, word [0x44c1b4]
movzx ecx, word [0x44c1d8]
movsx eax, dx
movsx edx, cx
mov ecx, dword [0x44c0f8]
add eax, edx
add ecx, eax
mov dword [ebp + 0xc], ecx
push 4
lea edx, [ebp - 0x18]
fild dword [ebp + 0xc]
push 0
push edx
fadd qword [0x44c060]
fstp qword [0x44c060]
add dword [0x44c0f8], esi
call fcn.00425950
fld dword [0x44c598]
fsub qword [0x445b18]
add esp, 0x24
pop esi
pop ebx
fstp dword [0x44c598]
mov eax, dword [0x44c0f8]
mov dword [ebp + 0xc], eax
fild dword [ebp + 0xc]
fadd dword [0x44c598]
movzx ecx, word [0x44c4fc]
movsx edx, cx
mov dword [ebp + 0xc], edx
fild dword [ebp + 0xc]
faddp st(1)
fistp qword [ebp - 0x60]
mov ax, word [ebp - 0x60]
mov word [0x44c4fc], ax
mov esp, ebp
pop ebp
ret