Function at 0x40b370
Capabilities:
Encode data using base64

Disassembly:
push ebp
mov ebp, esp
movss xmm0, dword [0x4a81f8]
sub esp, 0x18
subss xmm0, dword [0x49c78c]
movsd xmm2, qword [0x49a100]
push ebx
push esi
cvttss2si eax, xmm0
xor ebx, ebx
push edi
mov word [0x4a837c], ax
movss xmm0, dword [0x4a81f8]
subss xmm0, dword [0x49a0fc]
movss dword [0x4a81f8], xmm0
mov eax, dword [0x4a819c]
mov word [0x4a8398], ax
movsd xmm0, qword [0x4a8598]
addsd xmm0, xmm2
movsd qword [0x4a8598], xmm0
movsd xmm1, qword [0x4a8598]
movsx eax, word [0x4a8208]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
subsd xmm1, xmm0
cvttsd2si eax, xmm1
mov word [0x4a8380], ax
inc word [0x4a8208]
movsd xmm0, qword [0x4a8128]
addsd xmm0, xmm2
movsd qword [0x4a8128], xmm0
movss xmm0, dword [0x4a8558]
movsd xmm1, qword [0x4a82f8]
cvtps2pd xmm0, xmm0
addsd xmm1, xmm0
movsd xmm0, qword [0x4a8128]
addsd xmm0, xmm1
cvtpd2ps xmm0, xmm0
movss dword [0x4a8590], xmm0
movsd xmm0, qword [0x4a8288]
addsd xmm0, xmm2
movsd qword [0x4a8288], xmm0
mov eax, dword [0x4a8568]
movss xmm0, dword [0x4a8124]
add eax, 0xb5d4468
movsd xmm1, qword [0x4a8288]
cvtps2pd xmm0, xmm0
movd xmm2, eax
addsd xmm1, xmm0
cvtdq2pd xmm2, xmm2
subsd xmm1, qword [0x49ab08]
comisd xmm2, xmm1
jb 0x40b4a6
movsd xmm0, qword [0x4a81c8]
subsd xmm0, qword [0x49d3d0]
movsd qword [0x4a81c8], xmm0
dec word [0x4a8358]
mov ecx, 0x43754876
movsx edx, word [0x4a8358]
movsx eax, word [0x4a8040]
add edx, 0x17f5b527
inc word [0x4a8040]
sub ecx, eax
cmp ecx, edx
jl 0x40b4ed
mov ax, word [0x4a80fc]
movsx ecx, ax
mov eax, dword [0x4a8410]
add eax, 0x3a0c8e55
add eax, ecx
mov dword [0x4a8410], eax
push 0x41
push 0x2ae1
call fcn.0042f440
imul ecx, dword [0x4a8258], 0x2fede11
mov edi, eax
push 5
push 0x3059
mov dword [ebp - 0xc], edi
mov dword [0x4a8258], ecx
call fcn.0042f440
dec word [0x4a80fc]
mov esi, eax
mov cx, word [0x4a80fc]
lea eax, [ebp - 0x10]
mov word [0x4a84b4], cx
movsx ecx, byte [edi + 0x3e]
push ecx
push esi
push 4
push eax
call fcn.004062e0
movsd xmm0, qword [0x4a8338]
subsd xmm0, qword [0x49b7f0]
push 5
push 0x3059
movsd qword [0x4a8338], xmm0
call fcn.0042f440
movsd xmm0, qword [0x4a8138]
mov edi, eax
subsd xmm0, qword [0x49c448]
push esi
push 5
movsd qword [0x4a8138], xmm0
call fcn.004048b0
movsx ecx, word [0x4a8428]
movss xmm0, dword [0x4a840c]
mov eax, dword [ebp - 0xc]
movd xmm1, ecx
cvtdq2ps xmm1, xmm1
addss xmm0, xmm1
movss dword [0x4a840c], xmm0
movsx eax, byte [eax + 0x3f]
push eax
push edi
lea eax, [ebp - 0x14]
push 4
push eax
call fcn.004062e0
movsd xmm0, qword [0x4a8038]
add esp, 0x40
movsd xmm2, qword [0x49db60]
movsd xmm3, qword [0x49a100]
subsd xmm2, xmm0
movsd xmm0, qword [0x4a8038]
movsd xmm1, qword [0x49a998]
subsd xmm0, xmm3
comisd xmm1, xmm2
movsd qword [0x4a8038], xmm0
jb 0x40b645
movsx eax, word [0x4a8184]
cmp eax, 0x81cc2f69
jl 0x40b645
movsd xmm1, qword [0x4a8498]
subsd xmm1, qword [0x49b7e0]
movsd xmm0, qword [0x4a8038]
addsd xmm0, xmm1
movsd qword [0x4a8038], xmm0
movsd xmm0, qword [0x4a8498]
subsd xmm0, xmm3
movsd qword [0x4a8498], xmm0
push 5
push 0x3059
call fcn.0042f440
movsd xmm0, qword [0x4a8518]
mov esi, eax
subsd xmm0, qword [0x49a100]
push edi
push 5
movsd qword [0x4a8518], xmm0
movsx ecx, word [0x4a8364]
movsd xmm2, qword [0x4a80c8]
sub ecx, 0x68ea79ef
movsd xmm0, qword [0x4a8518]
movd xmm1, ecx
cvtdq2pd xmm1, xmm1
addsd xmm0, xmm1
subsd xmm2, xmm0
movsd qword [0x4a80c8], xmm2
dec word [0x4a8364]
call fcn.004048b0
mov ecx, dword [0x4a8278]
mov eax, dword [0x4a8580]
add eax, 0x31a7560b
push 0x3d
add eax, ecx
push esi
mov dword [0x4a8580], eax
lea eax, [ebp - 0x18]
push 4
push eax
call fcn.004062e0
movss xmm0, dword [0x4a8368]
add esp, 0x20
comiss xmm0, dword [0x49cf20]
jbe 0x40b709
mov eax, dword [0x4a83e0]
mov ecx, dword [0x4a84b0]
add eax, 0xa13303eb
imul ecx, eax
mov dword [0x4a84b0], ecx
dec dword [0x4a83e0]
jmp 0x40b75a
movsd xmm0, qword [0x4a84a8]
subsd xmm0, qword [0x49a100]
movsd xmm2, qword [0x49a708]
movsd qword [0x4a84a8], xmm0
movsd xmm0, qword [0x4a84a8]
mov eax, dword [0x4a84b0]
subsd xmm2, xmm0
movsd xmm0, qword [0x4a82f8]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
addsd xmm1, xmm2
addsd xmm0, xmm1
movsd qword [0x4a82f8], xmm0
push esi
push 5
call fcn.004048b0
movsx eax, word [0x4a8130]
add esp, 8
mov ecx, dword [0x4a8510]
add eax, 0xe022f8c6
mov edi, dword [ebp + 0xc]
add ecx, eax
mov edx, dword [ebp + 0x14]
mov word [0x4a8130], cx
inc dword [0x4a8510]
test edi, edi
je 0x40bde2
movss xmm0, dword [0x4a82dc]
dec edi
addss xmm0, dword [0x49cc60]
mov dword [ebp + 0xc], edi
movss dword [0x4a82dc], xmm0
dec dword [0x4a8030]
cmp dword [0x4a8030], 0xe6c9027b
jle 0x40b7e8
inc dword [0x4a83bc]
mov eax, dword [0x4a83bc]
movss xmm0, dword [0x4a8178]
movd xmm1, eax
cvtdq2ps xmm1, xmm1
mulss xmm0, xmm1
movss dword [0x4a8178], xmm0
movss xmm0, dword [0x4a8388]
mov ecx, dword [ebp + 8]
movss xmm4, dword [0x49a0fc]
subss xmm0, xmm4
mov al, byte [ecx]
inc ecx
mov byte [ebp + ebx - 4], al
inc ebx
mov dword [ebp + 8], ecx
movss dword [0x4a8388], xmm0
movsx eax, word [0x4a826c]
movss xmm1, dword [0x4a8388]
subss xmm1, dword [0x49cb14]
movd xmm2, eax
mov eax, dword [0x4a8538]
cvtdq2ps xmm2, xmm2
movd xmm0, eax
cvtdq2ps xmm0, xmm0
addss xmm0, xmm1
subss xmm2, xmm0
cvttss2si eax, xmm2
mov word [0x4a826c], ax
mov dword [0x4a8118], 0x1b8b65ed
movss xmm0, dword [0x4a8468]
addss xmm0, xmm4
movss dword [0x4a8468], xmm0
movsx eax, word [0x4a823c]
movss xmm0, dword [0x4a8468]
movd xmm1, eax
cvtdq2ps xmm1, xmm1
subss xmm1, xmm0
cvttss2si eax, xmm1
mov word [0x4a823c], ax
cmp ebx, 3
jne 0x40bd68
mov al, byte [ebp - 4]
mov ecx, 0x7d7de61e
shr al, 2
mov byte [ebp - 8], al
mov dword [0x4a8178], 0xcdd6c25d
inc word [section..data]
movsx eax, word [section..data]
sub ecx, eax
movsd xmm3, qword [0x49a100]
add dword [0x4a81b4], ecx
mov al, byte [ebp - 4]
and al, bl
shl al, 4
mov byte [ebp - 7], al
mov eax, dword [0x4a8188]
movsd xmm0, qword [0x4a83a0]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
subsd xmm1, xmm0
cvttsd2si eax, xmm1
mov dword [0x4a8188], eax
mov al, byte [ebp - 3]
shr al, 4
add byte [ebp - 7], al
movsx eax, word [0x4a8114]
movsd xmm1, qword [0x4a8150]
movsd xmm0, qword [0x4a8150]
addsd xmm0, xmm3
movd xmm2, eax
cvtdq2pd xmm2, xmm2
movsd qword [0x4a8150], xmm0
comisd xmm2, xmm1
jbe 0x40b96c
movsd xmm0, qword [0x4a80b0]
subsd xmm0, xmm3
movsd qword [0x4a80b0], xmm0
mov eax, dword [0x4a80a0]
movsd xmm0, qword [0x4a80b0]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
mulsd xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [0x4a80a0], eax
mov al, byte [ebp - 3]
and al, 0xf
shl al, 2
mov byte [ebp - 6], al
movsx eax, word [0x4a81b8]
movsd xmm0, qword [0x4a8308]
mov cl, byte [ebp - 2]
movd xmm1, eax
mov al, cl
cvtdq2pd xmm1, xmm1
shr al, 6
and cl, 0x3f
add byte [ebp - 6], al
mov byte [ebp - 5], cl
addsd xmm0, xmm1
movsd qword [0x4a8308], xmm0
mov dword [0x4a83e0], 0x7fa73870
movsd xmm0, qword [0x4a8530]
subsd xmm0, qword [0x4a8500]
subsd xmm0, qword [0x49d4b0]
ucomisd xmm0, qword [0x49dd30]
movsd xmm0, qword [0x4a8500]
addsd xmm0, xmm3
lahf
movsd qword [0x4a8500], xmm0
movsd xmm0, qword [0x4a8530]
subsd xmm0, xmm3
movsd qword [0x4a8530], xmm0
test ah, 0x44
jnp 0x40ba3c
movsx eax, word [0x4a806c]
movsd xmm0, qword [0x4a8598]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
subsd xmm1, xmm0
cvttsd2si eax, xmm1
mov word [0x4a806c], ax
movsd xmm0, qword [0x4a8598]
subsd xmm0, xmm3
movsd qword [0x4a8598], xmm0
movsd xmm1, qword [0x4a84b8]
mov ecx, 0x5c7f07b4
movsx eax, word [0x4a80e0]
xor esi, esi
inc word [0x4a80e0]
sub ecx, eax
movd xmm0, ecx
cvtdq2pd xmm0, xmm0
comisd xmm0, xmm1
jbe 0x40ba90
movss xmm0, dword [0x4a829c]
movsd xmm1, qword [0x4a83a0]
cvtps2pd xmm0, xmm0
addsd xmm1, xmm0
subsd xmm1, qword [0x49d990]
movsd qword [0x4a8128], xmm1
mov edi, dword [ebp - 0xc]
dec word [0x4a8190]
mov ecx, 0xaffbec59
movsx eax, word [0x4a8190]
sub ecx, eax
add dword [0x4a8238], ecx
cmp byte [ebp + 0x10], 0
je 0x40bc2f
mov al, byte [ebp + esi - 8]
cmp al, 0x3d
jbe 0x40bc2f
movsd xmm0, qword [0x4a8460]
movsd xmm1, qword [0x49d6b8]
subsd xmm1, xmm0
movsd qword [0x4a8500], xmm1
cmp al, 0x3e
jne 0x40bbd0
movss xmm0, dword [0x4a8314]
subss xmm0, xmm4
movss dword [0x4a8314], xmm0
movsx eax, word [0x4a8180]
movss xmm0, dword [0x4a824c]
sub eax, 0x2ea34f86
movd xmm2, eax
movsx eax, word [0x4a8364]
movss xmm1, dword [0x4a8314]
add eax, 0x64355779
cvtdq2ps xmm2, xmm2
subss xmm2, xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
addss xmm1, xmm0
movss xmm0, dword [0x4a824c]
subss xmm0, xmm4
movss dword [0x4a824c], xmm0
dec word [0x4a8180]
comiss xmm2, xmm1
jbe 0x40bb88
mov ax, word [0x4a8578]
movsx ecx, ax
movsx eax, word [0x4a83f8]
sub ecx, eax
add ecx, 0x70d4ed2c
movd xmm0, ecx
cvtdq2ps xmm0, xmm0
movss dword [0x4a8458], xmm0
dec word [0x4a83f8]
lea eax, [ebp - 0x10]
mov ecx, edx
push eax
call fcn.00423360
mov eax, dword [0x4a8188]
mov ecx, 0x562e307a
movsd xmm0, qword [0x4a8460]
sub ecx, eax
movd xmm1, ecx
cvtdq2pd xmm1, xmm1
subsd xmm1, xmm0
movss xmm0, dword [0x4a825c]
cvtps2pd xmm0, xmm0
addsd xmm0, xmm1
cvtpd2ps xmm0, xmm0
movss dword [0x4a825c], xmm0
jmp 0x40bc10
inc dword [0x4a81c4]
mov ax, word [0x4a8268]
mov ecx, dword [0x4a81c4]
cwde
imul ecx, eax
lea eax, [ebp - 0x14]
push eax
mov word [0x4a8268], cx
mov ecx, edx
call fcn.00423360
movsd xmm0, qword [0x4a8448]
mulsd xmm0, qword [0x49dad8]
movsd qword [0x4a8448], xmm0
movzx eax, word [0x4a8358]
movss xmm4, dword [0x49a0fc]
sub eax, 0x4bdcadbf
mov word [0x4a8358], ax
jmp 0x40bce7
movzx eax, byte [ebp + esi - 8]
mov ecx, edx
mov dword [0x4a83e0], 0xc0d8d844
movzx eax, byte [eax + edi]
push eax
call fcn.00419d00
mov eax, dword [0x4a81b4]
mov ecx, 0xb3b6bc4d
movss xmm4, dword [0x49a0fc]
sub ecx, eax
movsx eax, word [0x4a82d8]
movss xmm0, dword [0x4a848c]
movd xmm2, ecx
mov ecx, 0x28c4d92
sub ecx, eax
cvtdq2ps xmm2, xmm2
movd xmm1, ecx
cvtdq2ps xmm1, xmm1
subss xmm1, xmm0
movss xmm0, dword [0x4a848c]
subss xmm0, xmm4
movss dword [0x4a848c], xmm0
dec word [0x4a82d8]
comiss xmm1, xmm2
jbe 0x40bce7
movsx eax, word [0x4a84e4]
mov ecx, 0x4544d6e7
sub ecx, eax
mov eax, dword [0x4a8424]
inc dword [0x4a8424]
cmp ecx, eax
jne 0x40bce7
dec word [0x4a80f4]
mov ecx, 0x86208353
movsx eax, word [0x4a80f4]
sub ecx, eax
movsx eax, word [0x4a802c]
sub ecx, eax
add dword [0x4a83b8], ecx
movsd xmm1, qword [0x4a8058]
inc esi
mov edx, dword [ebp + 0x14]
addsd xmm1, qword [0x4a84a0]
movsd xmm0, qword [0x4a8070]
addsd xmm1, qword [0x49a9f8]
addsd xmm0, xmm1
movsd qword [0x4a8070], xmm0
movsd xmm0, qword [0x4a8450]
subsd xmm0, qword [0x49b5e8]
cvtpd2ps xmm0, xmm0
movss dword [0x4a8124], xmm0
cmp esi, 4
jne 0x40ba93
movsx eax, word [0x4a82c8]
xor ebx, ebx
mov edi, dword [ebp + 0xc]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [0x4a82cc], xmm0
dec word [0x4a82c8]
add dword [0x4a827c], 0xd8d32e96
movsx ecx, word [0x4a839c]
mov eax, dword [0x4a8004]
add ecx, 0xdebb804c
inc dword [0x4a8004]
add eax, 0x5d9d0fd0
cmp eax, ecx
jle 0x40bdda
inc word [0x4a806c]
movss xmm0, dword [0x4a82f0]
subss xmm0, xmm4
movss dword [0x4a82f0], xmm0
movsx eax, word [0x4a806c]
movss xmm1, dword [0x4a82f0]
movd xmm0, eax
movsx eax, word [0x4a8578]
cvtdq2ps xmm0, xmm0
addss xmm1, xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mulss xmm0, xmm1
cvttss2si eax, xmm0
mov word [0x4a8578], ax
test edi, edi
jne 0x40b794
movsd xmm0, qword [0x4a82d0]
movsd xmm3, qword [0x49a100]
movsd xmm1, qword [0x49d190]
addsd xmm0, xmm3
movsd qword [0x4a82d0], xmm0
movsd xmm0, qword [0x4a83b0]
addsd xmm0, xmm3
movsd qword [0x4a83b0], xmm0
movsd xmm0, qword [0x4a82d0]
subsd xmm1, xmm0
movsd xmm0, qword [0x4a83b0]
subsd xmm0, qword [0x4a8288]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x40be55
mov eax, dword [0x4a80a0]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
movsd qword [0x4a84a0], xmm0
test ebx, ebx
je 0x40c798
movsd xmm0, qword [0x4a83f0]
mov edi, 3
subsd xmm0, qword [0x49a300]
movsd qword [0x4a83f0], xmm0
imul eax, dword [0x4a810c], 0x82434fe6
mov dword [0x4a810c], eax
cmp ebx, edi
jge 0x40c034
mov esi, 3
movsd xmm7, qword [0x49a3b8]
sub esi, ebx
movss xmm5, dword [0x49c7c0]
mov ecx, esi
movsd xmm6, qword [0x49dda8]
mov edx, ecx
movsd xmm4, qword [0x49ab00]
shr ecx, 2
lea edi, [ebp - 4]
add edi, ebx
xor eax, eax
rep stosd dword es:[edi], eax
mov ecx, edx
and ecx, 3
rep stosb byte es:[edi], al
nop
movsd xmm0, qword [0x4a8150]
movsd xmm2, qword [0x4a8150]
subsd xmm0, xmm7
movsx eax, word [0x4a8438]
dec word [0x4a8438]
add eax, 0x61a09517
addsd xmm2, xmm0
movsd xmm0, qword [0x4a8150]
subsd xmm0, xmm3
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsd qword [0x4a8150], xmm0
comisd xmm1, xmm2
movsd xmm0, qword [0x4a8150]
subsd xmm0, xmm3
movsd qword [0x4a8150], xmm0
jbe 0x40bf57
inc dword [0x4a8374]
mov ax, word [0x4a80e0]
movsx ecx, ax
mov eax, dword [0x4a8374]
add eax, 0x357c5aff
add eax, ecx
mov word [0x4a80e0], ax
jmp 0x40bff4
inc dword [0x4a8118]
mov ecx, 0xdb992ce0
movss xmm2, dword [0x4a80f0]
mov eax, dword [0x4a8118]
subss xmm2, xmm5
sub ecx, eax
mov eax, dword [0x4a8188]
inc dword [0x4a8188]
add eax, ecx
movss xmm0, dword [0x4a80f0]
addss xmm0, dword [0x49a0fc]
movd xmm1, eax
cvtdq2ps xmm1, xmm1
movss dword [0x4a80f0], xmm0
comiss xmm2, xmm1
jbe 0x40bff4
dec dword [0x4a8284]
movaps xmm2, xmm6
movsd xmm0, qword [0x4a81f0]
movsd xmm1, qword [0x4a8098]
subsd xmm2, xmm0
mov eax, dword [0x4a8284]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
subsd xmm2, xmm0
subsd xmm1, xmm2
movsd qword [0x4a8098], xmm1
movsd xmm0, qword [0x4a81f0]
addsd xmm0, xmm3
movsd qword [0x4a81f0], xmm0
add dword [0x4a81b4], 0x47c6d634
movsd xmm0, qword [0x4a8508]
addsd xmm0, xmm4
cvttsd2si eax, xmm0
mov word [0x4a8378], ax
movsd xmm0, qword [0x4a8508]
addsd xmm0, xmm3
movsd qword [0x4a8508], xmm0
sub esi, 1
jne 0x40bed0
lea edi, [esi + 3]
add dword [0x4a8278], 0xbd72cc9f
mov ecx, 0x875c5adc
movsd xmm0, qword [0x4a80c0]
mov al, byte [ebp - 4]
addsd xmm0, xmm3
movsd xmm2, qword [0x49c030]
shr al, 2
mov byte [ebp - 8], al
movsd qword [0x4a80c0], xmm0
movsd xmm0, qword [0x4a8450]
movsd xmm1, qword [0x4a8548]
subsd xmm2, xmm0
movsd xmm0, qword [0x4a80c0]
addsd xmm0, xmm2
subsd xmm1, xmm0
movsd qword [0x4a8548], xmm1
movsd xmm0, qword [0x4a8450]
mov al, byte [ebp - 4]
addsd xmm0, xmm3
and al, 3
shl al, 4
mov byte [ebp - 7], al
movsd qword [0x4a8450], xmm0
movsd xmm1, qword [0x4a82d0]
movsx eax, word [0x4a837c]
subsd xmm1, qword [0x49aaa0]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm1
cvttsd2si eax, xmm0
mov word [0x4a837c], ax
movsd xmm0, qword [0x4a8350]
addsd xmm0, qword [0x49b660]
mov al, byte [ebp - 3]
shr al, 4
add byte [ebp - 7], al
addsd xmm0, qword [0x49a8f0]
cvttsd2si eax, xmm0
mov word [0x4a855c], ax
movsd xmm0, qword [0x4a8350]
mov al, byte [ebp - 3]
subsd xmm0, xmm3
and al, 0xf
shl al, 2
mov byte [ebp - 6], al
movsd qword [0x4a8350], xmm0
movsx eax, word [0x4a8418]
sub ecx, eax
cmp ecx, 0x5fc7702
jle 0x40c185
movsd xmm1, qword [0x4a8228]
movsd xmm0, qword [0x4a8400]
subsd xmm0, qword [0x49b200]
addsd xmm1, qword [0x49bd10]
subsd xmm0, qword [0x49e090]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jnp 0x40c185
movsd xmm0, qword [0x4a81f0]
mulsd xmm0, qword [0x49d480]
movsd qword [0x4a81f0], xmm0
mov al, byte [ebp - 2]
mov ecx, 0x2190b111
shr al, 6
add byte [ebp - 6], al
movzx eax, word [0x4a8360]
add eax, 0x32393a14
mov word [0x4a8360], ax
mov al, byte [ebp - 2]
and al, 0x3f
mov byte [ebp - 5], al
movsx eax, word [0x4a84d8]
inc word [0x4a84d8]
sub ecx, eax
cmp ecx, 0xbdb2724
jle 0x40c1dd
mov eax, dword [0x4a8580]
add eax, 0xa563e24
mov word [0x4a856c], ax
inc dword [0x4a8580]
jmp 0x40c1ef
movzx eax, word [0x4a8190]
sub eax, 0x2d66f0a4
mov word [0x4a8190], ax
movsd xmm0, qword [0x4a8260]
xor esi, esi
subsd xmm0, xmm3
movsd qword [0x4a8260], xmm0
movss xmm0, dword [0x4a824c]
movsd xmm1, qword [0x4a8260]
cvtps2pd xmm0, xmm0
addsd xmm1, xmm0
movsd xmm0, qword [0x49bcd8]
subsd xmm1, qword [0x49ba60]
comisd xmm0, xmm1
jbe 0x40c283
mov eax, dword [0x4a8140]
movsd xmm1, qword [0x4a80d8]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm1, xmm0
movsd xmm0, qword [0x4a8440]
subsd xmm1, qword [0x49bb58]
addsd xmm0, xmm1
movsd qword [0x4a8440], xmm0
dec dword [0x4a8140]
movsd xmm0, qword [0x4a80d8]
addsd xmm0, xmm3
movsd qword [0x4a80d8], xmm0
jmp 0x40c2e0
movsd xmm0, qword [0x4a8158]
subsd xmm0, xmm3
movsd qword [0x4a8158], xmm0
movsx eax, word [0x4a836c]
movsd xmm1, qword [0x4a8158]
movd xmm0, eax
movsx eax, word [0x4a816c]
cvtdq2pd xmm0, xmm0
addsd xmm1, xmm0
movd xmm0, eax
cvtdq2pd xmm0, xmm0
subsd xmm1, xmm0
movsd xmm0, qword [0x4a8540]
addsd xmm0, xmm1
movsd qword [0x4a8540], xmm0
dec word [0x4a836c]
movsd xmm1, qword [0x4a8048]
movsx eax, word [0x4a8380]
add eax, 0x2ec0ef3c
movd xmm0, eax
cvtdq2pd xmm0, xmm0
subsd xmm1, xmm0
movsd qword [0x4a8048], xmm1
dec word [0x4a8380]
test ebx, ebx
js 0x40c5ca
mov ecx, 0xffffb82e
nop dword [eax]
movsd xmm0, qword [0x4a80d0]
addsd xmm0, xmm3
movsd qword [0x4a80d0], xmm0
movsd xmm0, qword [0x4a80d0]
ucomisd xmm0, qword [0x49dde0]
lahf
test ah, 0x44
jp 0x40c3a6
mov eax, dword [0x4a8118]
mov ecx, 0x16d2d9c5
sub ecx, eax
cmp ecx, 0x9059daf0
mov ecx, 0xffffb82e
je 0x40c38e
movsd xmm0, qword [0x4a8070]
addsd xmm0, xmm3
movsd qword [0x4a8070], xmm0
movss xmm0, dword [0x4a83d0]
movsd xmm0, qword [0x4a8070]
mov eax, dword [0x4a8248]
jmp 0x40c3a6
movsd xmm0, qword [0x4a82e0]
mulsd xmm0, qword [0x49d920]
movsd qword [0x4a82e0], xmm0
cmp byte [ebp + 0x10], 0
je 0x40c4c0
mov al, byte [ebp + esi - 8]
cmp al, 0x3d
jbe 0x40c4c0
movsd xmm0, qword [0x4a8290]
subsd xmm0, qword [0x49c4c0]
movsd qword [0x4a8290], xmm0
cmp al, 0x3e
jne 0x40c41f
lea eax, [ebp - 0x10]
mov word [0x4a8334], cx
mov ecx, dword [ebp + 0x14]
push eax
call fcn.00423360
inc word [0x4a8208]
movsd xmm1, qword [0x4a8550]
movsx eax, word [0x4a8208]
sub eax, 0x79208ad3
movd xmm0, eax
cvtdq2pd xmm0, xmm0
subsd xmm1, xmm0
movsd qword [0x4a8550], xmm1
jmp 0x40c49e
movsx eax, word [0x4a816c]
mov ecx, 0x43c4fbc7
movss xmm0, dword [0x4a84d0]
sub ecx, eax
lea eax, [ebp - 0x14]
push eax
movd xmm1, ecx
mov ecx, dword [ebp + 0x14]
cvtdq2ps xmm1, xmm1
addss xmm0, xmm1
movss dword [0x4a84d0], xmm0
call fcn.00423360
movsx eax, word [0x4a8398]
movss xmm0, dword [0x4a8458]
movd xmm1, eax
movsx eax, word [0x4a8438]
cvtdq2ps xmm1, xmm1
subss xmm1, xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
subss xmm1, xmm0
movsd xmm0, qword [0x4a8498]
cvtps2pd xmm1, xmm1
mulsd xmm0, xmm1
movsd qword [0x4a8498], xmm0
inc word [0x4a8398]
movss xmm0, dword [0x4a811c]
subss xmm0, dword [0x49caa0]
movsd xmm3, qword [0x49a100]
movss dword [0x4a811c], xmm0
jmp 0x40c52d
movss xmm0, dword [0x4a8558]
subss xmm0, dword [0x49e398]
mov ecx, dword [ebp - 0xc]
movzx eax, byte [ebp + esi - 8]
movss dword [0x4a8558], xmm0
movzx eax, byte [eax + ecx]
mov ecx, dword [ebp + 0x14]
push eax
call fcn.00419d00
movsd xmm1, qword [0x4a8260]
subsd xmm1, qword [0x49e040]
movsd xmm0, qword [0x4a83f0]
movsd xmm3, qword [0x49a100]
mulsd xmm0, xmm1
movsd qword [0x4a83f0], xmm0
movsd xmm0, qword [0x4a8260]
addsd xmm0, xmm3
movsd qword [0x4a8260], xmm0
movsd xmm0, qword [0x4a8250]
inc esi
subsd xmm0, qword [0x49a858]
movsd xmm1, qword [0x49bc50]
mov ecx, 0xffffb82e
movsd qword [0x4a8020], xmm0
movsd xmm0, qword [0x4a8250]
addsd xmm0, xmm3
movsd qword [0x4a8250], xmm0
movsd xmm0, qword [0x4a8048]
subsd xmm1, xmm0
cvtpd2ps xmm0, xmm1
movss dword [0x4a800c], xmm0
movsd xmm0, qword [0x4a8048]
subsd xmm0, xmm3
movsd qword [0x4a8048], xmm0
movsd xmm1, qword [0x4a8048]
movsx eax, word [0x4a8380]
add eax, 0x2ec0ef3c
movd xmm0, eax
cvtdq2pd xmm0, xmm0
subsd xmm1, xmm0
movsd qword [0x4a8048], xmm1
dec word [0x4a8380]
cmp esi, ebx
jle 0x40c320
movzx eax, word [0x4a853c]
sub eax, 0x11640808
mov word [0x4a853c], ax
cmp ebx, 3
jge 0x40c75f
sub edi, ebx
nop word [eax + eax]
dec word [0x4a8050]
mov ecx, 0x5496fe6b
movsx eax, word [0x4a8050]
movsd xmm0, qword [0x4a8440]
sub ecx, eax
cmp byte [ebp + 0x10], 0
movd xmm1, ecx
mov ecx, dword [ebp + 0x14]
cvtdq2pd xmm1, xmm1
addsd xmm0, xmm1
movsd qword [0x4a8440], xmm0
movss xmm0, dword [0x4a80f0]
subss xmm0, dword [0x49cc28]
movss dword [0x4a80f0], xmm0
je 0x40c69c
movsx eax, word [0x4a84b4]
movss xmm0, dword [0x4a817c]
addss xmm0, dword [0x49ce10]
movd xmm1, eax
cvtdq2ps xmm1, xmm1
subss xmm1, xmm0
cvttss2si eax, xmm1
mov word [0x4a84b4], ax
lea eax, [ebp - 0x18]
push eax
call fcn.00423360
movss xmm0, dword [0x4a80bc]
mulss xmm0, dword [0x49cc38]
movsd xmm3, qword [0x49a100]
movss dword [0x4a80bc], xmm0
jmp 0x40c72b
movsd xmm0, qword [0x4a84b8]
addsd xmm0, xmm3
push 0x3d
movsd qword [0x4a84b8], xmm0
movsd xmm1, qword [0x4a84b8]
subsd xmm1, qword [0x49b408]
movsd xmm0, qword [0x4a8500]
subsd xmm1, qword [0x49d140]
addsd xmm0, xmm1
movsd qword [0x4a8500], xmm0
call fcn.00419d00
movsd xmm1, qword [0x4a8148]
movsd xmm0, qword [0x4a84a0]
subsd xmm0, qword [0x49c108]
movsd xmm3, qword [0x49a100]
subsd xmm0, qword [0x49d260]
subsd xmm1, xmm0
movsd qword [0x4a8148], xmm1
movsd xmm0, qword [0x4a84a0]
subsd xmm0, xmm3
movsd qword [0x4a84a0], xmm0
movss xmm0, dword [0x4a84e0]
cvtps2pd xmm0, xmm0
movsd qword [0x4a8018], xmm0
movss xmm0, dword [0x4a84e0]
subss xmm0, dword [0x49a0fc]
movss dword [0x4a84e0], xmm0
sub edi, 1
jne 0x40c5f0
movsd xmm0, qword [0x4a81c8]
subsd xmm0, xmm3
movsd qword [0x4a81c8], xmm0
mov eax, dword [0x4a838c]
movsd xmm0, qword [0x4a81c8]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
addsd xmm0, xmm1
cvtpd2ps xmm0, xmm0
movss dword [0x4a83d0], xmm0
mov eax, dword [0x4a843c]
mov ecx, 0xce3a8e81
movss xmm0, dword [0x4a80a4]
sub ecx, eax
push dword [ebp - 0xc]
push 0x41
movd xmm1, ecx
cvtdq2ps xmm1, xmm1
mulss xmm0, xmm1
movss dword [0x4a80a4], xmm0
call fcn.004048b0
movzx eax, word [0x4a8358]
add esp, 8
imul eax, eax, 0xbc00c076
mov dword [ebp - 0x10], 0
pop edi
pop esi
mov word [0x4a8358], ax
mov eax, dword [0x4a8270]
movsd xmm0, qword [0x4a8128]
mov dword [ebp - 0x14], 0
pop ebx
movd xmm1, eax
cvtdq2pd xmm1, xmm1
subsd xmm1, xmm0
cvttsd2si eax, xmm1
mov dword [0x4a8270], eax
movsd xmm0, qword [0x4a8260]
subsd xmm0, qword [0x49a100]
movsd qword [0x4a8260], xmm0
movsx eax, word [0x4a8114]
movss xmm0, dword [0x4a8474]
movd xmm1, eax
cvtdq2ps xmm1, xmm1
addss xmm0, xmm1
movsd xmm1, qword [0x4a8260]
cvtps2pd xmm0, xmm0
addsd xmm1, xmm0
movsd xmm0, qword [0x4a80e8]
mulsd xmm0, xmm1
movsd qword [0x4a80e8], xmm0
dec word [0x4a8114]
movsx eax, word [0x4a8478]
movss xmm0, dword [0x4a82f0]
subss xmm0, dword [0x49e24c]
mov dword [ebp - 0x18], 0
movd xmm1, eax
cvtdq2ps xmm1, xmm1
subss xmm1, xmm0
cvttss2si eax, xmm1
mov word [0x4a8478], ax
movss xmm0, dword [0x4a82f0]
addss xmm0, dword [0x49a0fc]
movss dword [0x4a82f0], xmm0
mov esp, ebp
pop ebp
ret