Function at 0x43f8b0
Capabilities:
Encode data using base64

Disassembly:
push ebp
mov ebp, esp
movsx eax, word [0x4a6464]
mov ecx, 0xec93061c
movss xmm2, dword [0x4991d8]
sub ecx, eax
sub esp, 0x1c
cmp ecx, 0xecafe504
jl 0x43f909
mov eax, dword [0x4a643c]
movss xmm0, dword [0x4a6404]
movd xmm1, eax
cvtdq2ps xmm1, xmm1
subss xmm1, xmm0
cvttss2si eax, xmm1
mov dword [0x4a643c], eax
movss xmm0, dword [0x4a6404]
subss xmm0, xmm2
movss dword [0x4a6404], xmm0
movsx eax, word [0x4a61f4]
mov ecx, 0x13179f6b
movss xmm0, dword [0x4a6004]
movd xmm1, eax
cvtdq2ps xmm1, xmm1
mulss xmm0, xmm1
movss xmm1, dword [0x49d00c]
cvttss2si eax, xmm0
mov word [0x4a61f4], ax
movss xmm0, dword [0x4a6004]
addss xmm0, xmm2
movss dword [0x4a6004], xmm0
movss xmm0, dword [0x4a6348]
subss xmm1, xmm0
cvttss2si eax, xmm1
mov word [0x4a6464], ax
movsx eax, word [0x4a60e8]
sub ecx, eax
mov eax, dword [0x4a6124]
movss xmm0, dword [0x4a63dc]
sub ecx, eax
subss xmm0, dword [0x49b8ec]
dec dword [0x4a6124]
dec word [0x4a60e8]
movd xmm1, ecx
cvtdq2ps xmm1, xmm1
addss xmm0, dword [0x49afd0]
comiss xmm0, xmm1
jbe 0x43f9dd
movsd xmm1, qword [0x4a6040]
movss xmm0, dword [0x4a6430]
cvtps2pd xmm0, xmm0
subsd xmm1, xmm0
movsd qword [0x4a6040], xmm1
movss xmm0, dword [0x4a6430]
addss xmm0, xmm2
movss dword [0x4a6430], xmm0
jmp 0x43fa60
dec dword [0x4a648c]
movsx ecx, word [0x4a6164]
mov eax, dword [0x4a648c]
add ecx, 0x90b2c
inc word [0x4a6164]
cmp eax, ecx
jne 0x43fa19
mov eax, dword [0x4a6458]
imul eax, dword [0x4a61e8]
mov dword [0x4a61e8], eax
inc dword [0x4a6458]
jmp 0x43fa60
movss xmm0, dword [0x4a6538]
subss xmm0, xmm2
movss dword [0x4a6538], xmm0
movsd xmm1, qword [0x4a6158]
movss xmm0, dword [0x4a6538]
subsd xmm1, qword [0x49c730]
cvtps2pd xmm0, xmm0
subsd xmm1, xmm0
movsd xmm0, qword [0x4a6478]
addsd xmm0, xmm1
movsd qword [0x4a6478], xmm0
movss xmm1, dword [0x4a6118]
mov eax, dword [0x4a61e8]
push ebx
push esi
push edi
movd xmm0, eax
xor edi, edi
cvtdq2ps xmm0, xmm0
mov dword [ebp - 0xc], edi
subss xmm1, xmm0
cvtps2pd xmm0, xmm1
movsd xmm1, qword [0x4a63a0]
addsd xmm1, xmm0
movss xmm0, dword [0x4a61c8]
cvtps2pd xmm0, xmm0
mulsd xmm0, xmm1
cvtpd2ps xmm0, xmm0
movss dword [0x4a61c8], xmm0
inc dword [0x4a61e8]
movsd xmm1, qword [0x4a62d0]
movsd xmm0, qword [0x49a2c8]
ucomisd xmm0, xmm1
movsd xmm0, qword [0x4a62d0]
subsd xmm0, qword [0x4991e0]
lahf
movsd qword [0x4a62d0], xmm0
test ah, 0x44
jnp 0x43fb11
inc word [0x4a6128]
movss xmm0, dword [0x4a6370]
mov ax, word [0x4a6128]
mov ax, word [0x4a6210]
movss xmm0, dword [0x4a6370]
subss xmm0, xmm2
movss dword [0x4a6370], xmm0
push 0x41
push 0x3eed
call fcn.004378f0
movss xmm0, dword [0x4a61c8]
mov esi, eax
addss xmm0, dword [0x49b3d4]
push 5
push 0x38f2
mov dword [ebp - 0x10], esi
movss dword [0x4a61c8], xmm0
call fcn.004378f0
mov ecx, dword [0x4a638c]
add esp, 0x10
inc dword [0x4a638c]
add ecx, 0x7e7243b9
mov ebx, eax
cmp ecx, 0x921f21d5
jle 0x43fb6f
mov dword [0x4a607c], 0xce05930b
movsx eax, byte [esi + 0x3e]
push eax
push ebx
lea eax, [ebp - 0x14]
push 4
push eax
call fcn.0040c310
mov eax, dword [0x4a63ac]
movsd xmm0, qword [0x4a63c0]
add eax, 0x7762d570
push 5
push 0x38f2
movd xmm1, eax
cvtdq2pd xmm1, xmm1
addsd xmm0, xmm1
movsd qword [0x4a63c0], xmm0
call fcn.004378f0
mov ecx, dword [0x4a62e8]
mov edx, 0x26fa4f8e
movss xmm0, dword [0x4a6208]
sub edx, ecx
mov esi, eax
movsx eax, word [0x4a6414]
push ebx
push 5
movd xmm1, edx
cvtdq2ps xmm1, xmm1
subss xmm1, xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mulss xmm0, xmm1
cvttss2si eax, xmm0
mov word [0x4a6414], ax
movss xmm0, dword [0x4a6208]
subss xmm0, dword [0x4991d8]
movss dword [0x4a6208], xmm0
call fcn.00418b90
mov eax, dword [0x4a6140]
mov ecx, 0x43f6c4c8
movsd xmm0, qword [0x4a61c0]
sub ecx, eax
mov eax, dword [ebp - 0x10]
movd xmm1, ecx
cvtdq2pd xmm1, xmm1
mulsd xmm0, xmm1
movsd qword [0x4a61c0], xmm0
movsx eax, byte [eax + 0x3f]
push eax
push esi
lea eax, [ebp - 0x18]
push 4
push eax
call fcn.0040c310
movsd xmm1, qword [0x4a6380]
movsx eax, word [0x4a6488]
sub eax, 0x4e86a8bd
push 5
push 0x38f2
movd xmm0, eax
cvtdq2pd xmm0, xmm0
subsd xmm1, xmm0
movsd qword [0x4a6380], xmm1
inc word [0x4a6488]
call fcn.004378f0
movss xmm0, dword [0x4a6204]
mov ebx, eax
addss xmm0, dword [0x49b884]
push esi
push 5
movss dword [0x4a6204], xmm0
call fcn.00418b90
movsd xmm0, qword [0x4a6318]
lea eax, [ebp - 0x1c]
subsd xmm0, qword [0x499758]
add esp, 0x40
cvtpd2ps xmm0, xmm0
push 0x3d
push ebx
push 4
push eax
movss dword [0x4a64d4], xmm0
call fcn.0040c310
movsd xmm0, qword [0x4a60c0]
add esp, 0x10
movsd xmm3, qword [0x4991e0]
addsd xmm0, xmm3
movsd qword [0x4a60c0], xmm0
movsx eax, word [0x4a63ec]
movss xmm1, dword [0x4a645c]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
addss xmm1, xmm0
addss xmm1, dword [0x49b52c]
cvtps2pd xmm2, xmm1
movsd xmm1, qword [0x4a60c0]
movss xmm0, dword [0x4a645c]
subsd xmm1, qword [0x49a5d0]
addss xmm0, dword [0x4991d8]
comisd xmm2, xmm1
movss dword [0x4a645c], xmm0
jbe 0x43fd54
mov dword [0x4a64c4], 0xceb41e5e
jmp 0x43fd8c
movsd xmm1, qword [0x4a6278]
movsd xmm0, qword [0x4a62d0]
subsd xmm0, qword [0x49be58]
subsd xmm1, xmm0
movsd qword [0x4a6278], xmm1
movsd xmm0, qword [0x4a62d0]
addsd xmm0, xmm3
movsd qword [0x4a62d0], xmm0
push ebx
push 5
call fcn.00418b90
add dword [0x4a62d8], 0xe2da4093
add esp, 8
mov eax, dword [ebp + 0xc]
mov ebx, dword [ebp + 0x14]
test eax, eax
je 0x4403c5
movsd xmm3, qword [0x4991e0]
mov edx, dword [ebp + 8]
nop word [eax + eax]
movss xmm0, dword [0x4a61ac]
dec eax
cvtps2pd xmm1, xmm0
mov ecx, 0xf2e50759
mov dword [ebp + 0xc], eax
movsd xmm0, qword [0x4a60b8]
subsd xmm1, xmm0
cvtpd2ps xmm0, xmm1
movss dword [0x4a61ac], xmm0
movsd xmm0, qword [0x4a60b8]
addsd xmm0, xmm3
movsd qword [0x4a60b8], xmm0
movsx eax, word [0x4a6178]
movd xmm2, eax
movsx eax, word [0x4a651c]
movsd xmm0, qword [0x4a6030]
cvtdq2pd xmm2, xmm2
movd xmm1, eax
cvtdq2pd xmm1, xmm1
subsd xmm1, xmm0
subsd xmm2, xmm1
cvttsd2si eax, xmm2
movss xmm2, dword [0x4991d8]
mov word [0x4a6178], ax
mov al, byte [edx]
mov byte [ebp + edi - 4], al
movsx eax, word [0x4a6410]
sub ecx, eax
mov eax, dword [0x4a60ec]
add ecx, eax
movsx eax, word [0x4a6058]
inc word [0x4a6058]
sub eax, 0x41be9037
cmp eax, ecx
jg 0x43fe85
movzx eax, word [0x4a6410]
imul eax, eax, 0x2775d74f
mov word [0x4a6410], ax
jmp 0x43ff06
mov eax, dword [0x4a60ec]
movss xmm1, dword [0x4a61cc]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
addss xmm1, xmm0
movss xmm0, dword [0x4a6460]
subss xmm1, xmm0
movss xmm0, dword [0x49ccc4]
ucomiss xmm0, xmm1
movss xmm0, dword [0x4a6460]
addss xmm0, xmm2
lahf
movss dword [0x4a6460], xmm0
test ah, 0x44
jp 0x43ff06
movsd xmm0, qword [0x4a6038]
movsd xmm0, qword [0x4a61b8]
movsd xmm0, qword [0x4a6038]
addsd xmm0, xmm3
movsd qword [0x4a6038], xmm0
movsd xmm0, qword [0x4a61b8]
addsd xmm0, xmm3
movsd qword [0x4a61b8], xmm0
movzx eax, word [0x4a6200]
inc edi
add eax, 0x1cb7655b
inc edx
mov word [0x4a6470], ax
movzx eax, word [0x4a6228]
add eax, 0x5952e632
mov dword [ebp + 8], edx
mov word [0x4a6228], ax
cmp edi, 3
jne 0x4403b5
movsd xmm1, qword [0x4a6300]
movsd xmm0, qword [0x4a6510]
subsd xmm1, qword [0x49acd8]
addsd xmm0, xmm1
movsd qword [0x4a6510], xmm0
movsd xmm0, qword [0x4a6300]
mov al, byte [ebp - 4]
addsd xmm0, xmm3
shr al, 2
mov byte [ebp - 8], al
movsd qword [0x4a6300], xmm0
mov eax, dword [section..data]
movss xmm0, dword [0x4a60f0]
movsd xmm1, qword [0x4a6278]
cvtps2pd xmm0, xmm0
movd xmm2, eax
cvtdq2pd xmm2, xmm2
addsd xmm1, xmm0
ucomisd xmm2, xmm1
lahf
dec dword [section..data]
test ah, 0x44
jnp 0x43ffd4
mov eax, dword [0x4a6090]
movss xmm0, dword [0x4a6224]
add eax, 0x2298e3d
movd xmm1, eax
cvtdq2ps xmm1, xmm1
mulss xmm0, xmm1
movss dword [0x4a6224], xmm0
jmp 0x43ffec
movsd xmm0, qword [0x4a64f8]
mulsd xmm0, qword [0x49aca0]
movsd qword [0x4a64f8], xmm0
mov al, byte [ebp - 4]
mov ecx, 0xb8602868
and al, 3
shl al, 4
mov byte [ebp - 7], al
movsx eax, word [0x4a60e4]
movss xmm0, dword [0x4a6104]
add eax, 0x249e1e33
movd xmm1, eax
cvtdq2ps xmm1, xmm1
mulss xmm0, xmm1
movss dword [0x4a6104], xmm0
inc word [0x4a60e4]
mov al, byte [ebp - 3]
shr al, 4
add byte [ebp - 7], al
mov eax, dword [0x4a6498]
sub ecx, eax
movss xmm0, dword [0x4a626c]
movd xmm1, ecx
mov ecx, 0xd375499f
cvtdq2ps xmm1, xmm1
mulss xmm0, xmm1
movss dword [0x4a626c], xmm0
dec dword [0x4a6498]
movsd xmm0, qword [0x4a6408]
mov al, byte [ebp - 3]
addsd xmm0, xmm3
and al, 0xf
shl al, 2
mov byte [ebp - 6], al
movsd qword [0x4a6408], xmm0
mov eax, dword [0x4a60c8]
sub ecx, eax
movsx eax, word [0x4a6058]
movsd xmm0, qword [0x4a6408]
sub eax, 0x1d85fb16
inc dword [0x4a60c8]
movd xmm2, ecx
cvtdq2pd xmm2, xmm2
movd xmm1, eax
cvtdq2pd xmm1, xmm1
subsd xmm1, xmm0
comisd xmm1, xmm2
jbe 0x4400db
movsd xmm1, qword [0x4a6158]
mov eax, dword [0x4a6098]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
subsd xmm1, xmm0
movsd qword [0x4a6158], xmm1
movsd xmm0, qword [0x4a6038]
xor esi, esi
subsd xmm0, qword [0x49a290]
mov al, byte [ebp - 2]
shr al, 6
add byte [ebp - 6], al
mov al, byte [ebp - 2]
movsd qword [0x4a6038], xmm0
and al, 0x3f
movsd xmm0, qword [0x4a6020]
mulsd xmm0, qword [0x49c808]
mov byte [ebp - 5], al
movsd qword [0x4a6020], xmm0
movsd xmm2, qword [0x4a6468]
mov eax, dword [0x4a62cc]
addsd xmm2, qword [0x4994b8]
movd xmm0, eax
mov eax, dword [0x4a610c]
cvtdq2pd xmm0, xmm0
add eax, 0x465c8e48
movd xmm1, eax
subsd xmm2, xmm0
movsd xmm0, qword [0x4a6468]
cvtdq2pd xmm1, xmm1
subsd xmm0, xmm3
comisd xmm1, xmm2
movsd qword [0x4a6468], xmm0
jb 0x440190
movsx eax, word [0x4a64dc]
movss xmm0, dword [0x4a64a0]
movd xmm1, eax
cvtdq2ps xmm1, xmm1
mulss xmm0, xmm1
movss dword [0x4a64a0], xmm0
nop dword [eax]
cmp byte [ebp + 0x10], 0
movsd xmm0, qword [0x4a6030]
mulsd xmm0, qword [0x49a7a8]
movsd qword [0x4a6030], xmm0
je 0x4402b3
mov al, byte [ebp + esi - 8]
cmp al, 0x3d
jbe 0x4402b3
movss xmm0, dword [0x4a6400]
mov ecx, ebx
subss xmm0, dword [0x49bdf0]
movss dword [0x4a6400], xmm0
cmp al, 0x3e
jne 0x440232
movss xmm0, dword [0x4a6118]
lea eax, [ebp - 0x14]
subss xmm0, dword [0x49b1bc]
push eax
movss dword [0x4a6118], xmm0
call fcn.00404750
mov eax, dword [0x4a63ac]
movss xmm0, dword [0x4a6348]
add eax, 0x59f7b1e2
movss xmm2, dword [0x4991d8]
movd xmm1, eax
cvtdq2ps xmm1, xmm1
addss xmm0, xmm1
movss dword [0x4a6348], xmm0
inc dword [0x4a63ac]
jmp 0x440291
lea eax, [ebp - 0x18]
push eax
call fcn.00404750
movss xmm0, dword [0x4a6154]
movss xmm2, dword [0x4991d8]
subss xmm0, xmm2
movss dword [0x4a6154], xmm0
movss xmm1, dword [0x4a6154]
mov eax, dword [0x4a6090]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
subss xmm1, xmm0
movss xmm0, dword [0x4a605c]
subss xmm1, dword [0x49bc38]
mulss xmm0, xmm1
movss dword [0x4a605c], xmm0
inc dword [0x4a6090]
mov eax, dword [0x4a64d8]
movss xmm0, dword [0x4a61b4]
movd xmm1, eax
cvtdq2ps xmm1, xmm1
mulss xmm0, xmm1
movss dword [0x4a61b4], xmm0
jmp 0x44031c
movsd xmm0, qword [0x4a6048]
mulsd xmm0, qword [0x49c2c0]
mov ecx, dword [ebp - 0x10]
movzx eax, byte [ebp + esi - 8]
movsd qword [0x4a6048], xmm0
movzx eax, byte [eax + ecx]
mov ecx, ebx
push eax
call fcn.00422ca0
mov eax, dword [0x4a6368]
movss xmm0, dword [0x4a60b0]
movss xmm2, dword [0x4991d8]
movd xmm1, eax
cvtdq2ps xmm1, xmm1
subss xmm1, xmm0
cvttss2si eax, xmm1
mov dword [0x4a6368], eax
movss xmm0, dword [0x4a60b0]
addss xmm0, xmm2
movss dword [0x4a60b0], xmm0
inc word [0x4a6324]
inc esi
movsx eax, word [0x4a6324]
mov dword [0x4a62cc], eax
movsd xmm0, qword [0x4a60d8]
addsd xmm0, qword [0x4a6240]
movsd qword [0x4a6240], xmm0
cmp esi, 4
jne 0x440190
movss xmm0, dword [0x4a6364]
xor edi, edi
subss xmm0, xmm2
movsd xmm3, qword [0x4991e0]
mov edx, dword [ebp + 8]
movss dword [0x4a6364], xmm0
movsd xmm0, qword [0x4a6038]
mov eax, dword [0x4a6108]
movss xmm0, dword [0x4a6364]
dec dword [0x4a6108]
movsx eax, word [0x4a63e8]
movsd xmm0, qword [0x4a6148]
sub eax, 0x19e56640
movd xmm1, eax
cvtdq2pd xmm1, xmm1
mulsd xmm0, xmm1
movsd qword [0x4a6148], xmm0
mov eax, dword [ebp + 0xc]
test eax, eax
jne 0x43fdc0
mov dword [ebp - 0xc], edi
jmp 0x4403cd
movss xmm2, dword [0x4991d8]
inc dword [0x4a63f0]
mov eax, dword [0x4a64b0]
add eax, dword [0x4a63f0]
movsd xmm0, qword [0x4a6188]
movd xmm1, eax
mov eax, dword [0x4a6508]
cvtdq2pd xmm1, xmm1
subsd xmm1, xmm0
movd xmm0, eax
cvtdq2pd xmm0, xmm0
mulsd xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [0x4a6508], eax
dec dword [0x4a64b0]
test edi, edi
je 0x440baa
movss xmm1, dword [0x4a607c]
movss xmm0, dword [0x4a6238]
movsd xmm3, qword [0x4991e0]
addss xmm1, dword [0x49b3ec]
subss xmm1, dword [0x49bd80]
mulss xmm0, xmm1
movss dword [0x4a6238], xmm0
mov eax, dword [0x4a6334]
movss xmm1, dword [0x4a626c]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
addss xmm1, xmm0
movss xmm0, dword [0x4a64e0]
addss xmm1, dword [0x49b7bc]
addss xmm0, xmm1
movss dword [0x4a64e0], xmm0
cmp edi, 3
jge 0x440573
lea ecx, [ebp - 4]
movsd xmm4, qword [0x4992f8]
add edi, ecx
mov esi, 3
sub esi, dword [ebp - 0xc]
xor eax, eax
mov ecx, esi
mov edx, ecx
shr ecx, 2
rep stosd dword es:[edi], eax
mov ecx, edx
and ecx, 3
rep stosb byte es:[edi], al
nop dword [eax]
nop word [eax + eax]
movss xmm1, dword [0x4a60d4]
movss xmm0, dword [0x4a6430]
addss xmm1, xmm0
movss xmm0, dword [0x4a64a0]
mulss xmm0, xmm1
movss dword [0x4a64a0], xmm0
movss xmm0, dword [0x4a6430]
addss xmm0, xmm2
movss dword [0x4a6430], xmm0
movsd xmm1, qword [0x4a6240]
comisd xmm1, xmm4
movsd xmm0, qword [0x4a6240]
addsd xmm0, xmm3
movsd qword [0x4a6240], xmm0
jb 0x440542
mov ax, word [0x4a6434]
movzx ecx, word [0x4a60e4]
cwde
sub ecx, eax
add ecx, 0x320b3250
mov word [0x4a60e4], cx
dec word [0x4a6434]
dec word [0x4a64bc]
mov ecx, 0xbac1e41b
movsx eax, word [0x4a64bc]
sub ecx, eax
movzx eax, word [0x4a60e4]
imul eax, ecx
mov word [0x4a60e4], ax
sub esi, 1
jne 0x4404c0
mov edi, dword [ebp - 0xc]
mov ax, word [0x4a61fc]
movsx ecx, ax
mov eax, dword [0x4a6090]
sub ecx, eax
mov word [0x4a61fc], cx
inc dword [0x4a6090]
movsd xmm0, qword [0x4a6420]
mov al, byte [ebp - 4]
subsd xmm0, qword [0x49c050]
shr al, 2
mov byte [ebp - 8], al
mov al, byte [ebp - 4]
and al, 3
movsd qword [0x4a6420], xmm0
shl al, 4
mov byte [ebp - 7], al
mov eax, dword [0x4a63c8]
movss xmm0, dword [0x4a61a8]
movd xmm1, eax
cvtdq2ps xmm1, xmm1
mulss xmm0, xmm1
cvttss2si eax, xmm0
mov dword [0x4a63c8], eax
movss xmm0, dword [0x4a61a8]
mov al, byte [ebp - 3]
addss xmm0, xmm2
shr al, 4
add byte [ebp - 7], al
movss dword [0x4a61a8], xmm0
movss xmm0, dword [0x4a607c]
addss xmm0, xmm2
movss dword [0x4a607c], xmm0
movss xmm1, dword [0x4a607c]
movsx eax, word [0x4a62dc]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
subss xmm1, xmm0
subss xmm1, dword [0x49ce54]
cvttss2si eax, xmm1
mov dword [0x4a6108], eax
mov al, byte [ebp - 3]
movsd xmm1, qword [0x4a6080]
and al, 0xf
subsd xmm1, qword [0x49c230]
shl al, 2
mov byte [ebp - 6], al
mov eax, dword [0x4a643c]
sub eax, 0x41b723c2
subsd xmm1, qword [0x49a050]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
comisd xmm0, xmm1
jbe 0x4406a9
mov eax, dword [0x4a6140]
movss xmm0, dword [0x4a60d4]
movd xmm1, eax
cvtdq2ps xmm1, xmm1
addss xmm0, xmm1
cvttss2si eax, xmm0
mov dword [0x4a6140], eax
movss xmm0, dword [0x4a60d4]
addss xmm0, xmm2
movss dword [0x4a60d4], xmm0
mov al, byte [ebp - 2]
xor esi, esi
shr al, 6
add byte [ebp - 6], al
movsx eax, word [0x4a6410]
movss xmm0, dword [0x4a60ac]
movd xmm1, eax
cvtdq2ps xmm1, xmm1
subss xmm1, xmm0
cvttss2si eax, xmm1
mov word [0x4a6410], ax
movss xmm0, dword [0x4a60ac]
mov al, byte [ebp - 2]
subss xmm0, xmm2
and al, 0x3f
mov byte [ebp - 5], al
movss dword [0x4a60ac], xmm0
movsd xmm0, qword [0x4a6310]
subsd xmm0, qword [0x499528]
movsd qword [0x4a6310], xmm0
mov eax, dword [0x4a638c]
movd xmm2, eax
mov eax, dword [0x4a61e8]
movsd xmm1, qword [0x4a60b8]
cvtdq2pd xmm2, xmm2
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm1, xmm0
subsd xmm1, qword [0x49a3f8]
subsd xmm2, xmm1
cvttsd2si eax, xmm2
mov dword [0x4a638c], eax
movsd xmm0, qword [0x4a60b8]
addsd xmm0, xmm3
movsd qword [0x4a60b8], xmm0
movsx eax, word [0x4a6500]
sub eax, 0x38eeef6c
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [0x4a64d4], xmm0
test edi, edi
js 0x440a1c
nop
mov ax, word [0x4a64a8]
movsx ecx, word [0x4a62c8]
cwde
sub ecx, eax
movsx eax, word [0x4a64a4]
inc word [0x4a64a8]
dec word [0x4a62c8]
inc word [0x4a64a4]
cmp eax, ecx
jl 0x4407d9
movss xmm1, dword [0x4a64e4]
mov ecx, 0x46ebf079
movsx eax, word [0x4a6230]
sub ecx, eax
movd xmm0, ecx
cvtdq2ps xmm0, xmm0
subss xmm1, xmm0
movss dword [0x4a64e4], xmm1
cmp byte [ebp + 0x10], 0
je 0x440910
mov cl, byte [ebp + esi - 8]
cmp cl, 0x3d
jbe 0x440910
movsd xmm1, qword [0x4a6010]
cmp cl, 0x3e
movsx eax, word [0x4a6418]
mov ecx, ebx
subsd xmm1, qword [0x49a6f8]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
mulsd xmm0, xmm1
cvttsd2si eax, xmm0
mov word [0x4a6418], ax
jne 0x44087d
movzx eax, word [0x4a62c8]
add eax, 0x156acd7d
mov word [0x4a6094], ax
lea eax, [ebp - 0x14]
push eax
call fcn.00404750
movss xmm0, dword [0x4a61c8]
subss xmm0, dword [0x4991d8]
movss dword [0x4a61c8], xmm0
movss xmm1, dword [0x4a61c8]
subss xmm1, dword [0x49b310]
movss xmm0, dword [0x4a6078]
mulss xmm0, xmm1
movss dword [0x4a6078], xmm0
jmp 0x4408d2
mov eax, dword [0x4a64cc]
movss xmm0, dword [0x4a6404]
movd xmm1, eax
cvtdq2ps xmm1, xmm1
mulss xmm0, xmm1
cvttss2si eax, xmm0
mov dword [0x4a64cc], eax
lea eax, [ebp - 0x18]
push eax
call fcn.00404750
inc word [0x4a6500]
mov ax, word [0x4a6500]
movsx ecx, ax
movsx eax, word [0x4a6500]
sub ecx, eax
mov eax, dword [0x4a6108]
add eax, ecx
mov dword [0x4a6194], eax
inc dword [0x4a6108]
movss xmm0, dword [0x4a60ac]
subss xmm0, dword [0x4991d8]
movss dword [0x4a60ac], xmm0
movss xmm0, dword [0x4a60ac]
addss xmm0, dword [0x49b8c4]
addss xmm0, dword [0x49aeb4]
cvttss2si eax, xmm0
mov dword [section..data], eax
jmp 0x4409a4
movsx eax, word [0x4a62b4]
movss xmm1, dword [0x4a64d0]
mov ecx, dword [ebp - 0x10]
movd xmm2, eax
movsx eax, word [0x4a62f4]
cvtdq2ps xmm2, xmm2
movd xmm0, eax
cvtdq2ps xmm0, xmm0
subss xmm1, xmm0
subss xmm2, xmm1
cvttss2si eax, xmm2
mov word [0x4a62b4], ax
inc word [0x4a62f4]
movss xmm0, dword [0x4a64d0]
addss xmm0, dword [0x4991d8]
movzx eax, byte [ebp + esi - 8]
movss dword [0x4a64d0], xmm0
movzx eax, byte [eax + ecx]
mov ecx, ebx
push eax
call fcn.00422ca0
movsd xmm1, qword [0x4a63f8]
mov eax, dword [0x4a6368]
subsd xmm1, qword [0x49c6e0]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm1
cvttsd2si eax, xmm0
mov word [0x4a6234], ax
movzx eax, word [0x4a61b0]
inc esi
imul eax, eax, 0x367e1523
mov word [0x4a61b0], ax
inc dword [0x4a648c]
movzx eax, word [0x4a6418]
movsx ecx, ax
mov eax, dword [0x4a648c]
sub ecx, eax
movss xmm1, dword [0x4a6018]
mov eax, dword [0x4a61e0]
add eax, ecx
movd xmm0, eax
cvtdq2ps xmm0, xmm0
subss xmm1, xmm0
movss dword [0x4a6018], xmm1
movsx eax, word [0x4a6500]
sub eax, 0x38eeef6c
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [0x4a64d4], xmm0
cmp esi, edi
jle 0x440780
movsd xmm3, qword [0x4991e0]
inc dword [0x4a64d8]
mov eax, dword [0x4a6144]
sub eax, dword [0x4a64d8]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
movsd qword [0x4a60a0], xmm0
cmp edi, 3
jge 0x440b83
mov esi, 3
sub esi, edi
nop dword [eax]
dec dword [0x4a6090]
mov ecx, 0xe1b3f54d
mov eax, dword [0x4a6090]
sub ecx, eax
cmp byte [ebp + 0x10], 0
mov word [0x4a6418], cx
mov ecx, ebx
movsx eax, word [0x4a6054]
movsd xmm0, qword [0x4a6480]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
addsd xmm0, xmm1
cvttsd2si eax, xmm0
mov word [0x4a6054], ax
movsd xmm0, qword [0x4a6480]
addsd xmm0, xmm3
movsd qword [0x4a6480], xmm0
je 0x440b0a
imul eax, dword [section..data], 0x7da03246
mov dword [section..data], eax
lea eax, [ebp - 0x1c]
push eax
call fcn.00404750
dec dword [0x4a624c]
mov eax, dword [0x4a624c]
movss xmm1, dword [0x4a612c]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
addss xmm1, xmm0
subss xmm1, dword [0x49ae28]
movss dword [0x4a64e0], xmm1
movss xmm0, dword [0x4a612c]
subss xmm0, dword [0x4991d8]
movss dword [0x4a612c], xmm0
jmp 0x440b33
movss xmm0, dword [0x4a626c]
mulss xmm0, dword [0x49b9a8]
push 0x3d
movss dword [0x4a626c], xmm0
call fcn.00422ca0
mov dword [0x4a63c8], 0x680ea197
movsd xmm1, qword [0x4a6468]
movss xmm0, dword [0x4a64c4]
movsd xmm3, qword [0x4991e0]
subsd xmm1, qword [0x49c308]
cvtps2pd xmm0, xmm0
mulsd xmm0, xmm1
cvtpd2ps xmm0, xmm0
movss dword [0x4a64c4], xmm0
movsd xmm0, qword [0x4a6468]
subsd xmm0, xmm3
movsd qword [0x4a6468], xmm0
sub esi, 1
jne 0x440a50
movzx eax, word [0x4a6180]
movsx ecx, ax
movzx eax, word [0x4a64bc]
sub ecx, eax
add ecx, 0x3615ea54
mov word [0x4a6180], cx
inc word [0x4a64bc]
movsx eax, word [0x4a6230]
movsd xmm1, qword [0x4a60b8]
sub eax, 0x3061e5d7
push dword [ebp - 0x10]
push 0x41
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm1, xmm0
movss xmm0, dword [0x4a64ec]
cvtps2pd xmm0, xmm0
mulsd xmm0, xmm1
cvtpd2ps xmm0, xmm0
movss dword [0x4a64ec], xmm0
call fcn.00418b90
inc word [0x4a6068]
mov ecx, 0x73d4235c
movsx eax, word [0x4a64a8]
add esp, 8
movd xmm2, eax
movsx eax, word [0x4a6068]
movss xmm1, dword [0x4a60f0]
sub ecx, eax
cvtdq2ps xmm2, xmm2
mov dword [ebp - 0x14], 0
pop edi
pop esi
pop ebx
movd xmm0, ecx
cvtdq2ps xmm0, xmm0
addss xmm1, xmm0
subss xmm2, xmm1
movss xmm1, dword [0x49b93c]
cvttss2si eax, xmm2
mov word [0x4a64a8], ax
movss xmm0, dword [0x4a62f0]
mulss xmm0, dword [0x49cd60]
mov dword [ebp - 0x18], 0
movss dword [0x4a62f0], xmm0
movsd xmm0, qword [0x4a64f0]
mulsd xmm0, qword [0x4a6408]
mov dword [ebp - 0x1c], 0
movsd qword [0x4a64f0], xmm0
movsd xmm0, qword [0x4a6490]
subsd xmm0, qword [0x4991e0]
movsd qword [0x4a6490], xmm0
movss xmm0, dword [0x4a6100]
movsx eax, word [0x4a6230]
subss xmm1, xmm0
movsd xmm0, qword [0x4a6490]
movsd xmm2, qword [0x4a6288]
inc word [0x4a6230]
cvtps2pd xmm3, xmm1
movd xmm1, eax
cvtdq2pd xmm1, xmm1
subsd xmm1, xmm0
movss xmm0, dword [0x4a6100]
addss xmm0, dword [0x4991d8]
addsd xmm2, xmm1
movss dword [0x4a6100], xmm0
comisd xmm2, xmm3
jb 0x440d1c
movsx eax, word [0x4a6410]
movsd xmm0, qword [0x4a6380]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
mulsd xmm0, xmm1
movsd qword [0x4a6380], xmm0
mov esp, ebp
pop ebp
ret