Function at 0x140027a80
Capabilities:
Encode data using base64

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0xb8
mov ebx, r9d
mov r14, rcx
mov edi, dword [rsp + 0x120]
mov rax, qword [0x1403a6f68]
xor rax, rsp
mov qword [rsp + 0xb0], rax
cmp r8, 0xffffffffffffffff
jne 0x140027ac9
mov rcx, rdx
mov rsi, rdx
call fcn.140274e70
mov rdx, rsi
mov r8, rax
test edi, edi
mov esi, 0x2806
cmovne esi, edi
lea eax, [rbx - 0x1000]
cmp eax, 5
jae 0x140027ae8
mov ecx, reloc.WS2_32.dll_socket
bt ecx, ebx
jb 0x140027b34
mov dword [rsp + 0x20], 0x78
lea r9, str..._.._third_party_boringssl_src_crypto_asn1_a_mbstr.c
mov ecx, listen
xor edx, edx
mov r8d, 0xb6
call fcn.14004bb80
mov ebp, 0xffffffff
mov rcx, qword [rsp + 0xb0]
xor rcx, rsp
call fcn.140262cb0
mov eax, ebp
add rsp, 0xb8
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
mov qword [rsp + 0x38], r14
mov eax, eax
lea rcx, fcn.140033ad0
mov rbp, qword [rcx + rax*8]
lea rcx, [0x1402ac798]
mov edi, dword [rcx + rax*4]
lea r14, [rsp + 0xa0]
mov rcx, r14
mov qword [rsp + 0x48], rdx
mov qword [rsp + 0x50], r8
call fcn.140032280
mov rcx, r14
call fcn.140029aa0
test rax, rax
mov qword [rsp + 0x30], rbp
je 0x140027cbc
mov dword [rsp + 0x44], edi
mov r12, qword [rsp + 0x130]
lea eax, [rbx - 0x1002]
test eax, 0xfffffffd
sete byte [rsp + 0x2f]
xor edi, edi
lea r13, [rsp + 0xa0]
lea r14, [rsp + 0x70]
xor r15d, r15d
jmp 0x140027bc4
add r15, rax
mov rcx, r13
call fcn.140029aa0
test rax, rax
je 0x140027cc1
mov rcx, r13
mov rdx, r14
call rbp
test eax, eax
je 0x140027dd5
test rdi, rdi
jne 0x140027bf0
cmp dword [rsp + 0x70], 0xfeff
sete al
and al, byte [rsp + 0x2f]
cmp al, 1
je 0x140027f1b
test sil, 2
je 0x140027c45
mov ebp, dword [rsp + 0x70]
cmp ebp, 0x80
jb 0x140027c10
and esi, 0xfffffffd
jmp 0x140027c40
mov ecx, ebp
call fcn.140093430
test eax, eax
jne 0x140027c40
cmp ebp, 0x3d
ja 0x140027caf
mov eax, ebp
movabs rcx, 0x2400fb8100000000
bt rcx, rax
jae 0x140027caf
nop word cs:[rax + rax]
mov rbp, qword [rsp + 0x30]
mov ecx, dword [rsp + 0x70]
mov eax, esi
and eax, 0xffffffef
cmp ecx, 0x7f
cmovbe eax, esi
test sil, 0x10
cmove eax, esi
mov edx, eax
and edx, 0xfffffffb
cmp ecx, 0x100
cmovb edx, eax
test al, 4
cmove edx, eax
mov esi, edx
and esi, 0xfffff7ff
cmp ecx, 0x10000
cmovb esi, edx
test edx, 0x800
cmove esi, edx
test esi, esi
je 0x140027df5
inc rdi
call fcn.140033d60
test r12, r12
jle 0x140027bb0
cmp rdi, r12
jbe 0x140027bb0
jmp 0x140027e02
mov eax, esi
and eax, 0xfffffffd
cmp ebp, 0x3f
cmovne esi, eax
jmp 0x140027c40
xor r15d, r15d
xor edi, edi
mov r14, qword [rsp + 0x128]
test r14, r14
mov rax, qword [rsp + 0x38]
jle 0x140027d0d
cmp rdi, r14
jae 0x140027d0d
mov dword [rsp + 0x20], 0xae
lea r9, str..._.._third_party_boringssl_src_crypto_asn1_a_mbstr.c
mov ecx, listen
xor edx, edx
mov r8d, 0xae
call fcn.14004bb80
lea rcx, str.minsize_zu
mov rdx, r14
call fcn.14004bde0
jmp 0x140027b09
mov r14d, 0x1001
lea r13, [0x140033e90]
mov ebp, reloc.WS2_32.dll_send
test sil, 2
jne 0x140027d6c
mov ebp, reloc.WS2_32.dll_shutdown
test sil, 0x10
jne 0x140027d6c
mov ebp, socket
test sil, 4
jne 0x140027d6c
test esi, 0x800
jne 0x140027fa6
test esi, 0x100
jne 0x140027fc3
test esi, 0x2000
jne 0x140027fe1
mov dword [rsp + 0x20], 0xce
jmp 0x140027f23
mov r15, rdi
test rax, rax
je 0x140027b0e
mov rsi, qword [rax]
mov r12, rsi
test rsi, rsi
jne 0x140027d96
mov ecx, ebp
call fcn.140029980
mov r12, rax
test rax, rax
je 0x140027b09
lea rcx, [rsp + 0x70]
call fcn.140030c80
cmp r14d, ebx
jne 0x140027e37
mov rcx, r12
mov rdx, qword [rsp + 0x48]
mov r8, qword [rsp + 0x50]
call fcn.1400297b0
test eax, eax
je 0x140027f8a
mov dword [r12 + 4], ebp
mov rax, qword [rsp + 0x38]
mov qword [rax], r12
jmp 0x140027b0e
mov dword [rsp + 0x20], 0x83
lea r9, str..._.._third_party_boringssl_src_crypto_asn1_a_mbstr.c
mov ecx, listen
xor edx, edx
mov r8d, dword [rsp + 0x44]
jmp 0x140027b04
mov dword [rsp + 0x20], 0xa0
jmp 0x140027f23
mov dword [rsp + 0x20], 0xa7
lea r9, str..._.._third_party_boringssl_src_crypto_asn1_a_mbstr.c
mov ecx, listen
xor edx, edx
mov r8d, 0xad
call fcn.14004bb80
lea rcx, str.maxsize_zu
mov rdx, r12
call fcn.14004bde0
jmp 0x140027b09
inc r15
lea rcx, [rsp + 0x70]
mov rdx, r15
call fcn.140030c90
test eax, eax
je 0x140027f8a
lea rbx, [rsp + 0xa0]
mov rcx, rbx
mov rdx, qword [rsp + 0x48]
mov r8, qword [rsp + 0x50]
call fcn.140032280
mov rcx, rbx
call fcn.140029aa0
test rax, rax
je 0x140027eb9
lea rdi, [rsp + 0xa0]
lea rbx, [rsp + 0x6c]
lea r14, [rsp + 0x70]
mov rcx, rdi
mov rdx, rbx
call qword [rsp + 0x30]
test eax, eax
je 0x140027f3c
mov edx, dword [rsp + 0x6c]
mov rcx, r14
call r13
test eax, eax
je 0x140027f3c
mov rcx, rdi
call fcn.140029aa0
test rax, rax
jne 0x140027e88
mov qword [rsp + 0x60], 0
lea rcx, [rsp + 0x70]
xor edx, edx
call fcn.1400312c0
test eax, eax
je 0x140027f5f
lea rcx, [rsp + 0x70]
lea rdx, [rsp + 0x60]
lea r8, [rsp + 0x58]
call fcn.140030d40
test eax, eax
je 0x140027f5f
mov r8, qword [rsp + 0x58]
test r8, r8
je 0x140027f5f
mov rax, r8
shr rax, 0x1f
jne 0x140027f5f
mov dword [r12 + 4], ebp
dec r8d
mov rdx, qword [rsp + 0x60]
mov rcx, r12
call fcn.140029950
jmp 0x140027dc8
mov dword [rsp + 0x20], 0x8e
lea r9, str..._.._third_party_boringssl_src_crypto_asn1_a_mbstr.c
mov ecx, listen
xor edx, edx
mov r8d, 0x7e
jmp 0x140027b04
mov dword [rsp + 0x20], 0xf4
lea r9, str..._.._third_party_boringssl_src_crypto_asn1_a_mbstr.c
mov ecx, listen
xor edx, edx
mov r8d, 0x44
call fcn.14004bb80
jmp 0x140027f8a
mov dword [rsp + 0x20], 0xfe
lea r9, str..._.._third_party_boringssl_src_crypto_asn1_a_mbstr.c
mov ecx, listen
xor edx, edx
mov r8d, 0x44
call fcn.14004bb80
mov rcx, qword [rsp + 0x60]
call fcn.1400930b0
test rsi, rsi
jne 0x140027f97
mov rcx, r12
call fcn.140029920
lea rcx, [rsp + 0x70]
call fcn.140030d20
jmp 0x140027b09
add rdi, rdi
mov r14d, 0x1002
lea r13, [fcn.140033ec0]
mov ebp, 0x1e
mov r15, rdi
jmp 0x140027d6f
shl rdi, 2
mov r14d, 0x1004
lea r13, [0x140033f20]
mov ebp, 0x1c
mov r15, rdi
jmp 0x140027d6f
mov r14d, 0x1000
lea r13, [fcn.140033d90]
mov ebp, listen
jmp 0x140027d6f