Function at 0x4035f0
Capabilities:
Encode data using base64

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x30
mov eax, dword [0x44c37c]
mov dword [ebp - 0xc], eax
fild dword [ebp - 0xc]
push ebx
push esi
or esi, 0xffffffff
fadd dword [0x44c484]
push edi
mov edi, 1
fstp dword [0x44c484]
add dword [0x44c37c], esi
fld qword [0x44c2c0]
fmul qword [0x4483a8]
fstp qword [0x44c2c0]
mov cx, word [0x44c2a8]
movzx edx, word [0x44c1c8]
movsx eax, cx
lea eax, [edx + eax - 0x554558a4]
mov word [0x44c1c8], ax
add dword [0x44c39c], edi
mov ecx, dword [0x44c39c]
sub ecx, 0x41846d91
cmp ecx, 0x92adc6fa
jle 0x403676
fld qword [0x4483a0]
fstp qword [0x44c060]
jmp 0x403698
mov dx, word [0x44c26c]
movsx eax, dx
mov dword [ebp - 0xc], eax
fild dword [ebp - 0xc]
fadd qword [0x44c410]
fistp qword [ebp - 0x20]
mov ecx, dword [ebp - 0x20]
mov dword [0x44c1cc], ecx
fld dword [0x44c088]
push 0x41
fmul qword [0x448398]
push 0x936
xor ebx, ebx
fstp dword [0x44c088]
fld dword [0x44c324]
mov edx, dword [0x44c408]
mov dword [ebp - 0xc], edx
fisub dword [ebp - 0xc]
fstp dword [0x44c324]
call fcn.0043e680
fld dword [0x44c340]
mov dword [ebp - 0xc], eax
fsub qword [0x44c058]
add esp, 8
fld qword [0x44c448]
fucompp
fnstsw ax
fld1
test ah, 0x44
jp 0x403744
add dword [0x44c408], edi
mov eax, dword [0x44c408]
mov cx, word [0x44c314]
add word [0x44c314], si
movsx edx, cx
add eax, 0xd5b243eb
cmp edx, eax
je 0x403744
fld dword [0x44c318]
fstp st(0)
fld dword [0x44c17c]
fstp st(0)
fld dword [0x44c318]
fsub st(1)
fstp dword [0x44c318]
fadd dword [0x44c17c]
fstp dword [0x44c17c]
jmp 0x403746
fstp st(0)
push 4
push 0x181b
call fcn.0043e680
mov esi, eax
lea edx, [ebp - 0x10]
add esp, 8
mov dword [0x44c250], 0x7f5b888c
sub edx, esi
mov cl, byte [eax]
mov byte [eax + edx], cl
add eax, edi
test cl, cl
jne 0x403766
mov ax, word [0x44c26c]
movsx ecx, ax
mov eax, dword [0x44c194]
sub eax, ecx
mov ecx, dword [0x44c408]
sub eax, ecx
push 4
mov dword [0x44c194], eax
push 0x1294
call fcn.0043e680
push esi
fld qword [0x44c008]
push 4
fsub qword [0x444e40]
mov edi, eax
fstp qword [0x44c008]
fld qword [0x44c008]
fadd qword [0x448390]
fistp qword [ebp - 0x20]
mov dx, word [ebp - 0x20]
mov word [0x44c190], dx
call fcn.004350f0
mov eax, dword [0x44c22c]
mov dword [ebp - 0x1c], eax
fild dword [ebp - 0x1c]
lea edx, [ebp - 0x14]
add esp, 0x10
mov eax, edi
fsub qword [0x44c0e0]
sub edx, edi
fsub qword [0x448388]
fstp qword [0x44c078]
mov cl, byte [eax]
mov byte [eax + edx], cl
inc eax
test cl, cl
jne 0x4037f7
mov cx, word [0x44c398]
fld qword [0x44c448]
movzx edx, word [0x44c190]
movsx eax, cx
movsx ecx, dx
sub ecx, eax
add ecx, 0x31b920a2
mov dword [ebp - 0x1c], ecx
push 4
push 0x2862
fild dword [ebp - 0x1c]
fsubp st(1)
fstp qword [0x44c448]
inc word [0x44c398]
call fcn.0043e680
fld qword [0x448380]
push edi
fstp qword [0x44c118]
push 4
mov esi, eax
call fcn.004350f0
movzx edx, word [0x44c1a4]
sub edx, 0x7e1d34f2
mov word [0x44c1a4], dx
lea edx, [ebp - 0x18]
add esp, 0x10
mov eax, esi
sub edx, esi
mov cl, byte [eax]
mov byte [eax + edx], cl
inc eax
test cl, cl
jne 0x403878
fld dword [0x44c454]
mov ax, word [0x44c450]
movsx ecx, ax
add ecx, 0x6ecdbcde
mov dword [ebp - 0x1c], ecx
push esi
push 4
fisub dword [ebp - 0x1c]
fstp dword [0x44c454]
call fcn.004350f0
mov edx, dword [0x44c294]
mov eax, 0xf08c787
sub eax, edx
mov dword [ebp - 0x1c], eax
fild dword [ebp - 0x1c]
add esp, 8
fadd dword [0x44c3b8]
fstp dword [0x44c3b8]
fld1
cmp dword [ebp + 0xc], ebx
je 0x403d2d
mov cx, word [0x44c170]
movsx edx, cx
cmp edx, 0xcb377f5c
jle 0x4038fc
fld dword [0x44c284]
fadd qword [0x44c3e0]
fstp qword [0x44c3e0]
fld qword [0x44c1b0]
mov eax, dword [ebp + 8]
fadd qword [0x448378]
mov edi, 1
sub dword [ebp + 0xc], edi
fstp qword [0x44c428]
mov cl, byte [eax]
fld qword [0x44c468]
mov byte [ebp + ebx - 4], cl
fsub qword [0x448370]
add eax, edi
mov dword [ebp + 8], eax
add ebx, edi
fadd dword [0x44c154]
fstp dword [0x44c154]
fld qword [0x44c468]
fadd st(1)
fstp qword [0x44c468]
mov edx, dword [0x44c13c]
mov dword [ebp - 0x1c], edx
fild dword [ebp - 0x1c]
fadd dword [0x44c1d4]
fstp dword [0x44c1d4]
mov ax, word [0x44c3c0]
mov edx, dword [0x44c48c]
movsx ecx, ax
mov eax, 0x50a250f7
sub eax, ecx
add eax, edx
add dword [0x44c404], eax
cmp ebx, 3
jne 0x403d0d
mov cl, byte [ebp - 4]
mov eax, 0xffff8fea
mov word [0x44c368], ax
fld qword [0x44c198]
fmul qword [0x448368]
mov dl, byte [ebp - 4]
shr cl, 2
mov byte [ebp - 8], cl
fstp qword [0x44c198]
and dl, bl
fld dword [0x44c0cc]
mov al, byte [ebp - 3]
fsub qword [0x448360]
mov cl, al
shl dl, 4
mov byte [ebp - 7], dl
fstp dword [0x44c0cc]
shr cl, 4
add byte [ebp - 7], cl
mov dword [0x44c250], 0xc1f95682
fld dword [0x44c2fc]
fsub qword [0x448358]
and al, 0xf
fld dword [0x44c0ac]
add al, al
add al, al
fcompp
mov byte [ebp - 6], al
fnstsw ax
fld dword [0x44c0ac]
fsub st(1)
fstp dword [0x44c0ac]
fld dword [0x44c2fc]
fsub st(1)
fstp dword [0x44c2fc]
test ah, 0x41
jne 0x403a5e
fld qword [0x44c070]
fadd st(1)
fstp qword [0x44c070]
fld dword [0x44c328]
fadd qword [0x44c070]
fadd qword [0x448350]
fld qword [0x44c140]
fucompp
fnstsw ax
test ah, 0x44
jp 0x403a5e
mov edx, 0x3d26
mov word [0x44c098], dx
fld dword [0x44c454]
mov al, byte [ebp - 2]
fsub qword [0x448348]
shr al, 6
add byte [ebp - 6], al
mov eax, 0x8aa4f4cd
fadd qword [0x44c3d0]
mov cl, byte [ebp - 2]
and cl, 0x3f
mov byte [ebp - 5], cl
fstp dword [0x44c434]
movzx edx, word [0x44c398]
sub eax, edx
mov word [0x44c210], ax
xor esi, esi
mov dword [0x44c08c], 0xa0147872
fld dword [0x44c284]
fld dword [0x44c21c]
fsub qword [0x448340]
fcompp
fnstsw ax
fld dword [0x44c284]
fsub st(1)
fstp dword [0x44c284]
test ah, 1
jne 0x403ae3
fld dword [0x44c1bc]
fsub qword [0x448338]
fstp dword [0x44c3b8]
cmp byte [ebp + 0x10], 0
je 0x403bff
mov cl, byte [ebp + esi - 8]
cmp cl, 0x3d
jbe 0x403bff
mov dx, word [0x44c418]
movsx eax, dx
mov dword [ebp - 0x1c], eax
fild dword [ebp - 0x1c]
fsub dword [0x44c3c8]
fadd qword [0x448330]
fcomp qword [0x448328]
fnstsw ax
fld dword [0x44c3c8]
fadd st(1)
fstp dword [0x44c3c8]
test ah, 1
jne 0x403b75
mov edx, dword [0x44c3f4]
mov dword [ebp - 0x1c], edx
fild dword [ebp - 0x1c]
fadd dword [0x44c2d0]
mov eax, dword [0x44c120]
mov edx, dword [0x44c2f8]
mov dword [ebp - 0x1c], eax
fiadd dword [ebp - 0x1c]
mov dword [ebp - 0x1c], edx
fild dword [ebp - 0x1c]
faddp st(1)
fistp qword [ebp - 0x28]
mov eax, dword [ebp - 0x28]
mov dword [0x44c2f8], eax
fsubr dword [0x44c2d0]
fstp dword [0x44c2d0]
jmp 0x403b77
fstp st(0)
cmp cl, 0x3e
jne 0x403bb5
mov ecx, dword [0x44c320]
sub dword [str.Tvs9], ecx
dec dword [0x44c320]
mov ecx, dword [ebp + 0x14]
lea edx, [ebp - 0x10]
push edx
call fcn.004256e0
add word [0x44c25c], di
movzx eax, word [0x44c25c]
add eax, 0x236d1acb
mov word [0x44c308], ax
jmp 0x403be5
fld dword [0x44c3c8]
lea ecx, [ebp - 0x14]
fmul qword [0x448320]
push ecx
mov ecx, dword [ebp + 0x14]
fstp dword [0x44c3c8]
call fcn.004256e0
fld dword [0x44c1f4]
fmul qword [0x448318]
fstp dword [0x44c1f4]
fld dword [0x44c1e4]
fadd qword [0x448310]
fistp qword [ebp - 0x30]
mov edx, dword [ebp - 0x30]
mov dword [0x44c234], edx
jmp 0x403c56
dec word [0x44c430]
fstp st(0)
movzx eax, word [0x44c430]
mov ecx, dword [0x44c150]
movzx edx, word [0x44c2b8]
cwde
lea eax, [ecx + eax - 0x1999dc28]
mov ecx, dword [ebp - 0xc]
imul edx, eax
movzx eax, byte [ebp + esi - 8]
mov word [0x44c2b8], dx
movzx edx, byte [eax + ecx]
mov ecx, dword [ebp + 0x14]
push edx
call fcn.004020a0
movzx eax, word [0x44c0b8]
imul eax, eax, 0xfaf8c263
mov word [0x44c0b8], ax
fld qword [0x44c3e8]
add esi, edi
fld1
fadd st(1), st(0)
fxch st(1)
fstp qword [0x44c3e8]
fld qword [0x44c3e8]
fsubr qword [0x448308]
fmul qword [0x44c348]
fstp qword [0x44c348]
fld qword [0x448300]
fstp qword [0x44c160]
cmp esi, 4
jne 0x403aa8
mov ecx, dword [0x44c304]
mov dword [ebp - 0x1c], ecx
fild dword [ebp - 0x1c]
xor ebx, ebx
fsub dword [0x44c340]
fmul qword [0x44c1e8]
fstp qword [0x44c1e8]
fld dword [0x44c340]
fsub st(1)
fstp dword [0x44c340]
mov edx, dword [0x44c020]
mov ax, word [0x44c168]
movsx ecx, ax
mov dword [ebp - 0x1c], edx
fild dword [ebp - 0x1c]
mov dword [ebp - 0x1c], ecx
fild dword [ebp - 0x1c]
fadd qword [0x44c080]
dec dword [0x44c020]
fsub qword [0x4482f8]
fucompp
fnstsw ax
test ah, 0x44
jnp 0x403d0d
fld qword [0x44c058]
fmul qword [0x4482f0]
fstp qword [0x44c058]
add word [0x44c170], di
cmp dword [ebp + 0xc], 0
mov dx, word [0x44c170]
movsx eax, dx
mov dword [str.__Cp], eax
jne 0x4038d8
inc word [0x44c480]
mov cx, word [0x44c480]
movsx edx, cx
mov dword [ebp + 0xc], edx
fild dword [ebp + 0xc]
fsub qword [0x44c0e0]
fistp qword [ebp - 0x30]
mov ax, word [ebp - 0x30]
mov word [0x44c100], ax
test ebx, ebx
je 0x4044cd
mov ecx, dword [0x44c3f4]
mov dword [ebp + 0xc], ecx
fild dword [ebp + 0xc]
or edi, 0xffffffff
fld qword [0x44c2b0]
fsub qword [0x4482e8]
fsubp st(1)
fistp qword [ebp - 0x30]
mov edx, dword [ebp - 0x30]
mov dword [0x44c3f4], edx
fld qword [0x44c2b0]
fadd st(1)
fstp qword [0x44c2b0]
mov ax, word [0x44c2b8]
movsx ecx, ax
add ecx, 0x20117d4f
mov dword [ebp + 0xc], ecx
fild dword [ebp + 0xc]
fstp dword [0x44c328]
add word [0x44c2b8], di
cmp ebx, 3
jge 0x403f34
mov esi, 3
fstp st(0)
sub esi, ebx
push esi
lea eax, [ebp + ebx - 4]
push 0
push eax
call fcn.00416de0
fld qword [0x4482e0]
fld qword [0x4482d8]
add esp, 0xc
fld qword [0x4482d0]
fld qword [0x4482c8]
fld1
fld dword [0x44c43c]
movzx edx, word [0x44c024]
movsx eax, dx
mov ecx, 0xa794c425
sub ecx, eax
mov dword [ebp + 0xc], ecx
fisub dword [ebp + 0xc]
fstp dword [0x44c43c]
add word [0x44c024], di
movzx edx, word [0x44c0b8]
movsx eax, dx
add eax, 0x784f6e60
mov dword [ebp + 0xc], eax
fild dword [ebp + 0xc]
fadd qword [0x44c058]
fcomp st(5)
fnstsw ax
fld qword [0x44c058]
fadd st(1)
fstp qword [0x44c058]
inc word [0x44c0b8]
test ah, 0x41
jne 0x403edc
fld dword [0x44c458]
fsub st(1)
fstp dword [0x44c458]
fld dword [0x44c454]
fsub st(4)
fadd dword [0x44c458]
fcomp st(3)
fnstsw ax
fld dword [0x44c454]
fsub st(1)
fstp dword [0x44c454]
test ah, 5
jp 0x403eb4
fld dword [0x44c188]
mov cx, word [0x44c2a8]
fstp st(0)
fld dword [0x44c188]
fadd st(1)
fstp dword [0x44c188]
add word [0x44c2a8], di
jmp 0x403edc
mov dx, word [0x44c18c]
movsx eax, dx
mov dword [ebp + 0xc], eax
fild dword [ebp + 0xc]
fld qword [0x44c260]
fsub st(3)
fsubp st(1)
fistp qword [ebp - 0x30]
mov cx, word [ebp - 0x30]
mov word [0x44c18c], cx
fld dword [0x44c200]
fadd st(1)
fstp dword [0x44c200]
fld dword [0x44c200]
mov dx, word [0x44c3c0]
mov ecx, dword [0x44c420]
movsx eax, dx
mov dword [ebp + 0xc], eax
fild dword [ebp + 0xc]
mov dword [ebp + 0xc], ecx
faddp st(1)
fild dword [ebp + 0xc]
faddp st(1)
fistp qword [ebp - 0x28]
mov edx, dword [ebp - 0x28]
mov dword [0x44c420], edx
add word [0x44c3c0], di
sub esi, 1
jne 0x403df4
fstp st(4)
fstp st(2)
fstp st(0)
fstp st(0)
movzx eax, word [0x44c210]
movsx ecx, ax
add ecx, 0x7fc68751
mov dword [ebp + 0xc], ecx
fild dword [ebp + 0xc]
fadd qword [0x44c278]
fadd qword [0x44c470]
mov dl, byte [ebp - 4]
shr dl, 2
mov byte [ebp - 8], dl
fstp qword [0x44c470]
add word [0x44c098], di
movzx eax, word [0x44c098]
movsx ecx, ax
mov dword [ebp + 0xc], ecx
fild dword [ebp + 0xc]
fld dword [0x44c044]
mov dx, word [0x44c480]
movsx eax, dx
mov dword [ebp + 0xc], eax
fild dword [ebp + 0xc]
faddp st(1)
fcompp
fnstsw ax
test ah, 0x41
jp 0x403faf
fld dword [0x44c180]
fsub qword [0x4482c0]
fstp dword [0x44c044]
fld qword [0x44c220]
mov cl, byte [ebp - 4]
fadd qword [0x4482b8]
movzx edx, byte [ebp - 3]
and cl, 3
shl cl, 4
mov byte [ebp - 7], cl
shr dl, 4
add byte [ebp - 7], dl
fstp qword [0x44c220]
movzx eax, word [0x44c308]
mov ecx, dword [0x44c31c]
cwde
imul ecx, eax
mov word [0x44c308], cx
add dword [0x44c31c], edi
movzx eax, word [0x44c190]
movzx edx, byte [ebp - 3]
mov ecx, dword [0x44c0e8]
and dl, 0xf
add dl, dl
add dl, dl
cwde
mov byte [ebp - 6], dl
lea edx, [ecx + eax + 0x7a3dc71b]
mov al, byte [ebp - 2]
mov dword [0x44c0e8], edx
mov cx, word [0x44c368]
movsx edx, cx
add edx, 0xa2ea753
mov dword [ebp + 0xc], edx
shr al, 6
add byte [ebp - 6], al
fild dword [ebp + 0xc]
fcomp qword [0x44c338]
fnstsw ax
test ah, 0x41
jne 0x404077
fld qword [0x44c390]
mov ax, word [0x44c310]
fsubr qword [0x4482b0]
movsx ecx, ax
mov dword [ebp + 0xc], ecx
fild dword [ebp + 0xc]
faddp st(1)
fistp qword [ebp - 0x30]
mov dx, word [ebp - 0x30]
mov word [0x44c310], dx
jmp 0x404089
fld qword [0x44c278]
fmul qword [0x4482a8]
fstp qword [0x44c278]
fld dword [0x44c43c]
mov al, byte [ebp - 2]
fsub qword [0x44c298]
and al, 0x3f
mov byte [ebp - 5], al
mov edx, 0x79df884b
fstp dword [0x44c43c]
xor esi, esi
fld qword [0x4482a0]
fstp qword [0x44c140]
mov ecx, dword [0x44c174]
sub edx, ecx
mov dword [ebp + 0xc], edx
fild dword [ebp + 0xc]
fmul qword [0x44c460]
fstp qword [0x44c460]
test ebx, ebx
jl 0x40430b
cmp byte [ebp + 0x10], 0
fstp st(0)
fld dword [0x44c484]
fadd qword [0x44c0a0]
fstp qword [0x44c0a0]
je 0x40421d
mov al, byte [ebp + esi - 8]
cmp al, 0x3d
jbe 0x40421d
add dword [0x44c3f8], 0x3e0da0c1
cmp al, 0x3e
jne 0x404182
add dword [0x44c0ec], edi
mov eax, dword [0x44c0ec]
sub eax, 0x56b7693c
mov dword [ebp + 0xc], eax
fild dword [ebp + 0xc]
lea ecx, [ebp - 0x10]
push ecx
mov ecx, dword [ebp + 0x14]
fmul qword [0x44c3a0]
fstp qword [0x44c3a0]
call fcn.004256e0
fld dword [0x44c290]
fsub qword [0x448298]
fsub qword [0x448290]
fcomp qword [0x448288]
fnstsw ax
fld dword [0x44c290]
fld1
fadd st(1), st(0)
fxch st(1)
fstp dword [0x44c290]
test ah, 0x44
jp 0x404209
add dword [0x44c36c], 0x7945c7b3
jmp 0x404209
fld dword [0x44c068]
mov dx, word [0x44c25c]
fsubr qword [0x448280]
movsx eax, dx
mov dword [ebp + 0xc], eax
lea edx, [ebp - 0x14]
push edx
fild dword [ebp + 0xc]
faddp st(1)
fistp qword [ebp - 0x30]
mov cx, word [ebp - 0x30]
mov word [0x44c25c], cx
mov ecx, dword [ebp + 0x14]
call fcn.004256e0
fld qword [0x44c0c0]
fld1
fsub st(1), st(0)
fxch st(1)
fstp qword [0x44c0c0]
fld qword [0x44c0c0]
mov eax, dword [str.Tvs9]
add eax, 0x2aba88dc
mov dword [ebp + 0xc], eax
fild dword [ebp + 0xc]
fsub qword [0x44c3a0]
fcompp
fnstsw ax
test ah, 0x41
jp 0x404209
mov ecx, dword [0x44c018]
add ecx, dword [0x44c1c4]
mov dword [0x44c1c4], ecx
inc dword [0x44c018]
fld dword [0x44c180]
fsub qword [0x448278]
fstp dword [0x44c180]
jmp 0x40425a
movzx edx, word [0x44c3c4]
movzx eax, byte [ebp + esi - 8]
imul edx, edx, 0xd44afd8b
mov ecx, dword [ebp - 0xc]
mov word [0x44c3c4], dx
movzx edx, byte [eax + ecx]
mov ecx, dword [ebp + 0x14]
push edx
call fcn.004020a0
fld qword [0x44c030]
fsub qword [0x448270]
fstp qword [0x44c030]
fld1
add dword [0x44c20c], edi
fld dword [0x44c0cc]
fadd st(1)
fstp dword [0x44c0cc]
mov eax, dword [0x44c20c]
mov dword [ebp + 0xc], eax
fild dword [ebp + 0xc]
fld dword [0x44c0cc]
fadd qword [0x448268]
fsub qword [0x448260]
fucompp
fnstsw ax
test ah, 0x44
jp 0x4042cc
fld dword [0x44c350]
fsub st(1)
fstp dword [0x44c350]
mov ecx, dword [0x44c120]
mov dword [ebp + 0xc], ecx
fild dword [ebp + 0xc]
fadd dword [0x44c188]
fsub dword [0x44c350]
fadd qword [0x44c390]
fstp qword [0x44c390]
inc dword [0x44c120]
mov edx, dword [0x44c1f0]
mov dword [ebp + 0xc], edx
fild dword [ebp + 0xc]
mov ecx, 0x79df884b
inc esi
fadd qword [0x44c3d0]
fstp qword [0x44c3d0]
mov eax, dword [0x44c174]
sub ecx, eax
cmp esi, ebx
mov dword [ebp + 0xc], ecx
fild dword [ebp + 0xc]
fmul qword [0x44c460]
fstp qword [0x44c460]
jle 0x4040d8
mov dx, word [0x44c2b8]
mov cx, word [0x44c418]
movsx eax, dx
movsx edx, cx
mov ecx, dword [0x44c1e0]
sub eax, edx
add ecx, eax
mov word [0x44c2b8], cx
add word [0x44c418], di
cmp ebx, 3
jge 0x404486
mov esi, 3
sub esi, ebx
jmp 0x404350
cmp byte [ebp + 0x10], 0
fstp st(0)
fld dword [0x44c1f4]
fadd qword [0x448258]
fstp dword [0x44c1f4]
fld dword [0x44c130]
mov dx, word [0x44c2a4]
fadd qword [0x448250]
movsx eax, dx
mov dword [ebp + 0xc], eax
fild dword [ebp + 0xc]
fsubp st(1)
fadd dword [0x44c17c]
fstp dword [0x44c17c]
je 0x4043d8
fld qword [0x448248]
lea ecx, [ebp - 0x18]
push ecx
fstp qword [0x44c410]
mov ecx, dword [ebp + 0x14]
call fcn.004256e0
fld1
add word [0x44c40c], di
mov dx, word [0x44c40c]
mov ecx, dword [0x44c014]
movsx eax, dx
add eax, ecx
add dword [0x44c3f8], eax
inc dword [0x44c014]
jmp 0x404468
fld qword [0x44c248]
mov dx, word [0x44c038]
fadd qword [0x448240]
movsx eax, dx
mov dword [ebp + 0xc], eax
push 0x3d
fsub qword [0x448238]
fild dword [ebp + 0xc]
fmulp st(1)
fistp qword [ebp - 0x30]
mov cx, word [ebp - 0x30]
mov word [0x44c038], cx
mov ecx, dword [ebp + 0x14]
call fcn.004020a0
fld qword [0x44c470]
fld1
fadd st(1), st(0)
fxch st(1)
fstp qword [0x44c470]
mov edx, dword [0x44c2f8]
mov dword [ebp + 0xc], edx
fild dword [ebp + 0xc]
fsub qword [0x44c470]
mov ax, word [0x44c3c4]
movsx ecx, ax
mov dword [ebp + 0xc], ecx
fild dword [ebp + 0xc]
fucompp
fnstsw ax
test ah, 0x44
jp 0x404468
mov edx, dword [0x44c114]
mov dword [ebp + 0xc], edx
fild dword [ebp + 0xc]
fstp dword [0x44c3c8]
add dword [0x44c114], edi
sub esi, 1
mov ax, word [0x44c0f0]
movsx ecx, ax
mov dword [ebp + 0xc], ecx
fild dword [ebp + 0xc]
fstp dword [0x44c200]
jne 0x404350
fsubr qword [0x44c118]
fstp qword [0x44c118]
fld qword [0x44c118]
mov edx, dword [0x44c014]
mov eax, dword [0x44c114]
mov dword [ebp + 0xc], edx
fild dword [ebp + 0xc]
mov dword [ebp + 0xc], eax
fsubp st(1)
fadd qword [0x448230]
fild dword [ebp + 0xc]
fmulp st(1)
fistp qword [ebp - 0x30]
mov ecx, dword [ebp - 0x30]
mov dword [0x44c114], ecx
inc dword [0x44c014]
jmp 0x4044cf
fstp st(0)
movzx edx, word [0x44c398]
mov ecx, dword [ebp - 0xc]
movsx eax, dx
push ecx
mov dword [0x44c320], eax
push 0x41
call fcn.004350f0
push 4
fld qword [0x44c2b0]
movzx edx, word [0x44c170]
fadd qword [0x448228]
movsx eax, dx
mov dword [ebp + 0xc], eax
lea edx, [ebp - 0x10]
push 0
fild dword [ebp + 0xc]
push edx
fmulp st(1)
fistp qword [ebp - 0x30]
mov cx, word [ebp - 0x30]
mov word [0x44c170], cx
fld qword [0x44c2b0]
fadd qword [0x444e40]
fstp qword [0x44c2b0]
call fcn.00416de0
fld qword [0x44c238]
push 4
fsub qword [0x448220]
lea eax, [ebp - 0x14]
push 0
push eax
fstp qword [0x44c238]
call fcn.00416de0
fld dword [0x44c21c]
push 4
fsubr qword [0x448218]
lea ecx, [ebp - 0x18]
push 0
push ecx
fmul dword [0x44c258]
fstp dword [0x44c258]
call fcn.00416de0
fld dword [0x44c328]
add esp, 0x2c
fmul qword [0x448210]
pop edi
pop esi
pop ebx
fstp dword [0x44c328]
mov esp, ebp
pop ebp
ret