Function at 0x40f940
Capabilities:
Encode data using base64

Disassembly:
push ebp
mov ebp, esp
fld dword [0x44c2c0]
sub esp, 0x48
fadd qword [0x44c3a8]
push ebx
push esi
push edi
fstp dword [0x44c2c0]
mov ax, word [0x44c0a4]
movzx edx, word [0x44c1fc]
movsx ecx, ax
movsx eax, dx
sub eax, ecx
mov ecx, dword [0x44c528]
sub eax, ecx
sub eax, 0x286b40ae
mov word [0x44c1fc], ax
mov edi, 1
add word [0x44c0a4], di
xor ebx, ebx
fld qword [0x44c210]
fadd qword [0x449828]
fstp qword [0x44c0d0]
movzx edx, word [0x44c348]
imul edx, edx, 0xfe462301
mov word [0x44c348], dx
fld dword [0x44c538]
fsub qword [0x449820]
fadd qword [0x449818]
fcomp qword [0x449810]
fnstsw ax
fld1
test ah, 0x41
jne 0x40fa41
fld qword [0x44c1e8]
fsubr qword [0x449808]
fcomp qword [0x449800]
fnstsw ax
fld qword [0x44c1e8]
fsub st(1)
fstp qword [0x44c1e8]
test ah, 1
jne 0x40fa21
fld qword [0x44c2d0]
fld qword [0x44c080]
fsub qword [0x4497f8]
fsub qword [0x4497f0]
fsubp st(1)
fstp qword [0x44c2d0]
jmp 0x40fa41
fld qword [0x44c540]
fld qword [0x44c318]
fsub qword [0x4497e8]
fsub qword [0x4497e0]
fsubp st(1)
fstp qword [0x44c540]
fsubr qword [0x44c4d0]
fstp qword [0x44c4d0]
fld qword [0x44c3f0]
fsubr qword [0x4497d8]
fsub qword [0x4497d0]
fcomp qword [0x44c4d0]
fnstsw ax
test ah, 5
jp 0x40faa9
add word [0x44c3b8], di
mov eax, dword [0x44c424]
mov cx, word [0x44c3b8]
mov dword [ebp - 0xc], eax
fild dword [ebp - 0xc]
movsx edx, cx
mov eax, 0x686b0d46
sub eax, edx
mov dword [ebp - 0xc], eax
fild dword [ebp - 0xc]
fadd qword [0x44c250]
fsubp st(1)
fistp qword [ebp - 0x20]
mov ecx, dword [ebp - 0x20]
mov dword [0x44c424], ecx
push 0x41
push 0xf5d
call fcn.00426010
add word [0x44c1fc], di
movzx edx, word [0x44c1fc]
mov dword [ebp - 0xc], eax
movsx eax, dx
mov dword [ebp - 0x1c], eax
push 4
push 0x3976
fild dword [ebp - 0x1c]
fadd qword [0x44c2e8]
fadd qword [0x44c128]
fmul dword [0x44c1f8]
fstp dword [0x44c1f8]
fld qword [0x44c2e8]
fsub qword [0x445d00]
fstp qword [0x44c2e8]
call fcn.00426010
mov ecx, dword [0x44c434]
movzx edx, word [0x44c410]
mov esi, eax
mov eax, 0xc95722ad
sub eax, ecx
imul edx, eax
mov word [0x44c410], dx
lea edx, [ebp - 0x10]
add esp, 0x10
mov eax, esi
sub edx, esi
nop
mov cl, byte [eax]
mov byte [edx + eax], cl
add eax, edi
test cl, cl
jne 0x40fb30
fld qword [0x44c190]
push 4
fadd qword [0x4497c8]
push 0x18
fadd qword [0x44c498]
fadd qword [0x44c4c0]
fstp qword [0x44c4c0]
call fcn.00426010
mov edi, eax
movzx eax, word [0x44c1d8]
movsx ecx, ax
mov dword [ebp - 0x1c], ecx
push esi
push 4
fild dword [ebp - 0x1c]
fsub qword [0x44c2e8]
fistp qword [ebp - 0x20]
mov dx, word [ebp - 0x20]
mov word [0x44c1d8], dx
fld qword [0x44c2e8]
fadd qword [0x445d00]
fstp qword [0x44c2e8]
call fcn.0042b830
fld qword [0x44c048]
movzx eax, word [0x44c56c]
movsx ecx, ax
mov dword [ebp - 0x1c], ecx
lea edx, [ebp - 0x14]
add esp, 0x10
fild dword [ebp - 0x1c]
mov eax, edi
sub edx, edi
fsubp st(1)
fstp qword [0x44c048]
lea ebx, [ebx]
mov cl, byte [eax]
mov byte [edx + eax], cl
inc eax
test cl, cl
jne 0x40fbd0
movzx edx, word [0x44c138]
imul edx, edx, 0xa5af72f3
push 4
mov word [0x44c138], dx
push 0x1711
call fcn.00426010
mov esi, eax
fld dword [0x44c1e4]
mov ax, word [0x44c144]
movsx ecx, ax
mov dword [ebp - 0x1c], ecx
push edi
push 4
fild dword [ebp - 0x1c]
fadd qword [0x44c2b0]
fsubp st(1)
fstp dword [0x44c1e4]
call fcn.0042b830
movzx edx, word [0x44c2ac]
movzx ecx, word [0x44c198]
movsx eax, dx
sub ecx, eax
lea edx, [ebp - 0x18]
add esp, 0x10
mov word [0x44c198], cx
mov eax, esi
sub edx, esi
jmp 0x40fc50
mov cl, byte [eax]
mov byte [edx + eax], cl
inc eax
test cl, cl
jne 0x40fc50
mov edx, dword [0x44c488]
mov eax, 0x19aca3fe
sub eax, edx
push esi
mov dword [0x44c560], eax
inc dword [0x44c488]
push 4
call fcn.0042b830
fld1
mov cx, word [0x44c328]
movzx edx, word [0x44c414]
movsx eax, cx
add eax, 0x29ceccc5
imul edx, eax
add esp, 8
or edi, 0xffffffff
mov word [0x44c414], dx
cmp dword [ebp + 0xc], ebx
je 0x41027a
fld qword [0x44c090]
mov ecx, dword [ebp + 8]
fadd st(1)
mov edx, 1
sub dword [ebp + 0xc], edx
fstp qword [0x44c090]
fld qword [0x44c090]
fsubr qword [0x4497c0]
fmul qword [0x44c070]
fstp qword [0x44c070]
fld dword [0x44c55c]
fadd qword [0x4497b8]
fadd qword [0x44c4c0]
fstp qword [0x44c4c0]
mov al, byte [ecx]
mov byte [ebp + ebx - 4], al
add word [0x44c350], dx
movzx eax, word [0x44c350]
movzx esi, word [0x44c258]
cwde
add esi, eax
mov word [0x44c258], si
add ebx, edx
fld qword [0x44c3f8]
add ecx, edx
fadd qword [0x44c400]
movzx eax, word [0x44c234]
cwde
mov dword [ebp - 0x1c], eax
mov eax, dword [section..data]
mov dword [ebp + 8], ecx
fild dword [ebp - 0x1c]
mov dword [ebp - 0x1c], eax
faddp st(1)
fild dword [ebp - 0x1c]
fmulp st(1)
fistp qword [ebp - 0x28]
mov eax, dword [ebp - 0x28]
mov dword [section..data], eax
add word [0x44c234], di
fld qword [0x44c3f8]
fadd st(1)
fstp qword [0x44c3f8]
fld dword [0x44c184]
fadd qword [0x4497b0]
fstp qword [0x44c270]
cmp ebx, 3
jne 0x410252
fld qword [0x44c278]
fsub st(1)
fstp qword [0x44c278]
fld qword [0x44c278]
fsub dword [0x44c42c]
fadd dword [0x44c170]
movzx ecx, word [0x44c34c]
movsx eax, cx
mov dword [ebp - 0x1c], eax
movzx eax, byte [ebp - 4]
fild dword [ebp - 0x1c]
shr al, 2
mov byte [ebp - 8], al
fmulp st(1)
fistp qword [ebp - 0x30]
movzx ecx, word [ebp - 0x30]
mov word [0x44c34c], cx
fld qword [0x44c128]
fsub st(1)
fstp qword [0x44c128]
fld qword [0x44c128]
mov ecx, dword [0x44c224]
fsub qword [0x4497a8]
mov dword [ebp - 0x1c], ecx
mov cl, byte [ebp - 4]
and cl, bl
fsub qword [0x4497a0]
shl cl, 4
fild dword [ebp - 0x1c]
mov byte [ebp - 7], cl
fmulp st(1)
fistp qword [ebp - 0x38]
mov eax, dword [ebp - 0x38]
mov dword [0x44c224], eax
mov ax, word [0x44c120]
mov ecx, dword [0x44c514]
cwde
sub eax, ecx
add eax, 0x148dfa72
mov word [0x44c120], ax
add dword [0x44c514], edi
movzx eax, byte [ebp - 3]
fld dword [0x44c030]
fadd st(1)
shr al, 4
add byte [ebp - 7], al
fstp dword [0x44c030]
movzx ecx, word [0x44c150]
movsx eax, cx
movzx ecx, word [0x44c414]
movsx ecx, cx
sub eax, ecx
add eax, 0x606be69d
mov dword [ebp - 0x1c], eax
fild dword [ebp - 0x1c]
fld dword [0x44c030]
fcompp
fnstsw ax
test ah, 0x41
jp 0x40fe8c
fld dword [0x44c0bc]
fsub dword [0x44c1e0]
fstp dword [0x44c0bc]
mov al, byte [ebp - 3]
fld dword [0x44c0bc]
and al, 0xf
fadd st(1)
add al, al
add al, al
mov byte [ebp - 6], al
fstp dword [0x44c0bc]
mov ecx, dword [0x44c590]
add ecx, 0x634b6f2a
mov dword [ebp - 0x1c], ecx
fild dword [ebp - 0x1c]
fld dword [0x44c0bc]
fsubr qword [0x449798]
fcompp
fnstsw ax
test ah, 0x41
jne 0x40ff1b
fld qword [0x44c378]
fsub qword [0x449790]
fsub qword [0x449788]
fld qword [0x44c400]
fcompp
fnstsw ax
fld qword [0x44c400]
fsub st(1)
fstp qword [0x44c400]
test ah, 1
jne 0x40ff1b
mov ax, word [0x44c19c]
movzx ecx, word [0x44c568]
cwde
imul ecx, eax
mov word [0x44c568], cx
add word [0x44c19c], di
mov al, byte [ebp - 2]
shr al, 6
add byte [ebp - 6], al
add dword [0x44c54c], 0x4c87773e
mov eax, dword [0x44c260]
mov cl, byte [ebp - 2]
imul eax, eax, 0x537f3f21
and cl, 0x3f
mov byte [ebp - 5], cl
mov dword [0x44c260], eax
mov eax, 0x2105e549
fld dword [0x44c3ec]
xor esi, esi
fsub st(1)
fstp dword [0x44c3ec]
mov ecx, dword [0x44c574]
sub eax, ecx
mov ecx, dword [0x44c264]
mov dword [ebp - 0x1c], eax
fild dword [ebp - 0x1c]
sub ecx, 0x71cea9a6
mov dword [ebp - 0x1c], ecx
fild dword [ebp - 0x1c]
fsub dword [0x44c3ec]
add dword [0x44c264], edi
add dword [0x44c574], edx
fcompp
fnstsw ax
test ah, 1
jne 0x40ffb0
mov eax, dword [0x44c038]
mov edx, dword [0x44c078]
add eax, 0x53c5f318
imul edx, eax
mov dword [0x44c078], edx
fld dword [0x44c294]
fcomp dword [0x449780]
fnstsw ax
test ah, 5
jp 0x40ffe9
fld dword [0x44c0b0]
fsubr qword [0x449778]
fadd qword [0x44c278]
fstp qword [0x44c278]
fld dword [0x44c0b0]
fadd st(1)
fstp dword [0x44c0b0]
cmp byte [ebp + 0x10], 0
je 0x41019b
mov cl, byte [ebp + esi - 8]
cmp cl, 0x3d
jbe 0x41019b
mov ax, word [0x44c054]
add word [0x44c054], di
movsx edx, ax
cmp edx, 0x8a95d415
jne 0x41008a
mov ax, word [0x44c120]
movsx edx, ax
mov dword [0x44c430], edx
fstp st(0)
cmp cl, 0x3e
jne 0x4100e4
fld dword [0x44c4c8]
lea ecx, [ebp - 0x10]
fsub qword [0x449770]
push ecx
mov ecx, dword [ebp + 0x14]
fstp dword [0x44c4c8]
call fcn.00406040
fld dword [0x44c05c]
fld1
fadd st(1), st(0)
fxch st(1)
fstp dword [0x44c05c]
mov edx, dword [0x44c370]
mov dword [ebp - 0x1c], edx
fild dword [ebp - 0x1c]
fstp dword [ebp - 0x1c]
fld dword [0x44c05c]
fsubr dword [ebp - 0x1c]
fistp qword [ebp - 0x40]
mov eax, dword [ebp - 0x40]
mov dword [0x44c370], eax
jmp 0x410172
mov eax, dword [0x44c0b4]
sub eax, 0x7050a666
mov dword [ebp - 0x1c], eax
fild dword [ebp - 0x1c]
fadd qword [0x44c500]
add dword [0x44c0b4], edi
fcomp qword [0x449768]
fnstsw ax
test ah, 0x44
jnp 0x410027
add word [0x44c300], di
mov dx, word [0x44c300]
mov ax, word [0x44c15c]
fld dword [0x44c538]
fstp st(0)
fadd dword [0x44c538]
fstp dword [0x44c538]
jmp 0x410029
fld qword [0x44c4d0]
lea edx, [ebp - 0x14]
fsubr qword [0x449760]
push edx
fistp qword [ebp - 0x48]
mov ecx, dword [ebp - 0x48]
mov dword [0x44c098], ecx
mov ecx, dword [ebp + 0x14]
call fcn.00406040
fld qword [0x44c298]
fsub dword [0x44c1f8]
fadd qword [0x449758]
fld dword [0x44c4a4]
mov eax, dword [0x44c1b4]
fsubr qword [0x449750]
mov dword [ebp - 0x1c], eax
fisub dword [ebp - 0x1c]
fucompp
fnstsw ax
fld dword [0x44c4a4]
fld1
fadd st(1), st(0)
fxch st(1)
fstp dword [0x44c4a4]
fld dword [0x44c0e8]
test ah, 0x44
jp 0x410160
fadd qword [0x449748]
fstp dword [0x44c0e8]
jmp 0x410172
fsub qword [0x449740]
fmul qword [0x44c2e8]
fstp qword [0x44c2e8]
mov cx, word [0x44c164]
movzx edx, word [0x44c384]
movsx eax, cx
sub edx, eax
sub edx, 0x272ebb2b
mov word [0x44c384], dx
add word [0x44c164], di
jmp 0x4101ef
mov ax, word [0x44c164]
fstp st(0)
movsx ecx, ax
mov edx, 0xa29e6ae4
sub edx, ecx
mov ecx, dword [ebp - 0xc]
mov dword [ebp - 0x1c], edx
fild dword [ebp - 0x1c]
fadd dword [0x44c4b8]
fstp dword [0x44c4b8]
add word [0x44c164], di
movzx eax, byte [ebp + esi - 8]
movzx edx, byte [eax + ecx]
mov ecx, dword [ebp + 0x14]
push edx
call fcn.004206b0
fld dword [0x44c4ac]
fsub dword [0x44c4a0]
fstp dword [0x44c4ac]
fld1
add dword [0x44c4f0], 0xc030dcd5
fld qword [0x44c270]
fld dword [0x44c36c]
inc esi
fsub qword [0x449738]
fsubp st(1)
fstp qword [0x44c270]
cmp esi, 4
jne 0x40ffb0
add word [0x44c234], di
mov ax, word [0x44c344]
movzx ecx, word [0x44c234]
cwde
lea edx, [ecx + eax - 0x55acf0a3]
mov word [0x44c344], dx
mov eax, dword [0x44c01c]
xor ebx, ebx
imul eax, eax, 0xbbaadc30
mov dword [0x44c01c], eax
mov ecx, dword [0x44c434]
sub ecx, 0x617696aa
cmp dword [ebp + 0xc], 0
mov dword [ebp - 0x1c], ecx
fild dword [ebp - 0x1c]
fmul dword [0x44c4ac]
fstp dword [0x44c4ac]
jne 0x40fcab
mov dx, word [0x44c164]
movzx ecx, word [0x44c234]
movsx eax, dx
sub eax, ecx
add eax, 0x674ef523
mov word [0x44c164], ax
test ebx, ebx
je 0x410a33
mov dx, word [0x44c32c]
mov ecx, dword [0x44c1ac]
movsx eax, dx
sub eax, ecx
cmp eax, 0xd53771b2
jg 0x4102df
fld dword [0x44c468]
fadd st(1)
fstp dword [0x44c468]
fld dword [0x44c468]
fsub qword [0x449730]
fmul qword [0x44c588]
fstp qword [0x44c588]
cmp ebx, 3
mov dword [0x44c01c], 0x39e7a0aa
jge 0x4103b5
mov esi, 3
fstp st(0)
sub esi, ebx
push esi
lea eax, [ebp + ebx - 4]
push 0
push eax
call fcn.004074f0
fld qword [0x449728]
fld1
add esp, 0xc
mov ecx, 1
add word [0x44c550], cx
fld dword [0x44c208]
mov dx, word [0x44c550]
movsx eax, dx
add eax, 0x405c08cc
mov dword [ebp + 0xc], eax
fisub dword [ebp + 0xc]
fstp dword [0x44c208]
mov edx, dword [0x44c260]
mov dword [ebp + 0xc], edx
fild dword [ebp + 0xc]
fadd dword [0x44c3a4]
add dword [0x44c260], ecx
fucomp st(2)
fnstsw ax
test ah, 0x44
jnp 0x410373
movzx eax, word [0x44c1d4]
add eax, 0x2a1a29e2
mov word [0x44c1d4], ax
add dword [0x44c098], ecx
mov edx, dword [0x44c098]
sub edx, 0x5dcb7257
sub esi, ecx
mov dword [ebp + 0xc], edx
fild dword [ebp + 0xc]
fsub dword [str.RNh]
fmul qword [0x44c008]
fstp qword [0x44c008]
fld dword [str.RNh]
fadd st(1)
fstp dword [str.RNh]
jne 0x410313
fstp st(1)
fld dword [0x44c36c]
movzx eax, word [0x44c1d0]
movsx ecx, ax
mov edx, 0x6e78aac5
sub edx, ecx
mov dword [ebp + 0xc], edx
fild dword [ebp + 0xc]
fadd dword [0x44c4a0]
movzx eax, byte [ebp - 4]
shr al, 2
mov byte [ebp - 8], al
fsubp st(1)
fstp dword [0x44c36c]
movzx ecx, word [0x44c334]
movzx edx, byte [ebp - 4]
sub ecx, 0x5e8d07fe
mov word [0x44c20c], cx
and dl, 3
fld qword [0x44c2e8]
mov eax, dword [0x44c340]
fadd qword [0x449720]
mov dword [ebp + 0xc], eax
shl dl, 4
mov byte [ebp - 7], dl
fild dword [ebp + 0xc]
movzx edx, byte [ebp - 3]
faddp st(1)
shr dl, 4
add byte [ebp - 7], dl
fistp qword [ebp - 0x48]
mov ecx, dword [ebp - 0x48]
mov dword [0x44c340], ecx
movzx eax, word [0x44c1a8]
movsx ecx, ax
mov dword [ebp + 0xc], ecx
fild dword [ebp + 0xc]
fadd dword [0x44c1e0]
movzx edx, byte [ebp - 3]
and dl, 0xf
add dl, dl
fstp dword [0x44c1e0]
movzx eax, word [0x44c2c4]
movsx ecx, ax
mov dword [ebp + 0xc], ecx
add dl, dl
mov byte [ebp - 6], dl
fild dword [ebp + 0xc]
fmul qword [0x44c500]
movzx eax, byte [ebp - 2]
shr al, 6
add byte [ebp - 6], al
fistp qword [ebp - 0x48]
movzx edx, word [ebp - 0x48]
mov word [0x44c2c4], dx
add dword [0x44c03c], 0x5c0909f6
movzx edx, word [0x44c374]
mov cl, byte [ebp - 2]
movsx eax, dx
mov dword [ebp + 0xc], eax
and cl, 0x3f
mov byte [ebp - 5], cl
fild dword [ebp + 0xc]
fadd qword [0x44c3f8]
fld qword [0x44c088]
fsub qword [0x449718]
fadd dword [0x44c220]
fucompp
fnstsw ax
fld qword [0x44c088]
fadd st(1)
fstp qword [0x44c088]
test ah, 0x44
jp 0x410543
mov ecx, dword [0x44c46c]
mov dword [ebp + 0xc], ecx
fild dword [ebp + 0xc]
fadd dword [0x44c368]
fld qword [0x44c090]
fsub qword [0x449710]
fcompp
fnstsw ax
fld qword [0x44c090]
fadd st(1)
fstp qword [0x44c090]
fld dword [0x44c368]
fsub st(1)
fstp dword [0x44c368]
inc dword [0x44c46c]
test ah, 0x41
jp 0x410543
mov dx, word [0x44c470]
movsx eax, dx
mov dword [ebp + 0xc], eax
fild dword [ebp + 0xc]
fstp qword [0x44c178]
fld qword [0x44c308]
mov ecx, dword [0x44c3e0]
sub ecx, 0x38c09053
mov dword [ebp + 0xc], ecx
fild dword [ebp + 0xc]
xor esi, esi
fucompp
fnstsw ax
test ah, 0x44
jp 0x410588
mov dx, word [0x44c2c4]
movsx eax, dx
mov dword [ebp + 0xc], eax
fild dword [ebp + 0xc]
fsub qword [0x44c338]
fmul qword [0x44c4d0]
fstp qword [0x44c4d0]
fld qword [0x44c338]
fsub qword [0x449708]
fadd dword [0x44c3a0]
fstp dword [0x44c3a0]
fld qword [0x44c338]
fsub st(1)
fstp qword [0x44c338]
test ebx, ebx
jl 0x410872
fld dword [0x44c184]
fadd st(1)
fstp dword [0x44c184]
mov ecx, dword [0x44c038]
mov dword [ebp + 0xc], ecx
fild dword [ebp + 0xc]
fsub dword [0x44c184]
mov dx, word [0x44c1b8]
movsx eax, dx
mov dword [ebp + 0xc], eax
fild dword [ebp + 0xc]
fsubp st(1)
fstp qword [0x44c540]
add dword [0x44c038], edi
cmp byte [ebp + 0x10], 0
je 0x410724
mov al, byte [ebp + esi - 8]
cmp al, 0x3d
jbe 0x410724
mov ecx, dword [0x44c264]
fstp st(0)
mov edx, dword [0x44c3e8]
add ecx, 0xdefbadb0
add edx, ecx
mov dword [0x44c264], edx
add dword [0x44c3e8], edi
cmp al, 0x3e
jne 0x410671
mov ax, word [0x44c20c]
mov ecx, dword [0x44c528]
cwde
sub eax, ecx
mov ecx, dword [ebp + 0x14]
lea edx, [ebp - 0x10]
mov word [0x44c20c], ax
push edx
call fcn.00406040
fld dword [0x44c010]
mov eax, dword [0x44c260]
sub eax, 0x30adc0fa
mov dword [ebp + 0xc], eax
fisub dword [ebp + 0xc]
fstp dword [0x44c010]
fld1
jmp 0x4106e4
inc dword [0x44c07c]
mov ecx, dword [0x44c07c]
mov dword [ebp + 0xc], ecx
fild dword [ebp + 0xc]
mov ecx, dword [ebp + 0x14]
lea edx, [ebp - 0x14]
push edx
fsub dword [str.G]
fadd qword [0x44c270]
fstp qword [0x44c270]
call fcn.00406040
fld qword [0x44c398]
fld1
fadd st(1), st(0)
fxch st(1)
fstp qword [0x44c398]
fld qword [0x44c398]
fsub qword [0x449700]
fsub qword [0x44c478]
mov ax, word [0x44c1a8]
movsx ecx, ax
mov dword [ebp + 0xc], ecx
fild dword [ebp + 0xc]
fmulp st(1)
fistp qword [ebp - 0x48]
mov dx, word [ebp - 0x48]
mov word [0x44c1a8], dx
add dword [0x44c1bc], edi
mov ax, word [0x44c464]
mov edx, dword [0x44c1bc]
inc word [0x44c464]
movsx ecx, ax
mov eax, 0xf9103261
sub eax, ecx
sub edx, 0x333f2891
cmp eax, edx
jl 0x41080c
mov dword [0x44c25c], 0x93bd5ac7
jmp 0x41080c
mov ax, word [0x44c124]
mov cx, word [0x44c300]
cwde
movsx edx, cx
add eax, 0x1174ce6d
cmp edx, eax
jne 0x4107a8
fld qword [0x44c090]
fsub st(1)
fstp qword [0x44c090]
mov ax, word [0x44c568]
movsx ecx, ax
mov dword [ebp + 0xc], ecx
fild dword [ebp + 0xc]
fadd qword [0x44c2e8]
fsub qword [0x44c090]
fcomp qword [0x4496f8]
fnstsw ax
fadd qword [0x44c2e8]
fstp qword [0x44c2e8]
add word [0x44c568], di
test ah, 0x41
jne 0x4107aa
fld dword [0x44c3d4]
mov edx, dword [0x44c428]
mov eax, 0xea2b50d9
sub eax, edx
mov dword [ebp + 0xc], eax
fisub dword [ebp + 0xc]
fstp dword [0x44c3d4]
jmp 0x4107aa
fstp st(0)
movzx ecx, byte [ebp + esi - 8]
mov edx, dword [ebp - 0xc]
movzx eax, byte [ecx + edx]
mov ecx, dword [ebp + 0x14]
push eax
call fcn.004206b0
fld qword [0x44c2b0]
fld1
fadd st(1), st(0)
fxch st(1)
fstp qword [0x44c2b0]
mov cx, word [0x44c054]
movsx edx, cx
mov dword [ebp + 0xc], edx
fild dword [ebp + 0xc]
fadd qword [0x44c358]
fld qword [0x44c128]
fsub qword [0x4496f0]
fsub qword [0x44c2b0]
fcompp
fnstsw ax
test ah, 1
jne 0x41080c
add dword [0x44c1b4], 0x8e6c7ba6
fld dword [0x44c0ec]
inc esi
cmp esi, ebx
fadd qword [0x4496e8]
fstp dword [0x44c0ec]
mov eax, dword [0x44c014]
mov dword [ebp + 0xc], eax
fild dword [ebp + 0xc]
fld dword [0x44c554]
fsub qword [0x44c070]
fsubp st(1)
fistp qword [ebp - 0x40]
mov ecx, dword [ebp - 0x40]
mov dword [0x44c014], ecx
fld qword [0x44c338]
fsub qword [0x449708]
fadd dword [0x44c3a0]
fstp dword [0x44c3a0]
fld qword [0x44c338]
fsub st(1)
fstp qword [0x44c338]
jle 0x4105b6
cmp ebx, 3
fld dword [0x44c510]
mov dx, word [0x44c550]
fadd qword [0x4496e0]
movsx eax, dx
mov dword [ebp + 0xc], eax
fild dword [ebp + 0xc]
fmulp st(1)
fistp qword [ebp - 0x48]
mov cx, word [ebp - 0x48]
mov word [0x44c550], cx
fld dword [0x44c510]
fsub st(1)
fstp dword [0x44c510]
jge 0x4109af
mov esi, 3
sub esi, ebx
mov ebx, 0xb43c35df
add dword [0x44c370], ebx
fstp st(0)
fld dword [0x44c508]
mov dx, word [0x44c058]
movsx eax, dx
add eax, 0x12846a4a
cmp byte [ebp + 0x10], 0
mov dword [ebp + 0xc], eax
fisub dword [ebp + 0xc]
fstp dword [0x44c508]
je 0x410935
mov ecx, 0x3368
mov word [0x44c348], cx
mov ecx, dword [ebp + 0x14]
lea edx, [ebp - 0x18]
push edx
call fcn.00406040
fld dword [0x44c05c]
mov ax, word [0x44c2dc]
fsub qword [0x4496d8]
movsx ecx, ax
mov dword [ebp + 0xc], ecx
fild dword [ebp + 0xc]
faddp st(1)
fistp qword [ebp - 0x48]
mov dx, word [ebp - 0x48]
mov word [0x44c2dc], dx
jmp 0x41096e
movzx eax, word [0x44c344]
mov ecx, dword [ebp + 0x14]
add eax, 0x58e19c60
mov word [0x44c344], ax
push 0x3d
call fcn.004206b0
mov cx, word [0x44c384]
movsx edx, cx
mov eax, 0x847ad185
sub eax, edx
mov dword [0x44c1b0], eax
add word [0x44c384], di
sub esi, 1
fld qword [0x44c080]
fadd qword [0x4496d0]
mov ecx, dword [0x44c018]
mov dword [ebp + 0xc], ecx
fild dword [ebp + 0xc]
fmulp st(1)
fistp qword [ebp - 0x40]
mov edx, dword [ebp - 0x40]
mov dword [0x44c018], edx
fld qword [0x44c080]
fld1
fadd st(1), st(0)
fxch st(1)
fstp qword [0x44c080]
jne 0x4108c1
fld dword [0x44c1e4]
fadd st(1)
fstp dword [0x44c1e4]
fld dword [0x44c554]
fsub dword [0x44c1e4]
fadd qword [0x4496c8]
fld qword [0x44c298]
fsubr qword [0x4496c0]
fsub qword [0x4496b8]
fcompp
fnstsw ax
fld qword [0x44c298]
fadd st(1)
fstp qword [0x44c298]
test ah, 0x41
jp 0x410a33
fsubr qword [0x44c028]
fstp qword [0x44c028]
fld qword [0x44c028]
fadd qword [0x4496b0]
fld qword [0x44c4d0]
mov eax, dword [0x44c3d0]
mov dword [ebp + 0xc], eax
fild dword [ebp + 0xc]
fsubp st(2)
fsubrp st(1)
fstp qword [0x44c4d0]
inc dword [0x44c3d0]
jmp 0x410a35
fstp st(0)
fld dword [0x44c3ec]
mov ecx, dword [ebp - 0xc]
fmul qword [0x4496a8]
push ecx
push 0x41
fstp dword [0x44c3ec]
call fcn.0042b830
movzx edx, word [0x44c0a0]
push 4
lea eax, [ebp - 0x10]
add edx, 0x5290210
push 0
mov word [0x44c0a0], dx
push eax
call fcn.004074f0
mov ecx, dword [section..data]
push 4
mov eax, 0x27ae45e8
lea edx, [ebp - 0x14]
sub eax, ecx
add dword [0x44c4ec], eax
push 0
push edx
call fcn.004074f0
fld qword [0x44c048]
push 4
fsub dword [0x44c168]
mov ax, word [0x44c2c4]
movsx ecx, ax
mov dword [ebp + 0xc], ecx
lea edx, [ebp - 0x18]
push 0
fild dword [ebp + 0xc]
push edx
fsubp st(1)
fstp qword [0x44c0d0]
call fcn.004074f0
fld dword [0x4496a0]
add esp, 0x2c
pop edi
fstp dword [0x44c4cc]
pop esi
pop ebx
mov esp, ebp
pop ebp
ret