Function at 0x1400639d0
Capabilities:
Encode data using base64

Disassembly:
mov qword [rsp + 0x18], r8
mov qword [rsp + 0x10], rdx
mov qword [rsp + 8], rcx
sub rsp, 0xc8
mov rax, qword [0x1401970c0]
xor rax, rsp
mov qword [rsp + 0xb0], rax
mov dword [rsp + 0x30], 0
mov qword [rsp + 0x40], 0
mov dword [rsp + 0x20], 0
mov qword [rsp + 0x28], 0
mov rax, qword [rsp + 0xd0]
mov qword [rsp + 0x48], rax
movzx edx, byte [rsp + 0x27]
mov rcx, qword [rsp + 0x48]
call fcn.14002b800
mov rax, qword [rsp + 0xd0]
mov qword [rsp + 0x90], rax
mov rcx, qword [rsp + 0xd0]
call fcn.140022860
mov rax, qword [rsp + 0xd0]
mov qword [rsp + 0x98], rax
mov eax, dword [rsp + 0x30]
or eax, 1
mov dword [rsp + 0x30], eax
mov rax, qword [rsp + 0xe0]
mov qword [rsp + 0xa8], rax
mov rax, qword [rsp + 0xd8]
mov qword [rsp + 0xa0], rax
mov rax, qword [rsp + 0xa0]
mov rcx, qword [rsp + 0xa8]
sub rcx, rax
mov rax, rcx
mov qword [rsp + 0x50], rax
cvtsi2sd xmm0, qword [rsp + 0x50]
movsd xmm1, qword [0x14017bfa0]
mulsd xmm1, xmm0
movaps xmm0, xmm1
xor eax, eax
comisd xmm0, xmmword [0x14017bfa8]
jb 0x140063aea
subsd xmm0, qword [0x14017bfa8]
comisd xmm0, xmmword [0x14017bfa8]
jae 0x140063aea
movabs rcx, 0x8000000000000000
add rax, rcx
cvttsd2si rcx, xmm0
add rcx, rax
mov rax, rcx
mov rdx, rax
mov rcx, qword [rsp + 0xd0]
call fcn.14002d2d0
mov rax, qword [rsp + 0xe0]
cmp qword [rsp + 0xd8], rax
jne 0x140063b21
mov dword [rsp + 0x34], 1
jmp 0x140063b29
mov dword [rsp + 0x34], 0
movzx eax, byte [rsp + 0x34]
mov byte [rsp + 0x24], al
movzx eax, byte [rsp + 0x24]
test eax, eax
jne 0x140063b45
mov dword [rsp + 0x38], 1
jmp 0x140063b4d
mov dword [rsp + 0x38], 0
movzx eax, byte [rsp + 0x38]
mov byte [rsp + 0x25], al
movzx eax, byte [rsp + 0x25]
test eax, eax
je 0x140063cd0
mov rax, qword [rsp + 0xd8]
mov qword [rsp + 0x58], rax
mov rax, qword [rsp + 0x58]
movzx eax, byte [rax]
mov byte [rsp + 0x26], al
xor edx, edx
mov rax, qword [rsp + 0x40]
mov ecx, 3
div rcx
mov rax, rdx
shl rax, 3
mov ecx, reloc.WS2_32.dll_recv
sub rcx, rax
mov rax, rcx
mov qword [rsp + 0x28], rax
movzx eax, byte [rsp + 0x26]
mov rcx, qword [rsp + 0x28]
shl eax, cl
mov ecx, dword [rsp + 0x20]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x20], eax
cmp qword [rsp + 0x28], 0x10
jne 0x140063bf5
lea rax, [0x1401787f0]
mov ecx, dword [rsp + 0x20]
shr ecx, 0x12
and ecx, 0x3f
mov ecx, ecx
mov rax, qword [rax]
add rax, rcx
mov qword [rsp + 0x60], rax
mov rax, qword [rsp + 0x60]
movzx edx, byte [rax]
mov rcx, qword [rsp + 0xd0]
call fcn.140023870
cmp qword [rsp + 0x28], 8
jne 0x140063c30
lea rax, [0x1401787f0]
mov ecx, dword [rsp + 0x20]
shr ecx, 0xc
and ecx, 0x3f
mov ecx, ecx
mov rax, qword [rax]
add rax, rcx
mov qword [rsp + 0x68], rax
mov rax, qword [rsp + 0x68]
movzx edx, byte [rax]
mov rcx, qword [rsp + 0xd0]
call fcn.140023870
cmp qword [rsp + 0x28], 0
jne 0x140063cab
cmp qword [rsp + 0x40], 3
je 0x140063cab
lea rax, [0x1401787f0]
mov ecx, dword [rsp + 0x20]
shr ecx, 6
and ecx, 0x3f
mov ecx, ecx
mov rax, qword [rax]
add rax, rcx
mov qword [rsp + 0x70], rax
mov rax, qword [rsp + 0x70]
movzx edx, byte [rax]
mov rcx, qword [rsp + 0xd0]
call fcn.140023870
lea rax, [0x1401787f0]
mov ecx, dword [rsp + 0x20]
and ecx, 0x3f
mov ecx, ecx
mov rax, qword [rax]
add rax, rcx
mov qword [rsp + 0x78], rax
mov rax, qword [rsp + 0x78]
movzx edx, byte [rax]
mov rcx, qword [rsp + 0xd0]
call fcn.140023870
mov dword [rsp + 0x20], 0
mov rax, qword [rsp + 0x40]
inc rax
mov qword [rsp + 0x40], rax
mov rax, qword [rsp + 0xd8]
inc rax
mov qword [rsp + 0xd8], rax
jmp 0x140063b05
cmp qword [rsp + 0x28], 0x10
jne 0x140063d2f
lea rax, [0x1401787f0]
mov ecx, dword [rsp + 0x20]
shr ecx, 0xc
and ecx, 0x3f
mov ecx, ecx
mov rax, qword [rax]
add rax, rcx
mov qword [rsp + 0x80], rax
mov rax, qword [rsp + 0x80]
movzx edx, byte [rax]
mov rcx, qword [rsp + 0xd0]
call fcn.140023870
mov dl, 0x3d
mov rcx, qword [rsp + 0xd0]
call fcn.140023870
mov dl, 0x3d
mov rcx, qword [rsp + 0xd0]
call fcn.140023870
cmp qword [rsp + 0x28], 8
jne 0x140063d7f
lea rax, [0x1401787f0]
mov ecx, dword [rsp + 0x20]
shr ecx, 6
and ecx, 0x3f
mov ecx, ecx
mov rax, qword [rax]
add rax, rcx
mov qword [rsp + 0x88], rax
mov rax, qword [rsp + 0x88]
movzx edx, byte [rax]
mov rcx, qword [rsp + 0xd0]
call fcn.140023870
mov dl, 0x3d
mov rcx, qword [rsp + 0xd0]
call fcn.140023870
mov rax, qword [rsp + 0xd0]
mov rcx, qword [rsp + 0xb0]
xor rcx, rsp
call fcn.140163a00
add rsp, 0xc8
ret