Function at 0x4127b0
Capabilities:
Encode data using base64

Disassembly:
push ebp
mov ebp, esp
add dword [0x4a4198], 0x171acf1e
sub esp, 0x1c
movsd xmm0, qword [0x4a42c8]
mulsd xmm0, qword [0x49a1c0]
movsd xmm3, qword [0x496ce0]
movsd qword [0x4a42c8], xmm0
movsx eax, word [0x4a4128]
movzx ecx, word [0x4a4420]
add eax, 0x2856acfc
imul ecx, eax
mov word [0x4a4420], cx
movsd xmm0, qword [0x4a41f8]
subsd xmm0, xmm3
movsd qword [0x4a41f8], xmm0
movsd xmm2, qword [0x4a4118]
movsd xmm0, qword [0x4a4140]
movsd xmm1, qword [0x4a41f8]
subsd xmm2, xmm0
movsd xmm0, qword [0x499d90]
addsd xmm1, xmm2
ucomisd xmm0, xmm1
lahf
test ah, 0x44
jp 0x41285a
mov ecx, dword [0x4a44a4]
mov eax, dword [0x4a425c]
add eax, 0x49069197
add eax, ecx
mov dword [0x4a425c], eax
xor eax, eax
mov dword [ebp - 0xc], eax
mov eax, dword [0x4a421c]
movss xmm0, dword [0x4a404c]
sub eax, 0x728173b3
push ebx
push esi
push edi
movd xmm1, eax
cvtdq2ps xmm1, xmm1
push 0x41
push 0x1d1f
addss xmm0, xmm1
movss dword [0x4a404c], xmm0
inc dword [0x4a421c]
movsx eax, word [0x4a4420]
movsd xmm1, qword [0x4a4440]
movd xmm2, eax
mov eax, dword [0x4a43c0]
cvtdq2pd xmm2, xmm2
movd xmm0, eax
cvtdq2pd xmm0, xmm0
subsd xmm1, xmm0
subsd xmm1, qword [0x49a438]
subsd xmm2, xmm1
cvttsd2si eax, xmm2
mov word [0x4a4420], ax
movsd xmm0, qword [0x4a4440]
addsd xmm0, xmm3
movsd qword [0x4a4440], xmm0
call fcn.004359d0
movsx ecx, word [0x4a4420]
mov ebx, eax
movzx edx, word [0x4a42b0]
add ecx, 0xd6085257
imul edx, ecx
push 5
push 0x2bf0
mov dword [ebp - 0x10], ebx
mov word [0x4a42b0], dx
call fcn.004359d0
mov ecx, dword [0x4a43d4]
mov esi, eax
movsd xmm0, qword [0x4a43a0]
movsd xmm1, qword [0x496f20]
subsd xmm1, xmm0
movd xmm2, ecx
cvtdq2pd xmm2, xmm2
subsd xmm1, qword [0x49a0c0]
subsd xmm2, xmm1
cvttsd2si eax, xmm2
mov dword [0x4a43d4], eax
movsx eax, byte [ebx + 0x3e]
push eax
push esi
lea eax, [ebp - 0x14]
push 4
push eax
call fcn.0040e9c0
mov eax, dword [0x4a427c]
mov ecx, 0x56c270c5
sub ecx, eax
add dword [0x4a438c], ecx
push 5
push 0x2bf0
call fcn.004359d0
movss xmm0, dword [0x4a41f0]
mov edi, eax
subss xmm0, dword [0x496cd8]
movss xmm1, dword [0x49a6e8]
push esi
push 5
movss dword [0x4a41f0], xmm0
movss xmm0, dword [0x4a41f0]
subss xmm1, xmm0
movss xmm0, dword [0x4a412c]
mulss xmm0, xmm1
movss dword [0x4a412c], xmm0
call fcn.0041b9c0
movss xmm0, dword [0x4a409c]
mulss xmm0, dword [0x49a854]
movss dword [0x4a409c], xmm0
movsx eax, byte [ebx + 0x3f]
push eax
push edi
lea eax, [ebp - 0x18]
push 4
push eax
call fcn.0040e9c0
mov ax, word [0x4a4300]
add esp, 0x40
movsx ecx, ax
mov eax, dword [0x4a4090]
sub ecx, eax
sub ecx, 0x7e03ded0
push 5
push 0x2bf0
mov word [0x4a4300], cx
call fcn.004359d0
movss xmm0, dword [0x4a4210]
mov esi, eax
subss xmm0, dword [0x499628]
push edi
push 5
movss dword [0x4a4210], xmm0
call fcn.0041b9c0
mov ecx, dword [0x4a40e4]
movss xmm0, dword [0x4a4038]
push 0x3d
push esi
movd xmm1, ecx
cvtdq2ps xmm1, xmm1
push 4
subss xmm1, xmm0
cvttss2si eax, xmm1
mov dword [0x4a40e4], eax
lea eax, [ebp - 0x1c]
push eax
call fcn.0040e9c0
movsx eax, word [0x4a4294]
add esp, 0x20
movsd xmm2, qword [0x4a4160]
add eax, 0xf48dac9
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm2, xmm0
movss xmm0, dword [0x4a43c4]
addss xmm0, dword [0x4a4438]
cvtps2pd xmm1, xmm0
movsd xmm0, qword [0x4a4160]
subsd xmm0, qword [0x496ce0]
movsd qword [0x4a4160], xmm0
inc word [0x4a4294]
comisd xmm1, xmm2
jb 0x412ae0
movzx eax, word [0x4a4200]
sub eax, 0x56b05293
mov word [0x4a4200], ax
push esi
push 5
call fcn.0041b9c0
movss xmm0, dword [0x4a40c0]
add esp, 8
movss xmm4, dword [0x496cd8]
mov edi, dword [ebp + 0xc]
addss xmm0, xmm4
mov ebx, dword [ebp + 0x14]
movss dword [0x4a40c0], xmm0
movss xmm0, dword [0x4a40c0]
subss xmm0, dword [0x499490]
movss dword [0x4a43cc], xmm0
test edi, edi
je 0x4131ec
nop dword [eax]
movzx eax, word [0x4a41dc]
dec edi
sub eax, 0x5c08062f
mov dword [ebp + 0xc], edi
mov word [0x4a41dc], ax
movsd xmm0, qword [0x4a41a8]
addsd xmm0, qword [0x498558]
comisd xmm0, xmmword [0x496f98]
jbe 0x412bd8
inc word [0x4a41b0]
movsx eax, word [0x4a41b0]
movsd xmm0, qword [0x4a4418]
sub eax, 0x664e8720
movd xmm1, eax
cvtdq2pd xmm1, xmm1
subsd xmm1, xmm0
movsd xmm0, qword [0x49a2a0]
ucomisd xmm0, xmm1
lahf
test ah, 0x44
jp 0x412bd8
inc word [0x4a42c0]
mov ax, word [0x4a42c0]
movsx ecx, word [0x4a440c]
movsd xmm1, qword [0x4a4058]
movsd xmm0, qword [0x4a4288]
cwde
sub ecx, eax
movd xmm2, ecx
cvtdq2pd xmm2, xmm2
subsd xmm2, xmm0
subsd xmm1, xmm2
movsd qword [0x4a4058], xmm1
mov esi, dword [ebp + 8]
mov edx, dword [ebp - 0xc]
mov al, byte [esi]
inc esi
mov byte [ebp + edx - 4], al
inc edx
mov ax, word [0x4a4388]
movsx ecx, ax
movsx eax, word [0x4a4480]
movsd xmm0, qword [0x4a43b0]
add eax, 0xfd1530e1
add eax, ecx
mov dword [ebp - 0xc], edx
mov dword [ebp + 8], esi
movd xmm1, eax
cvtdq2pd xmm1, xmm1
mulsd xmm0, xmm1
movsd qword [0x4a43b0], xmm0
inc word [0x4a4480]
movsx ecx, word [0x4a4320]
movsx eax, word [0x4a4480]
add ecx, 0x29c0bb76
cmp eax, ecx
jle 0x412c7a
movss xmm0, dword [0x4a4328]
subss xmm0, xmm4
movss dword [0x4a4328], xmm0
movss xmm1, dword [0x4a4150]
movss xmm0, dword [0x4a4328]
addss xmm1, xmm0
movss xmm0, dword [0x4a445c]
addss xmm0, xmm1
movss dword [0x4a445c], xmm0
cmp edx, 3
jne 0x4131d2
mov eax, dword [0x4a4284]
mov ecx, 0x57720a98
movsd xmm0, qword [0x4a4070]
sub ecx, eax
addsd xmm0, qword [0x496d40]
dec dword [0x4a4284]
movd xmm1, ecx
cvtdq2pd xmm1, xmm1
comisd xmm1, xmm0
jbe 0x412cf3
movss xmm1, dword [0x4a40c0]
movsx eax, word [0x4a4350]
addss xmm1, dword [0x498dd8]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mulss xmm0, xmm1
cvttss2si eax, xmm0
mov word [0x4a4350], ax
movss xmm0, dword [0x4a40c0]
addss xmm0, xmm4
movss dword [0x4a40c0], xmm0
mov al, byte [ebp - 4]
shr al, 2
mov byte [ebp - 8], al
dec word [0x4a4148]
movzx eax, word [0x4a4148]
movsx ecx, word [0x4a418c]
movsd xmm0, qword [0x4a4088]
cwde
sub ecx, eax
movsd xmm3, qword [0x496ce0]
mov al, byte [ebp - 4]
and al, 3
shl al, 4
movd xmm1, ecx
cvtdq2pd xmm1, xmm1
mov byte [ebp - 7], al
addsd xmm0, xmm1
movsd qword [0x4a4088], xmm0
movsx eax, word [0x4a4344]
mov dword [0x4a4024], eax
inc word [0x4a4344]
mov al, byte [ebp - 3]
shr al, 4
add byte [ebp - 7], al
movzx eax, word [0x4a4414]
movsx ecx, ax
mov eax, dword [0x4a4278]
add eax, ecx
mov ecx, dword [0x4a4258]
imul ecx, eax
mov al, byte [ebp - 3]
and al, 0xf
shl al, 2
mov byte [ebp - 6], al
mov dword [0x4a4258], ecx
movsx eax, word [0x4a4200]
movsd xmm2, qword [0x4a4230]
movd xmm0, eax
movsx eax, word [0x4a439c]
cvtdq2pd xmm0, xmm0
add eax, 0x76e9c84b
movd xmm1, eax
addsd xmm2, xmm0
movsd xmm0, qword [0x4a4230]
cvtdq2pd xmm1, xmm1
subsd xmm0, xmm3
comisd xmm2, xmm1
movsd qword [0x4a4230], xmm0
jb 0x412df8
movss xmm0, dword [0x4a412c]
cvttss2si eax, xmm0
mov dword [0x4a425c], eax
movss xmm0, dword [0x4a412c]
addss xmm0, xmm4
movss dword [0x4a412c], xmm0
movsd xmm1, qword [0x4a42f8]
xor esi, esi
movsd xmm0, qword [0x4a41d0]
subsd xmm1, qword [0x498340]
mov al, byte [ebp - 2]
shr al, 6
add byte [ebp - 6], al
mov edi, dword [ebp - 0x10]
mulsd xmm0, xmm1
movsd qword [0x4a41d0], xmm0
movsd xmm0, qword [0x4a42f8]
mov al, byte [ebp - 2]
subsd xmm0, xmm3
and al, 0x3f
mov byte [ebp - 5], al
movsd qword [0x4a42f8], xmm0
mov eax, dword [0x4a4484]
movsd xmm0, qword [0x4a4180]
addsd xmm0, qword [0x4971b0]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
subsd xmm1, xmm0
cvttsd2si eax, xmm1
mov dword [0x4a4484], eax
movsd xmm0, qword [0x4a4180]
subsd xmm0, xmm3
movsd qword [0x4a4180], xmm0
mov ax, word [0x4a4148]
movsx ecx, ax
mov eax, dword [0x4a4384]
sub ecx, eax
sub ecx, 0x74f6c729
mov word [0x4a4148], cx
mov eax, dword [0x4a4264]
movsd xmm0, qword [0x4a4310]
add eax, 0x2a1cced5
movd xmm1, eax
cvtdq2pd xmm1, xmm1
addsd xmm0, xmm1
movsd qword [0x4a4310], xmm0
inc dword [0x4a4264]
cmp byte [ebp + 0x10], 0
je 0x413040
mov al, byte [ebp + esi - 8]
cmp al, 0x3d
jbe 0x413040
add dword [0x4a4014], 0x428a1c49
cmp al, 0x3e
jne 0x412fe1
movsd xmm0, qword [0x4a41e8]
movsd xmm1, qword [0x4978e0]
addsd xmm0, xmm3
movsd qword [0x4a41e8], xmm0
movsd xmm0, qword [0x4a40a8]
subsd xmm0, qword [0x4a41e8]
ucomisd xmm1, xmm0
movsd xmm0, qword [0x4a40a8]
subsd xmm0, xmm3
lahf
movsd qword [0x4a40a8], xmm0
test ah, 0x44
jp 0x412f6e
movsx eax, word [0x4a4394]
movsd xmm0, qword [0x4a4470]
add eax, 0x2f8a186e
movd xmm1, eax
cvtdq2pd xmm1, xmm1
addsd xmm0, xmm1
movsd qword [0x4a4470], xmm0
dec word [0x4a4394]
lea eax, [ebp - 0x14]
mov ecx, ebx
push eax
call fcn.00420b20
movss xmm1, dword [0x4a40c0]
movss xmm0, dword [0x4a40c0]
addss xmm0, dword [0x496cd8]
movss dword [0x4a40c0], xmm0
movss xmm0, dword [0x498eb0]
comiss xmm0, xmm1
jb 0x413025
movsd xmm0, qword [0x4a42d0]
movsd xmm1, qword [0x499848]
subsd xmm1, xmm0
movsd xmm0, qword [0x49a198]
ucomisd xmm0, xmm1
lahf
test ah, 0x44
jp 0x413025
imul eax, dword [0x4a4484], 0x25e3ede8
mov dword [0x4a4484], eax
jmp 0x413025
movzx eax, word [0x4a4318]
mov ecx, ebx
sub eax, 0x1b208eba
mov word [0x4a4318], ax
lea eax, [ebp - 0x18]
push eax
call fcn.00420b20
dec word [0x4a4294]
mov ecx, 0x7a6ab46a
movsx eax, word [0x4a4294]
sub ecx, eax
cmp ecx, 0x1afe38ed
jl 0x413025
mov dword [0x4a41c8], 0x934c8aff
mov eax, dword [0x4a4380]
mov ecx, 0x9ef40520
sub ecx, eax
mov eax, dword [0x4a4434]
imul eax, ecx
mov dword [0x4a4434], eax
jmp 0x41308c
movsd xmm0, qword [0x4a44c0]
mov ecx, ebx
mulsd xmm0, qword [0x4a42d8]
movsd qword [0x4a42d8], xmm0
movsd xmm0, qword [0x4a44c0]
movzx eax, byte [ebp + esi - 8]
addsd xmm0, xmm3
movsd qword [0x4a44c0], xmm0
movzx eax, byte [eax + edi]
push eax
call fcn.00417510
imul eax, dword [0x4a4488], 0xcc940c48
mov dword [0x4a4488], eax
movss xmm0, dword [0x4a41f4]
movss xmm4, dword [0x496cd8]
movsd xmm3, qword [0x496ce0]
subss xmm0, xmm4
movss dword [0x4a41f4], xmm0
movsd xmm0, qword [0x4a44b0]
addsd xmm0, xmm3
movsd qword [0x4a44b0], xmm0
mov eax, dword [0x4a4478]
movss xmm0, dword [0x4a41f4]
movd xmm1, eax
cvtdq2ps xmm1, xmm1
subss xmm1, xmm0
movsd xmm0, qword [0x4a44b0]
cvtps2pd xmm1, xmm1
ucomisd xmm1, xmm0
lahf
dec dword [0x4a4478]
test ah, 0x44
jnp 0x413111
movss xmm0, dword [0x4a40a4]
subss xmm0, dword [0x498d3c]
movss dword [0x4a40a4], xmm0
jmp 0x41313c
mov eax, dword [0x4a420c]
movss xmm0, dword [0x4a4150]
add eax, 0x349c6059
movd xmm1, eax
cvtdq2ps xmm1, xmm1
mulss xmm0, xmm1
movss dword [0x4a4150], xmm0
inc dword [0x4a420c]
mov eax, dword [0x4a42e0]
inc esi
movss xmm0, dword [0x4a4060]
subss xmm0, dword [0x4994a0]
movd xmm1, eax
cvtdq2ps xmm1, xmm1
comiss xmm1, xmm0
jb 0x41317d
mov eax, dword [0x4a4134]
mov ecx, dword [0x4a44a4]
add eax, 0x52c468d8
imul ecx, eax
mov dword [0x4a44a4], ecx
dec dword [0x4a4134]
cmp esi, 4
jne 0x412ea1
mov edi, dword [ebp + 0xc]
xor eax, eax
mov dword [0x4a401c], 0x4e9798e6
movsx ecx, word [0x4a41dc]
mov dword [ebp - 0xc], eax
add ecx, 0x9648d2bb
movsx eax, word [0x4a417c]
inc word [0x4a41dc]
add eax, 0x78e59780
cmp ecx, eax
jle 0x4131d2
mov ax, word [0x4a444c]
mov ecx, dword [0x4a40ec]
cwde
imul ecx, eax
mov dword [0x4a40ec], ecx
movzx eax, word [0x4a4294]
sub eax, 0x51d93f9c
mov word [0x4a4294], ax
test edi, edi
jne 0x412b30
movsx eax, word [0x4a40a0]
movss xmm0, dword [0x4a40c0]
sub eax, 0x7ce76dc9
mov esi, dword [ebp - 0xc]
movd xmm1, eax
cvtdq2ps xmm1, xmm1
addss xmm0, xmm1
movss dword [0x4a40c0], xmm0
test esi, esi
je 0x413b1f
movsx eax, word [0x4a41e0]
movsd xmm3, qword [0x496ce0]
movd xmm2, eax
mov eax, dword [0x4a42e4]
movsd xmm1, qword [0x4a44c8]
cvtdq2pd xmm2, xmm2
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm1, xmm0
subsd xmm2, xmm1
cvttsd2si eax, xmm2
mov word [0x4a41e0], ax
mov eax, 0x2663
movsd xmm0, qword [0x4a44c8]
subsd xmm0, xmm3
movsd qword [0x4a44c8], xmm0
mov word [0x4a41dc], ax
cmp esi, 3
jge 0x4132f4
mov ebx, 3
movsd xmm2, qword [0x497af8]
sub ebx, esi
lea edi, [ebp - 4]
mov ecx, ebx
add edi, esi
mov edx, ecx
xor eax, eax
shr ecx, 2
rep stosd dword es:[edi], eax
mov ecx, edx
and ecx, 3
rep stosb byte es:[edi], al
nop word [eax + eax]
mov eax, dword [0x4a43dc]
add eax, dword [0x4a4278]
mov dword [0x4a43dc], eax
dec dword [0x4a4278]
mov eax, dword [0x4a41b4]
movsd xmm0, qword [0x4a44b0]
addsd xmm0, xmm2
movd xmm1, eax
cvtdq2pd xmm1, xmm1
subsd xmm1, xmm0
cvttsd2si eax, xmm1
mov dword [0x4a41b4], eax
sub ebx, 1
jne 0x4132b0
mov ebx, dword [ebp + 0x14]
movss xmm0, dword [0x4a4188]
subss xmm0, xmm4
movss dword [0x4a4188], xmm0
movsx eax, word [0x4a40a0]
movss xmm0, dword [0x4a4188]
movd xmm1, eax
cvtdq2ps xmm1, xmm1
subss xmm1, xmm0
movss xmm0, dword [0x4a43c4]
mov al, byte [ebp - 4]
shr al, 2
mov byte [ebp - 8], al
subss xmm1, dword [0x499484]
mulss xmm0, xmm1
movss xmm1, dword [0x498f0c]
movss dword [0x4a43c4], xmm0
movss xmm0, dword [0x4a4030]
subss xmm0, dword [0x498d48]
mov al, byte [ebp - 4]
and al, 3
shl al, 4
mov byte [ebp - 7], al
movss dword [0x4a4030], xmm0
mov eax, dword [0x4a4308]
movss xmm0, dword [0x4a4020]
add eax, 0x740154a
subss xmm1, xmm0
movd xmm2, eax
movsx eax, word [0x4a447c]
cvtdq2ps xmm2, xmm2
movd xmm0, eax
cvtdq2ps xmm0, xmm0
subss xmm1, xmm0
ucomiss xmm2, xmm1
lahf
dec dword [0x4a4308]
test ah, 0x44
jp 0x413431
movsd xmm1, qword [0x4a40d8]
subsd xmm1, qword [0x497aa0]
movsd xmm0, qword [0x499950]
subsd xmm1, qword [0x497160]
ucomisd xmm0, xmm1
lahf
test ah, 0x44
jp 0x41343c
inc word [0x4a4010]
movsx eax, word [0x4a4010]
movsd xmm1, qword [0x4a4078]
sub eax, 0x6f3283de
movss xmm0, dword [0x4a40c0]
movd xmm2, eax
cvtdq2ps xmm2, xmm2
subss xmm2, xmm0
cvtps2pd xmm0, xmm2
subsd xmm1, xmm0
movsd qword [0x4a4078], xmm1
movss xmm0, dword [0x4a40c0]
subss xmm0, xmm4
movss dword [0x4a40c0], xmm0
jmp 0x41343c
mov eax, dword [0x4a4244]
mov word [0x4a4290], ax
movsd xmm1, qword [0x4a4310]
movsd xmm0, qword [0x4a4310]
mov al, byte [ebp - 3]
subsd xmm0, xmm3
shr al, 4
add byte [ebp - 7], al
comisd xmm1, xmmword [0x49a318]
movsd qword [0x4a4310], xmm0
jb 0x41348f
movss xmm0, dword [0x4a4188]
movss dword [0x4a44b8], xmm0
movss xmm0, dword [0x4a4188]
addss xmm0, xmm4
movss dword [0x4a4188], xmm0
mov al, byte [ebp - 3]
xor edi, edi
and al, 0xf
shl al, 2
mov byte [ebp - 6], al
movsx eax, word [0x4a444c]
movss xmm0, dword [0x4a43d0]
movd xmm1, eax
cvtdq2ps xmm1, xmm1
mulss xmm0, xmm1
cvttss2si eax, xmm0
mov word [0x4a444c], ax
mov al, byte [ebp - 2]
shr al, 6
add byte [ebp - 6], al
add dword [0x4a43bc], 0xb83a4329
movss xmm0, dword [0x4a41b8]
mov al, byte [ebp - 2]
addss xmm0, xmm4
and al, 0x3f
mov byte [ebp - 5], al
movss dword [0x4a41b8], xmm0
movsx eax, word [0x4a4240]
movss xmm1, dword [0x4a40a4]
movss xmm2, dword [0x4a41b8]
movd xmm0, eax
movsx eax, word [0x4a4448]
cvtdq2ps xmm0, xmm0
addss xmm1, xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
addss xmm2, xmm1
movsd xmm1, qword [0x499af0]
addss xmm0, xmm2
cvttss2si eax, xmm0
mov word [0x4a4448], ax
inc word [0x4a4240]
movss xmm0, dword [0x4a40a4]
addss xmm0, xmm4
movss dword [0x4a40a4], xmm0
movsd xmm2, qword [0x4a4268]
movsd xmm0, qword [0x4a4160]
subsd xmm1, xmm0
subsd xmm2, xmm1
movsd qword [0x4a4268], xmm2
movsd xmm0, qword [0x4a4160]
addsd xmm0, xmm3
movsd qword [0x4a4160], xmm0
movsd xmm0, qword [0x4a4230]
movsd qword [0x4a4460], xmm0
test esi, esi
js 0x413930
movzx eax, word [0x4a44d0]
imul eax, eax, 0xad301def
cmp byte [ebp + 0x10], 0
mov word [0x4a44d0], ax
je 0x413821
mov cl, byte [ebp + edi - 8]
cmp cl, 0x3d
jbe 0x413821
movss xmm0, dword [0x4a40c0]
movsx eax, word [0x4a43f8]
movsd xmm1, qword [0x4a4310]
inc word [0x4a43f8]
cvtps2pd xmm2, xmm0
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm1, xmm0
movsd xmm0, qword [0x4a4310]
addsd xmm0, xmm3
subsd xmm1, qword [0x497b18]
movsd qword [0x4a4310], xmm0
movss xmm0, dword [0x4a40c0]
addss xmm0, xmm4
comisd xmm2, xmm1
movss dword [0x4a40c0], xmm0
jb 0x413651
movsx eax, word [0x4a4388]
movss xmm0, dword [0x4a43cc]
movd xmm1, eax
cvtdq2ps xmm1, xmm1
addss xmm0, xmm1
cvttss2si eax, xmm0
mov word [0x4a4388], ax
cmp cl, 0x3e
jne 0x413729
movss xmm0, dword [0x4a4410]
subss xmm0, xmm4
movss dword [0x4a4410], xmm0
movsd xmm1, qword [0x4a4268]
mov eax, dword [0x4a44a4]
subsd xmm1, qword [0x499948]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
subsd xmm1, xmm0
movss xmm0, dword [0x4a4410]
cvtps2pd xmm0, xmm0
ucomisd xmm1, xmm0
movsd xmm0, qword [0x4a4268]
addsd xmm0, xmm3
lahf
movsd qword [0x4a4268], xmm0
test ah, 0x44
jp 0x41370d
mov eax, dword [0x4a436c]
mov ecx, 0x1ba3b390
movsd xmm1, qword [0x4a4110]
sub ecx, eax
mov eax, dword [0x4a4384]
subsd xmm1, qword [0x498530]
movd xmm2, ecx
movd xmm0, eax
cvtdq2pd xmm0, xmm0
cvtdq2pd xmm2, xmm2
addsd xmm0, xmm1
ucomisd xmm2, xmm0
lahf
dec dword [0x4a436c]
test ah, 0x44
jp 0x41370d
movsd xmm0, qword [0x497cb0]
movsd qword [0x4a4050], xmm0
lea eax, [ebp - 0x14]
mov ecx, ebx
push eax
call fcn.00420b20
imul eax, dword [0x4a43a8], 0x58a34512
mov dword [0x4a43a8], eax
jmp 0x41379b
movsx eax, word [0x4a40a0]
mov ecx, 0xe7cdd0d3
sub ecx, eax
mov eax, dword [0x4a4198]
dec word [0x4a40a0]
cmp ecx, eax
jl 0x41377e
movsd xmm0, qword [0x4a4070]
subsd xmm0, xmm3
movsd qword [0x4a4070], xmm0
movsx eax, word [0x4a4318]
movsd xmm0, qword [0x4a4070]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
addsd xmm0, xmm1
movsd qword [0x4a42d8], xmm0
lea eax, [ebp - 0x18]
mov ecx, ebx
push eax
call fcn.00420b20
movzx eax, word [0x4a4468]
add eax, 0x76e1e30a
mov word [0x4a4468], ax
mov eax, dword [0x4a4178]
sub eax, 0x3deec6a
movd xmm2, eax
movsx eax, word [0x4a4468]
movss xmm0, dword [0x4a412c]
dec dword [0x4a4178]
cvtdq2ps xmm2, xmm2
movd xmm1, eax
cvtdq2ps xmm1, xmm1
subss xmm1, xmm0
comiss xmm2, xmm1
jb 0x413895
movss xmm0, dword [0x4a4410]
subss xmm0, dword [0x49a6bc]
addss xmm0, dword [0x498edc]
comiss xmm0, dword [0x499054]
jb 0x413895
movsd xmm0, qword [0x4a4028]
addsd xmm0, qword [0x498ac8]
subsd xmm0, qword [0x497880]
cvttsd2si eax, xmm0
mov word [0x4a430c], ax
jmp 0x413895
movss xmm0, dword [0x4a4020]
movss xmm1, dword [0x499194]
mov ecx, dword [ebp - 0x10]
subss xmm1, xmm0
cvttss2si eax, xmm1
mov dword [0x4a425c], eax
movss xmm0, dword [0x4a4020]
movzx eax, byte [ebp + edi - 8]
addss xmm0, xmm4
movss dword [0x4a4020], xmm0
movzx eax, byte [eax + ecx]
mov ecx, ebx
push eax
call fcn.00417510
inc word [0x4a42b0]
movsx eax, word [0x4a42b0]
movsd xmm0, qword [0x4a40f0]
add eax, 0x32e82709
movd xmm1, eax
cvtdq2pd xmm1, xmm1
addsd xmm0, xmm1
movsd qword [0x4a40f0], xmm0
movsd xmm0, qword [0x4a4238]
movsd xmm3, qword [0x496ce0]
subsd xmm0, xmm3
movsd qword [0x4a4238], xmm0
movsd xmm0, qword [0x4a4360]
addsd xmm0, xmm3
movsd qword [0x4a4360], xmm0
movsd xmm1, qword [0x4a4360]
movsd xmm0, qword [0x4a4238]
addsd xmm0, qword [0x498b10]
movsx eax, word [0x4a4448]
sub eax, 0x196b5c9d
subsd xmm1, xmm0
movd xmm0, eax
cvtdq2pd xmm0, xmm0
comisd xmm1, xmm0
jb 0x413905
add dword [0x4a436c], 0xb1a96c45
add dword [0x4a41bc], 0x161cbcaf
inc edi
movsd xmm0, qword [0x4a4230]
movss xmm4, dword [0x496cd8]
movsd qword [0x4a4460], xmm0
cmp edi, esi
jle 0x4135a0
movsx eax, word [0x4a4148]
mov ecx, 0x8b708382
sub ecx, eax
movsx eax, word [0x4a4388]
dec word [0x4a4148]
cmp ecx, eax
jne 0x413970
mov ax, word [0x4a4108]
movzx ecx, word [0x4a4034]
cwde
sub ecx, eax
mov word [0x4a4034], cx
dec word [0x4a4108]
jmp 0x413982
movzx eax, word [0x4a417c]
sub eax, 0x60521180
mov word [0x4a417c], ax
cmp esi, 3
jge 0x413b0e
mov edi, 3
sub edi, esi
mov eax, dword [0x4a41b4]
movsd xmm0, qword [0x4a4470]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
addsd xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [0x4a41b4], eax
movsd xmm0, qword [0x4a4470]
addsd xmm0, xmm3
movsd qword [0x4a4470], xmm0
movsx eax, word [0x4a4260]
sub eax, 0x5cc18c7b
cmp eax, 0x15657070
jne 0x413a1a
mov eax, dword [0x4a4308]
movss xmm0, dword [0x4a445c]
addss xmm0, dword [0x4a409c]
movd xmm1, eax
cvtdq2ps xmm1, xmm1
subss xmm1, xmm0
cvttss2si eax, xmm1
mov dword [0x4a4308], eax
movss xmm0, dword [0x4a409c]
addss xmm0, xmm4
movss dword [0x4a409c], xmm0
jmp 0x413a32
movss xmm0, dword [0x4a404c]
mulss xmm0, dword [0x498e50]
movss dword [0x4a404c], xmm0
cmp byte [ebp + 0x10], 0
mov ecx, ebx
je 0x413a8e
movss xmm0, dword [0x4a4210]
subss xmm0, dword [0x4a4060]
cvttss2si eax, xmm0
mov word [0x4a41e0], ax
lea eax, [ebp - 0x1c]
movss xmm0, dword [0x4a4210]
subss xmm0, xmm4
push eax
movss dword [0x4a4210], xmm0
call fcn.00420b20
movsx eax, word [0x4a4388]
mov ecx, dword [0x4a40c4]
add eax, 0xd75bcaba
imul ecx, eax
mov dword [0x4a40c4], ecx
jmp 0x413aeb
movss xmm0, dword [str._34]
mulss xmm0, dword [0x49a6d8]
push 0x3d
movss dword [str._34], xmm0
call fcn.00417510
mov ax, word [0x4a41b0]
movsx ecx, ax
mov eax, dword [0x4a421c]
sub ecx, eax
movss xmm0, dword [0x4a43d0]
sub ecx, 0x64426315
movd xmm1, ecx
cvtdq2ps xmm1, xmm1
addss xmm0, xmm1
movss dword [0x4a43d0], xmm0
dec word [0x4a41b0]
inc dword [0x4a421c]
movsd xmm3, qword [0x496ce0]
movss xmm4, dword [0x496cd8]
mov dword [0x4a44a8], 0x5e2bad08
sub edi, 1
jne 0x413992
dec dword [0x4a424c]
mov eax, dword [0x4a424c]
mov word [0x4a4208], ax
inc dword [0x4a4080]
mov ecx, 0x9744969e
movsx eax, word [0x4a4304]
sub ecx, eax
mov eax, dword [0x4a4080]
inc word [0x4a4304]
sub eax, 0xb9ef12d
pop edi
pop esi
pop ebx
cmp ecx, eax
jg 0x413ba0
movsd xmm0, qword [0x4a4078]
mov ecx, 0xe29e9738
subsd xmm0, qword [0x496ce0]
movsd qword [0x4a4078], xmm0
movsx eax, word [0x4a4064]
movd xmm2, eax
mov eax, dword [0x4a406c]
sub ecx, eax
movsd xmm1, qword [0x4a4078]
cvtdq2pd xmm2, xmm2
movd xmm0, ecx
cvtdq2pd xmm0, xmm0
addsd xmm1, xmm0
subsd xmm2, xmm1
cvttsd2si eax, xmm2
mov word [0x4a4064], ax
push dword [ebp - 0x10]
push 0x41
call fcn.0041b9c0
movsd xmm1, qword [0x4a4050]
add esp, 8
mov eax, dword [0x4a43b8]
subsd xmm1, qword [0x497e48]
movsd xmm2, qword [0x496ce0]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [0x4a43b8], eax
movsd xmm0, qword [0x4a4050]
addsd xmm0, xmm2
mov dword [ebp - 0x14], 0
movsd qword [0x4a4050], xmm0
movss xmm0, dword [0x4a43cc]
subss xmm0, dword [0x499460]
mov dword [ebp - 0x18], 0
movss dword [0x4a43cc], xmm0
movsd xmm1, qword [0x4a4470]
movsx eax, word [0x4a4408]
sub eax, 0x2a79c85f
movd xmm0, eax
cvtdq2pd xmm0, xmm0
subsd xmm1, xmm0
movsd qword [0x4a4470], xmm1
inc word [0x4a4408]
movsx eax, word [0x4a43ac]
sub eax, 0x668cb896
mov dword [ebp - 0x1c], 0
cmp eax, 0xef55a841
je 0x413ccb
dec word [0x4a4340]
movss xmm0, dword [0x4a410c]
subss xmm0, dword [0x496cd8]
movss dword [0x4a410c], xmm0
movsx eax, word [0x4a4340]
movsd xmm0, qword [0x4a4428]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
subsd xmm1, xmm0
movss xmm0, dword [0x4a410c]
cvtps2pd xmm0, xmm0
addsd xmm0, xmm1
cvtpd2ps xmm0, xmm0
movss dword [0x4a4048], xmm0
movsd xmm0, qword [0x4a4428]
subsd xmm0, xmm2
movsd qword [0x4a4428], xmm0
mov esp, ebp
pop ebp
ret