Function at 0x43b600
Capabilities:
Encode data using base64

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x4c
fld dword [0x44b544]
mov edx, 0xffffaa34
fld1
mov dword [ebp - 0xc], 0
fadd st(1), st(0)
fxch st(1)
fstp dword [0x44b544]
mov eax, dword [0x44b444]
mov dword [ebp - 0x10], eax
fild dword [ebp - 0x10]
fld dword [0x44b544]
fadd qword [0x4474f8]
fsubp st(1)
fistp qword [ebp - 0x24]
mov ecx, dword [ebp - 0x24]
mov dword [0x44b444], ecx
add dword [0x44b218], 0xe9a5510b
mov word [0x44b044], dx
fld qword [0x44b4c0]
mov ax, word [0x44b4ac]
movsx ecx, ax
mov dword [ebp - 0x10], ecx
fild dword [ebp - 0x10]
fsubp st(1)
fstp dword [0x44b648]
fld qword [0x44b4c0]
fsub st(1)
fstp qword [0x44b4c0]
fld dword [0x44b6d4]
mov dx, word [0x44b420]
fadd qword [0x4474f0]
dec word [0x44b420]
movsx eax, dx
add eax, 0x71d380ee
mov dword [ebp - 0x10], eax
fild dword [ebp - 0x10]
fucompp
fnstsw ax
fld dword [0x44b6d4]
fadd st(1)
fstp dword [0x44b6d4]
test ah, 0x44
jp 0x43b6ee
fld dword [0x44b0e0]
fadd qword [0x4474e8]
fistp qword [ebp - 0x24]
mov cx, word [ebp - 0x24]
mov word [0x44b2c0], cx
fld dword [0x44b0e0]
fadd st(1)
fstp dword [0x44b0e0]
jmp 0x43b70e
fld dword [0x44b1bc]
fadd qword [0x4474e0]
fstp qword [0x44b048]
fld dword [0x44b1bc]
fsub st(1)
fstp dword [0x44b1bc]
mov dx, word [0x44b13c]
movsx eax, dx
add eax, 0x62d1cdfa
mov dword [ebp - 0x10], eax
fild dword [ebp - 0x10]
fld dword [0x44b654]
fsubr qword [0x4474d8]
fsub qword [0x4474d0]
fucompp
fnstsw ax
fadd dword [0x44b654]
fstp dword [0x44b654]
test ah, 0x44
jp 0x43b76e
movzx ecx, word [0x44b5f8]
movsx edx, cx
movzx ecx, word [0x44b044]
mov eax, 0xc9819646
sub eax, edx
imul ecx, eax
mov word [0x44b044], cx
jmp 0x43b780
fld qword [0x44b528]
fadd qword [0x4474c8]
fstp qword [0x44b528]
push ebx
push esi
push edi
push 0x41
push 0x3a88
call fcn.0041c7d0
mov dx, word [0x44b40c]
movzx ecx, word [0x44b368]
mov dword [ebp - 0x10], eax
movsx eax, dx
lea edx, [ecx + eax - 0x7d10051a]
push 4
mov word [0x44b368], dx
mov ebx, 1
add word [0x44b40c], bx
push 0x3bb9
call fcn.0041c7d0
mov esi, eax
fld dword [0x44b5d0]
mov eax, dword [section..data]
fadd qword [0x4474c0]
mov dword [ebp - 0x20], eax
lea edx, [ebp - 0x14]
add esp, 0x10
fsub qword [0x4474b8]
mov eax, esi
fild dword [ebp - 0x20]
sub edx, esi
fmulp st(1)
fistp qword [ebp - 0x24]
mov ecx, dword [ebp - 0x24]
mov dword [section..data], ecx
mov cl, byte [eax]
mov byte [edx + eax], cl
add eax, ebx
test cl, cl
jne 0x43b800
fld qword [0x44b258]
push 4
fsub qword [0x4474b0]
push 0x23ff
fmul qword [0x44b110]
fstp qword [0x44b110]
call fcn.0041c7d0
fld qword [0x44b658]
mov edi, eax
fsub qword [0x444e50]
push esi
push 4
fstp qword [0x44b658]
fld qword [0x44b658]
fadd qword [0x44b520]
movzx edx, word [0x44b1b4]
movsx eax, dx
mov dword [ebp - 0x20], eax
fild dword [ebp - 0x20]
faddp st(1)
fistp qword [ebp - 0x24]
mov cx, word [ebp - 0x24]
mov word [0x44b1b4], cx
call fcn.004133e0
movzx edx, word [0x44b018]
movsx eax, dx
mov dword [ebp - 0x20], eax
lea edx, [ebp - 0x18]
add esp, 0x10
fild dword [ebp - 0x20]
mov eax, edi
sub edx, edi
fmul qword [0x44b528]
fstp qword [0x44b528]
lea ecx, [ecx]
mov cl, byte [eax]
mov byte [edx + eax], cl
add eax, ebx
test cl, cl
jne 0x43b8a0
fld qword [0x44b2d8]
push 4
fsubr qword [0x4474a8]
push 0x2c6e
fstp dword [0x44b5bc]
fld qword [0x44b2d8]
fsub qword [0x444e50]
fstp qword [0x44b2d8]
call fcn.0041c7d0
mov cx, word [0x44b360]
mov dx, word [0x44b340]
mov esi, eax
movsx eax, cx
movsx ecx, dx
mov edx, dword [0x44b29c]
sub ecx, eax
lea eax, [ecx - 0x7b3a0b96]
add edx, eax
push edi
mov word [0x44b340], dx
push 4
call fcn.004133e0
lea edx, [ebp - 0x1c]
fld qword [0x44b6c0]
mov ax, word [0x44b090]
fsubr qword [0x4474a0]
movsx ecx, ax
mov dword [ebp - 0x20], ecx
add esp, 0x10
mov eax, esi
fild dword [ebp - 0x20]
sub edx, esi
faddp st(1)
fstp qword [0x44b400]
fld qword [0x44b6c0]
fsub qword [0x444e50]
fstp qword [0x44b6c0]
nop
mov cl, byte [eax]
mov byte [edx + eax], cl
add eax, ebx
test cl, cl
jne 0x43b950
mov dx, word [0x44b484]
fld qword [0x44b180]
push esi
fstp st(0)
push 4
call fcn.004133e0
fld dword [0x44b430]
fadd qword [0x447498]
add esp, 8
cmp dword [ebp + 0xc], 0
fstp dword [0x44b430]
fld1
je 0x43c07b
mov ax, word [0x44b294]
mov ecx, dword [0x44b550]
mov edx, dword [0x44b4cc]
cwde
sub dword [ebp + 0xc], ebx
add eax, ecx
lea eax, [edx + eax + 0x3ac96c93]
mov dword [0x44b4cc], eax
mov ecx, dword [0x44b2e4]
sub ecx, 0x70121cae
mov dword [ebp - 0x20], ecx
fild dword [ebp - 0x20]
fsub qword [0x44b518]
add dword [0x44b2e4], ebx
fcomp qword [0x447490]
fnstsw ax
test ah, 1
jne 0x43ba12
mov dx, word [0x44b380]
movsx eax, dx
mov dword [ebp - 0x20], eax
fild dword [ebp - 0x20]
fsub qword [0x44b508]
fsub qword [0x447488]
fstp qword [0x44b1c8]
fld qword [0x44b508]
fadd st(1)
fstp qword [0x44b508]
movzx eax, word [0x44b230]
fld qword [0x44b050]
mov esi, dword [ebp + 8]
mov dl, byte [esi]
mov ecx, dword [ebp - 0xc]
mov byte [ebp + ecx - 4], dl
mov dx, word [0x44b1b4]
cwde
movsx edx, dx
sub eax, edx
sub eax, 0x39dccd88
mov dword [ebp - 0x20], eax
or edi, 0xffffffff
add ecx, ebx
fild dword [ebp - 0x20]
add esi, ebx
mov dword [ebp - 0xc], ecx
mov dword [ebp + 8], esi
fsubp st(1)
fstp qword [0x44b050]
add word [0x44b230], di
add dword [0x44b334], 0x13a3aa85
movzx eax, word [0x44b250]
movsx edx, ax
mov dword [ebp - 0x20], edx
fild dword [ebp - 0x20]
fadd dword [0x44b454]
fstp dword [0x44b454]
cmp ecx, 3
jne 0x43c054
fld qword [0x44b558]
movzx eax, byte [ebp - 4]
fsub qword [0x447480]
shr al, 2
mov byte [ebp - 8], al
fstp qword [0x44b558]
fld dword [0x44b654]
mov al, byte [ebp - 4]
fsub qword [0x447478]
movzx edx, byte [ebp - 3]
and al, cl
shl al, 4
fstp dword [0x44b654]
mov byte [ebp - 7], al
shr dl, 4
add al, dl
mov byte [ebp - 7], al
mov ecx, 0x7f0
mov word [0x44b46c], cx
mov eax, dword [0x44b428]
movzx ecx, byte [ebp - 3]
imul eax, eax, 0xb91b4ad2
mov dword [0x44b428], eax
and cl, 0xf
fld dword [0x44b188]
add cl, cl
fadd st(1)
add cl, cl
mov byte [ebp - 6], cl
fstp dword [0x44b188]
fld qword [0x44b050]
fadd st(1)
fstp qword [0x44b050]
fld dword [0x44b188]
mov dx, word [0x44b5c0]
movsx eax, dx
mov dword [ebp - 0x20], eax
mov eax, 0xca855de2
fild dword [ebp - 0x20]
faddp st(1)
fld qword [0x44b3a0]
fld qword [0x44b050]
movzx ecx, byte [ebp - 2]
faddp st(2)
shr cl, 6
add byte [ebp - 6], cl
fsubrp st(1)
fstp qword [0x44b3a0]
add dword [0x44b1dc], ebx
mov edx, dword [0x44b1dc]
mov ecx, dword [0x44b3e0]
sub eax, edx
movzx edx, byte [ebp - 2]
imul ecx, eax
mov dword [0x44b3e0], ecx
and dl, 0x3f
mov byte [ebp - 5], dl
add dword [0x44b240], ebx
mov ecx, 0xf0b6af37
fld dword [str.6_TN]
fadd st(1)
fstp dword [str.6_TN]
mov eax, dword [0x44b240]
sub ecx, eax
mov dword [ebp - 0x20], ecx
fild dword [ebp - 0x20]
fld dword [str.6_TN]
fadd qword [0x44b320]
fcompp
fnstsw ax
test ah, 0x41
jne 0x43bbce
movzx edx, word [0x44b0e4]
add edx, 0x178c1e4a
mov word [0x44b0e4], dx
jmp 0x43bc2e
add dword [0x44b440], ebx
mov ecx, dword [0x44b43c]
mov edx, dword [0x44b440]
mov eax, 0x49308a6b
sub eax, ecx
mov cx, word [0x44b5c0]
add word [0x44b5c0], bx
add eax, edx
movsx edx, cx
cmp eax, edx
jl 0x43bc2e
mov eax, dword [0x44b120]
sub eax, 0x26f99fca
mov dword [ebp - 0x20], eax
fild dword [ebp - 0x20]
fadd dword [0x44b540]
mov ecx, dword [0x44b010]
mov dword [ebp - 0x20], ecx
fild dword [ebp - 0x20]
faddp st(1)
fistp qword [ebp - 0x2c]
mov edx, dword [ebp - 0x2c]
mov dword [0x44b010], edx
fld dword [0x44b384]
xor esi, esi
fadd st(1)
fstp dword [0x44b384]
fld dword [0x44b384]
fsub qword [0x44b5f0]
fadd qword [0x447470]
fcomp qword [0x447468]
fnstsw ax
fld qword [0x44b5f0]
fsub st(1)
fstp qword [0x44b5f0]
test ah, 1
jne 0x43bc83
fld qword [0x44b248]
fsubr qword [0x447460]
fmul dword [0x44b430]
fstp dword [0x44b430]
mov eax, dword [0x44b134]
movzx ecx, word [0x44b424]
add eax, 0x3db6db60
imul ecx, eax
mov word [0x44b424], cx
add dword [0x44b134], ebx
cmp byte [ebp + 0x10], 0
je 0x43be34
mov al, byte [ebp + esi - 8]
cmp al, 0x3d
jbe 0x43be34
mov edx, 0x10a
fstp st(0)
mov word [0x44b2c4], dx
cmp al, 0x3e
jne 0x43bd2d
fld dword [0x44b318]
fld qword [0x44b1a8]
mov ax, word [0x44b530]
mov edx, dword [0x44b500]
movsx ecx, ax
mov dword [ebp - 0x20], ecx
mov ecx, dword [ebp + 0x14]
lea eax, [ebp - 0x14]
fild dword [ebp - 0x20]
mov dword [ebp - 0x20], edx
push eax
fsubp st(1)
fild dword [ebp - 0x20]
faddp st(1)
fsubp st(1)
fstp dword [0x44b318]
add word [0x44b530], di
call fcn.0042abc0
fld1
add dword [0x44b038], 0xf103653
add dword [0x44b0cc], 0xcdba11d0
jmp 0x43bf07
movzx ecx, word [0x44b510]
movsx edx, cx
mov ecx, dword [0x44b440]
mov eax, 0x6cfac070
sub eax, edx
add ecx, eax
mov dword [ebp - 0x20], ecx
mov ecx, dword [ebp + 0x14]
lea edx, [ebp - 0x18]
fild dword [ebp - 0x20]
push edx
fmul dword [0x44b204]
fstp dword [0x44b204]
add word [0x44b510], bx
call fcn.0042abc0
mov eax, dword [0x44b568]
movzx ecx, word [0x44b024]
mov dword [ebp - 0x20], eax
movsx edx, cx
fild dword [ebp - 0x20]
mov dword [ebp - 0x20], edx
fild dword [ebp - 0x20]
fsub qword [0x44b458]
fucompp
fnstsw ax
fld qword [0x44b458]
fld1
fadd st(1), st(0)
fxch st(1)
fstp qword [0x44b458]
add word [0x44b024], bx
test ah, 0x44
jnp 0x43be25
fld dword [0x44b544]
fadd st(1)
fstp dword [0x44b544]
add word [0x44b0f0], bx
fld qword [0x44b2a0]
fsubr qword [0x447458]
fadd dword [0x44b544]
mov eax, dword [0x44b6a0]
mov dword [ebp - 0x20], eax
fild dword [ebp - 0x20]
fadd dword [0x44b1e4]
mov cx, word [0x44b0f0]
add dword [0x44b6a0], edi
movsx edx, cx
mov dword [ebp - 0x20], edx
fild dword [ebp - 0x20]
faddp st(1)
fucompp
fnstsw ax
fld qword [0x44b2a0]
fsub st(1)
fstp qword [0x44b2a0]
test ah, 0x44
jnp 0x43be25
mov eax, dword [0x44b5ac]
add eax, 0x24451c17
mov word [0x44b0d0], ax
add dword [0x44b0cc], 0xcdba11d0
jmp 0x43bf07
fld qword [0x44b498]
fadd st(1)
fstp qword [0x44b498]
fld qword [0x44b498]
fsub qword [0x447450]
fsub qword [0x44b6b8]
mov ecx, dword [0x44b364]
add dword [0x44b364], edi
mov dword [ebp - 0x20], ecx
fild dword [ebp - 0x20]
fucompp
fnstsw ax
fadd qword [0x44b6b8]
fstp qword [0x44b6b8]
test ah, 0x44
jnp 0x43beac
mov dx, word [0x44b3ec]
mov ecx, dword [0x44b64c]
movsx eax, dx
sub ecx, eax
mov dword [ebp - 0x20], ecx
fild dword [ebp - 0x20]
fmul qword [0x44b2a8]
fstp qword [0x44b2a8]
add word [0x44b3ec], di
add dword [0x44b64c], edi
movzx edx, byte [ebp + esi - 8]
mov eax, dword [ebp - 0x10]
movzx ecx, byte [edx + eax]
push ecx
mov ecx, dword [ebp + 0x14]
call fcn.00406b50
fld qword [0x44b180]
mov dx, word [0x44b090]
fsub qword [0x447448]
mov cx, word [0x44b420]
movsx eax, dx
mov dword [ebp - 0x20], eax
movsx edx, cx
fild dword [ebp - 0x20]
mov dword [ebp - 0x20], edx
fsubp st(1)
fild dword [ebp - 0x20]
fmulp st(1)
fistp qword [ebp - 0x34]
mov ax, word [ebp - 0x34]
mov word [0x44b420], ax
add word [0x44b090], bx
fld1
mov cx, word [0x44b200]
mov edx, dword [0x44b080]
movsx eax, cx
imul edx, eax
mov dword [0x44b080], edx
add esi, ebx
fld qword [0x44b2f0]
mov ax, word [0x44b3e8]
fadd qword [0x447440]
movsx ecx, ax
mov dword [ebp - 0x20], ecx
fild dword [ebp - 0x20]
faddp st(1)
fistp qword [ebp - 0x3c]
mov dx, word [ebp - 0x3c]
mov word [0x44b3e8], dx
fld qword [0x44b2f0]
fadd st(1)
fstp qword [0x44b2f0]
cmp esi, 4
jne 0x43bc83
fld dword [0x44b480]
mov ax, word [0x44b4e0]
fsub qword [0x447438]
add word [0x44b4e0], di
movsx ecx, ax
mov dword [ebp - 0x20], ecx
fild dword [ebp - 0x20]
fcompp
fnstsw ax
test ah, 0x41
jp 0x43bfc9
mov dx, word [0x44b360]
movsx eax, dx
mov dword [ebp - 0x20], eax
fild dword [ebp - 0x20]
fstp dword [ebp - 0x20]
fld dword [0x44b064]
fmul dword [ebp - 0x20]
fistp qword [ebp - 0x44]
mov cx, word [ebp - 0x44]
mov word [0x44b360], cx
fld dword [0x44b064]
fsub st(1)
fstp dword [0x44b064]
jmp 0x43c022
fld qword [0x44b560]
fsub st(1)
fstp qword [0x44b560]
mov edx, dword [0x44b500]
add edx, 0x2ba8c808
mov dword [ebp - 0x20], edx
fild dword [ebp - 0x20]
fadd qword [0x44b560]
fld dword [0x44b2e8]
fcompp
fnstsw ax
fld dword [0x44b2e8]
fadd st(1)
fstp dword [0x44b2e8]
test ah, 0x41
jp 0x43c022
fld dword [0x44b668]
fstp st(0)
fld dword [0x44b668]
fsub st(1)
fstp dword [0x44b668]
mov eax, dword [0x44b414]
mov dword [ebp - 0x20], eax
fild dword [ebp - 0x20]
mov dword [ebp - 0xc], 0
fadd dword [0x44b204]
fsub qword [0x447430]
fistp qword [ebp - 0x4c]
mov cx, word [ebp - 0x4c]
mov word [0x44b6a4], cx
add dword [0x44b414], ebx
mov dx, word [0x44b024]
mov ecx, dword [0x44b020]
movsx eax, dx
sub eax, ecx
sub eax, 0x5228518
cmp dword [ebp + 0xc], 0
mov word [0x44b024], ax
jne 0x43b993
mov edx, dword [0x44b27c]
add dword [0x44b27c], ebx
mov eax, 0x3f9d1330
sub eax, edx
cmp eax, 0x1e86f750
jge 0x43c0a1
mov ecx, 0xba6
mov word [0x44b1ec], cx
mov ecx, dword [ebp - 0xc]
test ecx, ecx
je 0x43c852
cmp ecx, 3
fld qword [0x44b210]
fadd st(1)
fstp qword [0x44b210]
fld qword [0x44b210]
movzx edx, word [0x44b424]
fadd qword [0x447428]
movsx eax, dx
fadd qword [0x447420]
mov dword [ebp + 0xc], eax
fild dword [ebp + 0xc]
faddp st(1)
fistp qword [ebp - 0x4c]
movzx edx, word [ebp - 0x4c]
mov word [0x44b424], dx
fld qword [0x44b190]
fsub qword [0x447418]
fstp qword [0x44b190]
jge 0x43c1c7
mov esi, 3
fstp st(0)
sub esi, ecx
push esi
lea eax, [ebp + ecx - 4]
push 0
push eax
call fcn.0041b680
fld1
add esp, 0xc
mov ax, word [0x44b5b8]
movsx ecx, ax
cmp ecx, 0xd19a6642
je 0x43c152
mov edx, dword [0x44b1dc]
mov eax, 0x2079ccb1
sub eax, edx
mov dword [ebp + 0xc], eax
fild dword [ebp + 0xc]
fmul dword [0x44b4f0]
fstp dword [0x44b4f0]
mov ecx, dword [0x44b27c]
movzx edx, word [0x44b178]
mov eax, 0x199f5c26
sub eax, ecx
imul edx, eax
mov word [0x44b178], dx
dec dword [0x44b27c]
add word [0x44b5e0], bx
fld dword [0x44b5d8]
fsub st(1)
fstp dword [0x44b5d8]
mov eax, dword [0x44b0a0]
mov cx, word [0x44b5e0]
movsx edx, cx
mov dword [ebp + 0xc], eax
add edx, 0x6c177114
sub esi, ebx
fild dword [ebp + 0xc]
mov dword [ebp + 0xc], edx
fild dword [ebp + 0xc]
fadd dword [0x44b5d8]
fsubp st(1)
fistp qword [ebp - 0x4c]
mov eax, dword [ebp - 0x4c]
mov dword [0x44b0a0], eax
jne 0x43c122
fld dword [0x44b0c4]
mov cl, byte [ebp - 4]
fmul qword [0x447410]
shr cl, 2
mov byte [ebp - 8], cl
fstp dword [0x44b0c4]
fld qword [0x44b398]
fsubr qword [0x447408]
fcomp qword [0x447400]
fnstsw ax
test ah, 5
jp 0x43c20f
movzx edx, word [0x44b1b0]
imul edx, edx, 0xcfef7b1f
mov word [0x44b1b0], dx
fld dword [0x44b4bc]
mov cx, word [0x44b46c]
movzx eax, byte [ebp - 4]
and al, 3
shl al, 4
mov byte [ebp - 7], al
movzx eax, word [0x44b420]
movsx edx, cx
mov dword [ebp + 0xc], edx
movsx ecx, ax
fild dword [ebp + 0xc]
mov dword [ebp + 0xc], ecx
faddp st(1)
fild dword [ebp + 0xc]
faddp st(1)
fistp qword [ebp - 0x4c]
movzx edx, word [ebp - 0x4c]
mov word [0x44b420], dx
dec word [0x44b46c]
mov ecx, dword [0x44b4a8]
mov edx, dword [0x44b160]
movzx eax, byte [ebp - 3]
mov dword [ebp + 0xc], ecx
shr al, 4
add byte [ebp - 7], al
fild dword [ebp + 0xc]
mov dword [ebp + 0xc], edx
fild dword [ebp + 0xc]
fsub qword [0x44b210]
fsubp st(1)
fistp qword [ebp - 0x4c]
mov eax, dword [ebp - 0x4c]
mov dword [0x44b4a8], eax
add dword [0x44b160], ebx
mov edx, dword [0x44b134]
mov cl, byte [ebp - 3]
mov dword [ebp + 0xc], edx
fild dword [ebp + 0xc]
and cl, 0xf
add cl, cl
add cl, cl
fadd qword [0x44b0a8]
movzx eax, word [0x44b46c]
mov byte [ebp - 6], cl
movsx ecx, ax
fsub qword [0x4473f8]
mov dword [ebp + 0xc], ecx
fild dword [ebp + 0xc]
fmulp st(1)
fistp qword [ebp - 0x4c]
movzx edx, word [ebp - 0x4c]
mov word [0x44b46c], dx
fld qword [0x44b0a8]
fadd st(1)
mov al, byte [ebp - 2]
mov cl, al
shr cl, 6
add byte [ebp - 6], cl
fstp qword [0x44b0a8]
and al, 0x3f
fld qword [0x4473f0]
mov byte [ebp - 5], al
fstp qword [0x44b048]
movzx edx, word [0x44b4e0]
sub edx, 0x803408a
mov word [0x44b4e0], dx
xor esi, esi
fld qword [0x44b4b0]
fmul qword [0x4473e8]
fstp qword [0x44b4b0]
fld qword [0x44b030]
mov eax, dword [0x44b4a8]
fsubr qword [0x4473e0]
mov dword [ebp + 0xc], eax
fild dword [ebp + 0xc]
or edi, 0xffffffff
add dword [0x44b4a8], edi
faddp st(1)
fcomp qword [0x4473d8]
fnstsw ax
fld qword [0x44b030]
fadd st(1)
fstp qword [0x44b030]
test ah, 0x44
jnp 0x43c38c
add dword [0x44b14c], ebx
mov cx, word [0x44b208]
mov edx, dword [0x44b14c]
movsx eax, cx
sub eax, edx
add eax, 0x472b85a9
mov word [0x44b208], ax
mov ecx, dword [ebp - 0xc]
cmp esi, ecx
jg 0x43c5f1
cmp byte [ebp + 0x10], 0
fld qword [0x44b528]
fsubr qword [0x4473d0]
fstp dword [0x44b4f0]
fld qword [0x44b528]
fsub st(1)
fstp qword [0x44b528]
je 0x43c45c
mov al, byte [ebp + esi - 8]
cmp al, 0x3d
jbe 0x43c45c
add dword [0x44b694], 0x2d1eab7f
fstp st(0)
cmp al, 0x3e
jne 0x43c41d
movzx eax, word [0x44b4ac]
movsx ecx, ax
mov dword [0x44b3ac], ecx
mov ecx, dword [ebp + 0x14]
lea edx, [ebp - 0x14]
push edx
call fcn.0042abc0
fld dword [0x44b480]
movzx eax, word [0x44b21c]
movsx ecx, ax
sub ecx, 0x38caf9c8
mov dword [ebp + 0xc], ecx
fisub dword [ebp + 0xc]
fstp dword [0x44b480]
jmp 0x43c443
add dword [0x44b5dc], 0x3e1c09bb
mov ecx, dword [ebp + 0x14]
lea edx, [ebp - 0x18]
push edx
call fcn.0042abc0
mov eax, dword [0x44b41c]
imul eax, eax, 0x10fe88ec
mov dword [0x44b41c], eax
fld qword [0x44b100]
fsub dword [0x44b174]
fstp qword [0x44b100]
fld1
jmp 0x43c565
add word [0x44b424], bx
mov ecx, dword [0x44b5b0]
mov dx, word [0x44b424]
movsx eax, dx
mov dword [ebp + 0xc], ecx
fild dword [ebp + 0xc]
mov dword [ebp + 0xc], eax
fild dword [ebp + 0xc]
fsub qword [0x44b030]
fsub qword [0x4473c8]
fcompp
fnstsw ax
fadd qword [0x44b030]
fstp qword [0x44b030]
test ah, 1
jne 0x43c4b3
mov ecx, dword [0x44b444]
mov eax, 0xc0693433
sub eax, ecx
add dword [0x44b64c], eax
movzx edx, byte [ebp + esi - 8]
mov eax, dword [ebp - 0x10]
movzx ecx, byte [edx + eax]
push ecx
mov ecx, dword [ebp + 0x14]
call fcn.00406b50
mov edx, dword [0x44b2f8]
add edx, 0x7e40355f
mov dword [ebp + 0xc], edx
fild dword [ebp + 0xc]
fld dword [0x44b3d8]
add dword [0x44b2f8], ebx
fucompp
fnstsw ax
test ah, 0x44
jp 0x43c524
fld dword [0x44b384]
fsub qword [0x4473c0]
fadd qword [0x44b538]
mov ax, word [0x44b534]
movsx ecx, ax
mov dword [ebp + 0xc], ecx
fild dword [ebp + 0xc]
faddp st(1)
fistp qword [ebp - 0x4c]
mov dx, word [ebp - 0x4c]
mov word [0x44b534], dx
fld1
jmp 0x43c565
mov eax, dword [0x44b5fc]
mov dword [ebp + 0xc], eax
fild dword [ebp + 0xc]
fadd dword [0x44b5bc]
mov cx, word [0x44b3f8]
movsx edx, cx
mov dword [ebp + 0xc], edx
fild dword [ebp + 0xc]
faddp st(1)
fstp qword [0x44b320]
add dword [0x44b5fc], edi
fld dword [0x44b5bc]
fld1
fsub st(1), st(0)
fxch st(1)
fstp dword [0x44b5bc]
mov ax, word [0x44b46c]
mov ecx, dword [0x44b0f4]
mov edx, dword [0x44b080]
add dword [0x44b080], edi
add dword [0x44b0f4], edi
cwde
lea eax, [ecx + eax - 0x4bfda0da]
mov ecx, 0x4e24b846
sub ecx, edx
cmp eax, ecx
je 0x43c5cc
add word [0x44b60c], bx
mov edx, dword [0x44b41c]
mov ax, word [0x44b60c]
mov dword [ebp + 0xc], edx
fild dword [ebp + 0xc]
movsx ecx, ax
mov dword [ebp + 0xc], ecx
fild dword [ebp + 0xc]
fadd qword [0x44b320]
fsubp st(1)
fistp qword [ebp - 0x44]
mov edx, dword [ebp - 0x44]
mov dword [0x44b41c], edx
fld qword [0x44b0b8]
mov eax, dword [0x44b32c]
add esi, ebx
add eax, 0xccbeaad
mov dword [ebp + 0xc], eax
fild dword [ebp + 0xc]
fsubp st(1)
fstp qword [0x44b0b8]
jmp 0x43c32c
movzx edx, word [0x44b370]
movsx eax, dx
movzx edx, word [0x44b6a4]
add edx, eax
mov word [0x44b6a4], dx
add word [0x44b370], bx
cmp ecx, 3
jge 0x43c832
mov esi, 3
sub esi, ecx
jmp 0x43c632
fld1
add dword [0x44b0c8], edi
fld qword [0x44b308]
mov ax, word [0x44b244]
fsubr qword [0x4473b8]
mov edx, dword [0x44b0c8]
add word [0x44b244], di
movsx ecx, ax
mov eax, 0x8b2d9a83
sub eax, ecx
add edx, eax
mov dword [ebp + 0xc], edx
fild dword [ebp + 0xc]
fucompp
fnstsw ax
test ah, 0x44
jp 0x43c684
fld qword [0x44b0a8]
fadd qword [0x4473b0]
fstp qword [0x44b0a8]
fld qword [0x44b350]
mov ax, word [0x44b03c]
add word [0x44b03c], di
movsx ecx, ax
mov dword [ebp + 0xc], ecx
fild dword [ebp + 0xc]
fucompp
fnstsw ax
test ah, 0x44
jp 0x43c6db
fld qword [0x44b110]
fadd st(1)
fstp qword [0x44b110]
mov dx, word [0x44b3c8]
movsx eax, dx
mov dword [ebp + 0xc], eax
fild dword [ebp + 0xc]
fadd qword [0x44b110]
fadd qword [0x44b640]
fstp qword [0x44b640]
jmp 0x43c70f
fld qword [0x44b100]
fsub st(1)
fstp qword [0x44b100]
fld dword [0x44b68c]
fadd qword [0x44b100]
fistp qword [ebp - 0x4c]
mov ecx, dword [ebp - 0x4c]
mov dword [0x44b094], ecx
fld dword [0x44b68c]
fadd st(1)
fstp dword [0x44b68c]
cmp byte [ebp + 0x10], 0
je 0x43c7a3
fld dword [0x44b1b8]
movzx edx, word [0x44b1d8]
mov cx, word [0x44b4e0]
movsx eax, dx
mov dword [ebp + 0xc], eax
movsx edx, cx
fild dword [ebp + 0xc]
mov dword [ebp + 0xc], edx
lea ecx, [ebp - 0x1c]
fsubp st(1)
push ecx
fild dword [ebp + 0xc]
mov ecx, dword [ebp + 0x14]
fsubp st(1)
fistp qword [ebp - 0x44]
mov ax, word [ebp - 0x44]
mov word [0x44b438], ax
add word [0x44b4e0], bx
add word [0x44b1d8], di
fadd dword [0x44b1b8]
fstp dword [0x44b1b8]
call fcn.0042abc0
add word [0x44b3b4], di
fld qword [0x44b1f8]
movzx edx, word [0x44b3b4]
movsx eax, dx
mov dword [ebp + 0xc], eax
fild dword [ebp + 0xc]
fsubp st(1)
fadd qword [0x4473a8]
fstp qword [0x44b3d0]
jmp 0x43c805
mov cx, word [0x44b664]
fstp st(0)
movsx edx, cx
mov ecx, dword [ebp + 0x14]
mov dword [ebp + 0xc], edx
push 0x3d
fild dword [ebp + 0xc]
fld qword [0x44b190]
fadd qword [0x4473a0]
fadd qword [0x447398]
fsubp st(1)
fistp qword [ebp - 0x3c]
mov ax, word [ebp - 0x3c]
mov word [0x44b664], ax
call fcn.00406b50
mov ecx, dword [0x44b5dc]
mov edx, 0xf30c3007
sub edx, ecx
mov dword [ebp + 0xc], edx
fild dword [ebp + 0xc]
fadd dword [str.cN]
fstp dword [str.cN]
add dword [0x44b5dc], ebx
sub esi, ebx
mov ax, word [0x44b664]
movsx ecx, ax
mov dword [ebp + 0xc], ecx
fild dword [ebp + 0xc]
fadd qword [0x44b528]
fistp qword [ebp - 0x34]
mov dx, word [ebp - 0x34]
mov word [0x44b664], dx
jne 0x43c630
jmp 0x43c834
fstp st(0)
mov ax, word [0x44b01c]
movzx ecx, word [0x44b040]
cwde
lea edx, [ecx + eax + 0x33202080]
mov word [0x44b040], dx
jmp 0x43c857
fstp st(0)
or edi, 0xffffffff
fld qword [0x44b248]
mov eax, dword [ebp - 0x10]
fmul qword [0x447390]
push eax
push 0x41
fstp qword [0x44b248]
call fcn.004133e0
fld dword [0x44b4e4]
push 4
fsub qword [0x447388]
lea ecx, [ebp - 0x14]
push 0
push ecx
fadd dword [0x44b2fc]
fadd dword [0x44b3e4]
fstp dword [0x44b3e4]
fld dword [0x44b4e4]
fsub qword [0x444e50]
fstp dword [0x44b4e4]
call fcn.0041b680
add word [0x44b024], di
mov dx, word [0x44b024]
movzx ecx, word [0x44b098]
movsx eax, dx
add eax, 0x1d1a99c5
imul ecx, eax
push 4
lea edx, [ebp - 0x18]
push 0
mov word [0x44b098], cx
push edx
call fcn.0041b680
push 4
fld dword [0x44b69c]
lea edx, [ebp - 0x1c]
fld qword [0x44b6d8]
movzx eax, word [0x44b4ec]
movsx ecx, ax
mov dword [ebp + 0xc], ecx
push 0
push edx
fild dword [ebp + 0xc]
fsubp st(1)
fsubp st(1)
fstp dword [0x44b69c]
fld qword [0x44b6d8]
fsub qword [0x444e50]
fstp qword [0x44b6d8]
call fcn.0041b680
add dword [0x44b4cc], edi
movzx eax, word [0x44b5e0]
mov ecx, dword [0x44b4cc]
add esp, 0x2c
cwde
pop edi
add ecx, eax
pop esi
mov word [0x44b5e0], cx
pop ebx
mov esp, ebp
pop ebp
ret