Function at 0x1400a6dd0
Capabilities:
Encrypt data using rc4 prga

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
mov eax, 0x1218
call fcn.1400d1fa0
sub rsp, rax
movapd xmmword [rsp + 0x1200], xmm8
movaps xmmword [rsp + 0x11f0], xmm7
movaps xmmword [rsp + 0x11e0], xmm6
mov r13, r8
mov rsi, rdx
mov rdi, rcx
mov rax, qword [0x14013aa80]
xor rax, rsp
mov qword [rsp + 0x11d8], rax
lea rdx, [rsp + 0x5d0]
lea r14, [rsp + 0x1d0]
mov rcx, r8
mov r8, r14
call fcn.1400a8c80
test eax, eax
je 0x1400a6e46
xor ebp, ebp
xor ebx, ebx
jmp 0x1400a7d96
lea r9, [rsp + 0x61]
lea r11, [rsi - 5]
lea rdx, str.0123456789abcdefghijklmnopqrstuvwxyz
movaps xmm6, xmmword [str.________________0000000000000000_t]
movaps xmm7, xmmword [0x140112640]
movsd xmm8, qword [0x140112620]
xor ebp, ebp
xor r10d, r10d
xor ebx, ebx
mov rax, rbp
mov rbp, rax
movzx ecx, byte [r13]
cmp ecx, 0x25
je 0x1400a6ec0
test ecx, ecx
je 0x1400a7d96
mov rax, rbp
nop
cmp rax, rsi
jae 0x1400a7d8f
mov byte [rdi], cl
inc rdi
inc rax
inc ebx
movzx ecx, byte [r13 + 1]
inc r13
test ecx, ecx
je 0x1400a6e77
cmp ecx, 0x25
jne 0x1400a6e90
jmp 0x1400a6e77
movzx eax, byte [r13 + 1]
cmp al, 0x25
jne 0x1400a6ee3
cmp rbp, rsi
jae 0x1400a7d96
add r13, 2
mov byte [rdi], 0x25
inc rdi
inc rbp
inc ebx
jmp 0x1400a6e74
mov qword [rsp + 0x58], rdx
lea edx, [rax - 0x30]
xor ecx, ecx
cmp dl, 9
ja 0x1400a6f27
add r13, 2
xor edx, edx
nop dword [rax + rax]
movzx eax, al
cmp edx, 0x80
lea ecx, [rdx + rdx*4]
lea ecx, [rax + rcx*2 - 0x30]
cmovge ecx, edx
movzx eax, byte [r13]
lea r8d, [rax - 0x30]
inc r13
mov edx, ecx
cmp r8b, 0xa
jb 0x1400a6f00
lea edx, [rcx - 1]
cmp al, 0x24
cmovne edx, r10d
cmp ecx, 0x81
cmovge edx, r10d
cmp ecx, 1
cmovb edx, r10d
movsxd rax, edx
lea r13, [rax + rax*2]
lea r8, [rsp + r13*8]
add r8, 0x5d4
mov eax, dword [rsp + r13*8 + 0x5d4]
test eax, 0x4000
jne 0x1400a6f79
inc r10d
mov r15d, dword [rsp + r13*8 + 0x5d8]
mov r12d, r15d
lea rcx, [0x1400a7e4c]
jmp 0x1400a6fb3
mov edx, eax
movsxd r15, dword [rsp + r13*8 + 0x5d8]
lea rax, [r15 + r15*2]
mov r12d, dword [rsp + rax*8 + 0x5e0]
add r10d, 2
test r12d, r12d
lea rcx, [0x1400a7e4c]
js 0x1400a6fa3
mov eax, edx
jmp 0x1400a6fb3
neg r12d
mov eax, edx
and eax, 0xfffffefb
or eax, 4
mov dword [r8], eax
mov dword [rsp + 0x54], r10d
mov edx, 1
test eax, 0x10000
mov dword [rsp + 0x28], eax
jne 0x1400a6fdd
mov r10d, 0xffffffff
test ax, ax
jns 0x1400a7001
mov r10d, dword [rsp + r13*8 + 0x5dc]
jmp 0x1400a7001
movsxd rax, dword [rsp + r13*8 + 0x5dc]
lea rax, [rax + rax*2]
mov r10d, dword [rsp + rax*8 + 0x5e0]
inc dword [rsp + 0x54]
test r10d, r10d
mov eax, 0xffffffff
cmovs r10d, eax
lea rax, [rsp + r13*8]
add rax, 0x5d0
mov eax, dword [rax]
dec eax
cmp eax, 6
ja case.0x1400a701f.5
movsxd rax, dword [rcx + rax*4]
add rax, rcx
jmp rax
mov r13, qword [rsp + r13*8 + 0x5e0]
test r13, r13
mov qword [rsp + 0x30], r8
je 0x1400a7345
cmp r10d, 0xffffffff
je 0x1400a750d
movsxd rax, r10d
jmp 0x1400a7551
mov rcx, qword [rsp + r13*8 + 0x5e0]
test rcx, rcx
je 0x1400a7365
mov qword [rsp + 0x30], r8
mov qword [rsp + 0x40], r11
test dword [rsp + 0x28], 0x1000
lea r8, str.0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ
lea rax, str.0123456789abcdefghijklmnopqrstuvwxyz
cmove r8, rax
mov qword [rsp + 0x58], r8
mov r9d, reloc.WS2_32.dll_recv
mov al, 1
mov dword [rsp + 0x2c], eax
xor eax, eax
mov qword [rsp + 0x48], rax
mov dword [rsp + 0x3c], 1
xor r13d, r13d
lea r15, [rsp + 0x1c4]
jmp 0x1400a7867
mov rcx, qword [rsp + r13*8 + 0x5e0]
mov eax, dword [rsp + 0x28]
test eax, 0x20000
jne 0x1400a71b4
mov qword [rsp + 0x40], r11
mov r9d, eax
shr r9d, 3
and r9d, 1
test eax, 0x400
mov qword [rsp + 0x30], r8
mov dword [rsp + 0x3c], r9d
jne 0x1400a74c4
test eax, 0x800
lea r15, [rsp + 0x1c4]
jne 0x1400a7766
mov r9d, 0xa
test eax, 0x200
jne 0x1400a7855
mov rax, rcx
shr rax, 0x3f
mov qword [rsp + 0x48], rax
mov rax, rcx
neg rax
cmovns rcx, rax
jmp 0x1400a785c
mov eax, dword [rsp + 0x28]
test al, 0x40
jne 0x1400a7252
test al, 0x20
jne 0x1400a7141
test al, 0x10
jne 0x1400a779d
mov rax, qword [rsp + r13*8 + 0x5e0]
mov dword [rax], ebx
jmp case.0x1400a701f.5
mov qword [rsp + 0x30], r8
mov qword [rsp + 0x40], r11
movaps xmm0, xmmword [0x140112610]
movaps xmmword [rsp + 0x70], xmm0
movapd xmm0, xmmword [0x140112600]
movapd xmmword [rsp + 0x60], xmm0
lea rcx, [rsp + 0x60]
call sub.api_ms_win_crt_string_l1_1_0.dll_strlen
mov ecx, dword [rsp + 0x28]
test ecx, 0x2000
jne 0x1400a7265
mov r9d, 0xffffffff
test ecx, 0x4000
je 0x1400a7268
movsxd rcx, r15d
lea rcx, [rcx + rcx*2]
mov r9d, dword [rsp + rcx*8 + 0x5e0]
jmp 0x1400a7268
test al, 4
jne 0x1400a77b0
lea eax, [r12 - 1]
cmp r12d, 2
jl 0x1400a77ad
mov r15, r8
add r12d, 0xfffffffe
mov r8, rsi
sub r8, rbp
mov edx, 0
cmovae rdx, r8
cmp r12, rdx
cmovb rdx, r12
cmp rdx, 0x10
jb 0x1400a722a
mov r10, r9
inc rdx
mov r8d, edx
and r8d, 0xf
mov r9d, reloc.WS2_32.dll_recv
cmove r8, r9
sub rdx, r8
sub eax, edx
add ebx, edx
lea r8, [rdi + rdx]
add rbp, rdx
xor r9d, r9d
movups xmmword [rdi + r9], xmm6
add r9, 0x10
cmp rdx, r9
jne 0x1400a7216
mov rdi, r8
mov r9, r10
mov r8, r15
cmp rbp, rsi
jae 0x1400a7d96
mov byte [rdi], 0x20
inc rdi
inc rbp
inc ebx
lea r12d, [rax - 1]
cmp eax, 1
mov eax, r12d
jg 0x1400a722d
jmp 0x1400a77b0
movsxd rax, ebx
mov rcx, qword [rsp + r13*8 + 0x5e0]
mov qword [rcx], rax
jmp case.0x1400a701f.5
mov r9d, r15d
mov ecx, dword [rsp + 0x28]
test cx, cx
lea r12, [rsp + 0x61]
lea rdx, [rsp + 0x62]
mov r8, qword [rsp + 0x30]
js 0x1400a72ad
mov r10d, 0xffffffff
test ecx, 0x10000
jne 0x1400a74e9
test byte [rsp + 0x28], 4
jne 0x1400a72bc
test byte [rsp + 0x28], 2
jne 0x1400a72cb
test byte [rsp + 0x28], 1
jne 0x1400a72da
mov ecx, dword [rsp + 0x28]
jmp 0x1400a72e5
mov r10d, dword [rsp + r13*8 + 0x5dc]
test byte [rsp + 0x28], 4
je 0x1400a7299
mov byte [rsp + 0x61], 0x2d
mov r12, rdx
test byte [rsp + 0x28], 2
je 0x1400a72a0
mov byte [r12], 0x2b
inc r12
test byte [rsp + 0x28], 1
je 0x1400a72a7
mov byte [r12], 0x20
inc r12
mov ecx, dword [r8]
test cl, 8
je 0x1400a72f2
mov byte [r12], 0x23
inc r12
mov r15d, 0x20
sub r15, rax
mov byte [r12], 0
test r9d, r9d
js 0x1400a7382
cmp r9d, 0x145
mov eax, 0x145
cmovge r9d, eax
mov rcx, r12
mov rdx, r15
lea r8, [0x14011db4f]
mov dword [rsp + 0x28], r9d
mov dword [rsp + 0x3c], r10d
call fcn.1400a8a30
mov r10d, dword [rsp + 0x3c]
mov r8, qword [rsp + 0x30]
cdqe
add r12, rax
sub r15, rax
jmp 0x1400a7387
cmp r10d, 0xffffffff
je 0x1400a7537
cmp r10d, 5
jge 0x1400a7537
lea r13, [0x140122c0a]
jmp 0x1400a7533
test byte [rsp + 0x28], 4
jne 0x1400a761a
add r12d, 0xfffffffb
mov eax, r12d
mov r15d, reloc.WS2_32.dll_recv
jmp 0x1400a7ca2
mov dword [rsp + 0x28], r9d
test r10d, r10d
js 0x1400a73ff
movsd xmm0, qword [rsp + r13*8 + 0x5e0]
mov edx, dword [rsp + 0x28]
mov ecx, edx
mov eax, 0x144
sub rax, rcx
cmp r10d, edx
mov ecx, 0x144
cmovg rax, rcx
test edx, edx
cmovle rax, rcx
ucomisd xmm0, xmm8
jb 0x1400a73cc
divsd xmm0, xmm8
dec rax
ucomisd xmm0, xmm8
jae 0x1400a73bd
lea r9d, [rax - 1]
cmp r10d, eax
cmovle r9d, r10d
test r9d, r9d
mov eax, 0
cmovle r9d, eax
mov rcx, r12
mov rdx, r15
lea r8, str.._ld
call fcn.1400a8a30
cdqe
add r12, rax
mov r8, qword [rsp + 0x30]
mov eax, dword [r8]
test al, 0x20
lea rcx, [rsp + 0x80]
je 0x1400a7419
mov byte [r12], WSASetLastError
inc r12
mov eax, dword [r8]
test eax, 0x40000
jne 0x1400a7439
mov dl, 0x66
test eax, 0x80000
je 0x1400a7447
test eax, 0x1000
sete dl
shl dl, 5
or dl, 0x47
jmp 0x1400a7447
test eax, 0x1000
sete dl
shl dl, 5
or dl, 0x45
mov byte [r12], dl
mov byte [r12 + 1], 0
movq xmm3, qword [rsp + r13*8 + 0x5e0]
mov edx, 0x146
lea r8, [rsp + 0x60]
movq r9, xmm3
call fcn.140095830
movzx edx, byte [rsp + 0x80]
test dl, dl
je 0x1400a74b2
lea rcx, [rsp + 0x81]
mov rax, rbp
lea r9, [rsp + 0x61]
mov r11, qword [rsp + 0x40]
cmp rax, rsi
jae 0x1400a7d8f
mov byte [rdi], dl
inc rdi
inc rax
inc ebx
movzx edx, byte [rcx]
inc rcx
test dl, dl
jne 0x1400a7490
jmp 0x1400a7842
mov rax, rbp
lea r9, [rsp + 0x61]
mov r11, qword [rsp + 0x40]
jmp case.0x1400a701f.5
mov r9d, 8
mov r13b, 1
xor eax, eax
mov qword [rsp + 0x48], rax
mov dword [rsp + 0x2c], 0
lea r15, [rsp + 0x1c4]
jmp 0x1400a7867
movsxd rcx, dword [rsp + r13*8 + 0x5dc]
lea rcx, [rcx + rcx*2]
mov r10d, dword [rsp + rcx*8 + 0x5e0]
test byte [rsp + 0x28], 4
je 0x1400a7299
jmp 0x1400a72bc
cmp byte [r13], 0
je 0x1400a7533
mov rcx, r13
mov r15, r9
mov qword [rsp + 0x40], r11
call sub.api_ms_win_crt_string_l1_1_0.dll_strlen
mov r8, qword [rsp + 0x30]
mov r11, qword [rsp + 0x40]
mov r9, r15
jmp 0x1400a7551
xor eax, eax
jmp 0x1400a7551
mov eax, dword [rsp + 0x28]
and eax, 0xfffffff7
mov dword [rsp + 0x28], eax
mov dword [r8], eax
mov eax, 5
lea r13, str._nil_
cmp rax, 0x7fffffff
mov ecx, 0x7fffffff
cmovb rcx, rax
test byte [rsp + 0x28], 8
jne 0x1400a756d
mov edx, dword [rsp + 0x28]
jmp 0x1400a7584
cmp rbp, rsi
jae 0x1400a7d96
mov byte [rdi], 0x22
inc rdi
inc rbp
inc ebx
mov edx, dword [r8]
sub r12d, ecx
test dl, 4
jne 0x1400a765c
lea ecx, [r12 - 1]
test r12d, r12d
jle 0x1400a7659
mov r10, r9
mov r8d, ecx
mov r9, rsi
sub r9, rbp
mov edx, 0
cmovae rdx, r9
cmp r8, rdx
cmovb rdx, r8
cmp rdx, 0x10
jb 0x1400a75f6
inc rdx
mov r8d, edx
and r8d, 0xf
mov r9d, reloc.WS2_32.dll_recv
cmove r8, r9
sub rdx, r8
sub ecx, edx
add ebx, edx
lea r8, [rdi + rdx]
add rbp, rdx
xor r9d, r9d
movups xmmword [rdi + r9], xmm6
add r9, 0x10
cmp rdx, r9
jne 0x1400a75e5
mov rdi, r8
mov r9, r10
cmp rbp, rsi
jae 0x1400a7d96
mov byte [rdi], 0x20
inc rdi
inc rbp
inc ebx
lea r12d, [rcx - 1]
test ecx, ecx
mov ecx, r12d
jg 0x1400a75f9
jmp 0x1400a765c
lea eax, [r12 - 6]
cmp r12d, 6
jl 0x1400a784a
mov r10, r8
mov edx, eax
mov r8, rsi
sub r8, rbp
mov ecx, 0
cmovae rcx, r8
cmp rdx, rcx
cmovb rcx, rdx
cmp rcx, 0x10
jae 0x1400a7c4c
mov r15d, reloc.WS2_32.dll_recv
jmp 0x1400a7c80
mov r12d, ecx
test rax, rax
je 0x1400a7697
mov r15, r9
lea rcx, [rax + rbp]
lea edx, [rbx + rax]
xor r8d, r8d
lea r9, [r8 + rbp]
movzx r10d, byte [r13 + r8]
test r10b, r10b
je 0x1400a769e
cmp r9, rsi
jae 0x1400a7df1
mov byte [rdi + r8], r10b
inc r8
cmp rax, r8
jne 0x1400a766e
add rdi, r8
jmp 0x1400a76a9
mov rcx, rbp
mov edx, ebx
jmp 0x1400a76ac
add ebx, r8d
add rdi, r8
mov rcx, r9
mov edx, ebx
mov r9, r15
mov rbx, qword [rsp + 0x30]
mov eax, dword [rbx]
test al, 4
je 0x1400a7744
test r12d, r12d
jle 0x1400a7744
mov r10, r9
lea r8d, [r12 - 1]
mov r9, rsi
sub r9, rcx
mov eax, 0
cmovae rax, r9
cmp r8, rax
cmovb rax, r8
cmp rax, 0x10
jb 0x1400a771f
inc rax
mov r8d, eax
and r8d, 0xf
mov r9d, reloc.WS2_32.dll_recv
cmove r8, r9
sub rax, r8
sub r12d, eax
add edx, eax
lea r8, [rdi + rax]
add rcx, rax
xor r9d, r9d
movups xmmword [rdi + r9], xmm6
add r9, 0x10
cmp rax, r9
jne 0x1400a770e
mov rdi, r8
inc r12d
mov r9, r10
cmp rcx, rsi
jae 0x1400a7dea
mov byte [rdi], 0x20
inc rdi
inc rcx
inc edx
dec r12d
cmp r12d, 1
jg 0x1400a7725
mov eax, dword [rbx]
test al, 8
je 0x1400a775c
cmp rcx, rsi
jae 0x1400a7dea
mov byte [rdi], 0x22
inc rdi
inc rcx
inc edx
mov rbp, rcx
mov ebx, edx
jmp case.0x1400a701f.5
test eax, 0x1000
lea r8, str.0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ
lea rax, str.0123456789abcdefghijklmnopqrstuvwxyz
cmove r8, rax
mov qword [rsp + 0x58], r8
mov r9d, reloc.WS2_32.dll_recv
mov al, 1
mov dword [rsp + 0x2c], eax
xor eax, eax
mov qword [rsp + 0x48], rax
xor r13d, r13d
jmp 0x1400a7867
mov rax, qword [rsp + r13*8 + 0x5e0]
mov word [rax], bx
jmp case.0x1400a701f.5
mov r12d, eax
cmp rbp, rsi
jae 0x1400a7d96
mov byte [rdi], cl
inc rdi
lea rax, [rbp + 1]
inc ebx
test byte [r8], 4
je 0x1400a7842
cmp r12d, 2
jl 0x1400a7842
lea ecx, [r12 - 2]
not rbp
add rbp, rsi
cmp rcx, rbp
cmovb rbp, rcx
cmp rbp, 0x10
jb 0x1400a781a
inc rbp
mov ecx, ebp
and ecx, 0xf
mov edx, reloc.WS2_32.dll_recv
cmove rcx, rdx
sub rbp, rcx
sub r12d, ebp
add ebx, ebp
lea rcx, [rdi + rbp]
add rax, rbp
xor edx, edx
movups xmmword [rdi + rdx], xmm6
add rdx, 0x10
cmp rbp, rdx
jne 0x1400a780a
mov rdi, rcx
inc r12d
mov rbp, rax
cmp rsi, rbp
je 0x1400a7e00
mov byte [rdi], 0x20
inc rdi
inc rbp
inc ebx
dec r12d
cmp r12d, 2
jg 0x1400a7820
jmp case.0x1400a701f.5
mov rbp, rax
jmp case.0x1400a701f.5
mov r15d, reloc.WS2_32.dll_recv
jmp 0x1400a7ca2
xor eax, eax
mov qword [rsp + 0x48], rax
xor r13d, r13d
mov dword [rsp + 0x2c], 0
cmp r10d, 0xffffffff
cmove r10d, edx
lea r8, [rsp + 0x1c4]
test rcx, rcx
jne 0x1400a78e0
mov r15, r8
lea rax, [rsp + 0x1c4]
sub eax, r15d
sub r12d, eax
sub r10d, eax
mov edx, dword [rsp + 0x3c]
test edx, edx
sete al
xor r13b, 1
or r13b, al
jne 0x1400a78f2
test r10d, r10d
jg 0x1400a78f2
mov byte [r8], 0x30
dec r8
dec r12d
mov r13, qword [rsp + 0x48]
mov r9d, dword [rsp + 0x2c]
jmp 0x1400a792b
mov rax, rcx
xor edx, edx
div r9
mov r11, qword [rsp + 0x58]
movzx edx, byte [r11 + rdx]
mov byte [r8], dl
dec r8
dec r15
cmp rcx, r9
mov rcx, rax
jb 0x1400a787f
mov rax, rcx
shr rax, 0x20
jne 0x1400a78bd
mov eax, ecx
xor edx, edx
div r9d
jmp 0x1400a78c5
test r10d, r10d
lea rcx, [rsp + 0x80]
mov r13, qword [rsp + 0x48]
mov r9d, dword [rsp + 0x2c]
jle 0x1400a792b
sub r12d, r10d
cmp r8, rcx
jb 0x1400a792b
mov byte [r8], 0x30
dec r8
cmp r8, rcx
setae al
cmp r10d, 2
jb 0x1400a792b
dec r10d
test al, al
jne 0x1400a7911
test edx, edx
setne cl
and cl, r9b
lea eax, [r12 - 2]
test cl, cl
cmove eax, r12d
mov r10d, dword [rsp + 0x28]
mov edx, r10d
and edx, 3
xor r9d, r9d
or edx, r13d
setne r9b
sub eax, r9d
test r10d, 0x104
je 0x1400a7983
lea r11, [rsp + 0x1c4]
mov r15d, reloc.WS2_32.dll_recv
mov r12d, 0x104
test r13d, r13d
je 0x1400a7a13
mov dl, 0x2d
jmp 0x1400a7a2a
lea edx, [rax - 1]
test eax, eax
lea r11, [rsp + 0x1c4]
mov r15d, reloc.WS2_32.dll_recv
mov r12d, 0x104
jle 0x1400a7c3b
mov r9d, edx
mov r10, rsi
sub r10, rbp
mov eax, 0
cmovae rax, r10
cmp r9, rax
cmovb rax, r9
cmp rax, 0x10
jb 0x1400a79f1
inc rax
mov r9d, eax
and r9d, 0xf
cmove r9, r15
sub rax, r9
sub edx, eax
add ebx, eax
lea r9, [rdi + rax]
add rbp, rax
xor r10d, r10d
movups xmmword [rdi + r10], xmm6
add r10, 0x10
cmp rax, r10
jne 0x1400a79e0
mov rdi, r9
cmp rbp, rsi
jae 0x1400a7d96
mov byte [rdi], 0x20
inc rdi
inc rbp
inc ebx
lea eax, [rdx - 1]
test edx, edx
mov edx, eax
jg 0x1400a79f1
jmp 0x1400a7973
mov rdx, qword [rsp + 0x30]
mov edx, dword [rdx]
test dl, 2
jne 0x1400a7a28
test dl, 1
je 0x1400a7a3d
mov dl, 0x20
jmp 0x1400a7a2a
mov dl, 0x2b
cmp rbp, rsi
jae 0x1400a7d96
mov byte [rdi], dl
inc rdi
inc rbp
inc ebx
test cl, cl
je 0x1400a7a7e
cmp rbp, rsi
jae 0x1400a7d96
mov byte [rdi], 0x30
lea rcx, [rbp + 1]
cmp rcx, rsi
jae 0x1400a7e0d
mov rdx, qword [rsp + 0x30]
test dword [rdx], 0x1000
sete cl
shl cl, 5
or cl, 0x58
mov byte [rdi + 1], cl
add rdi, 2
add rbp, 2
add ebx, 2
jmp 0x1400a7a83
mov rdx, qword [rsp + 0x30]
mov r13, rdx
mov ecx, dword [rdx]
and ecx, r12d
cmp ecx, 0x100
jne 0x1400a7b07
lea ecx, [rax - 1]
test eax, eax
jle 0x1400a7b05
mov edx, ecx
mov r9, rsi
sub r9, rbp
mov eax, 0
cmovae rax, r9
cmp rdx, rax
cmovb rax, rdx
cmp rax, 0x10
jb 0x1400a7ae6
inc rax
mov edx, eax
and edx, 0xf
cmove rdx, r15
sub rax, rdx
sub ecx, eax
add ebx, eax
lea rdx, [rdi + rax]
add rbp, rax
xor r9d, r9d
movups xmmword [rdi + r9], xmm7
add r9, 0x10
cmp rax, r9
jne 0x1400a7ad5
mov rdi, rdx
cmp rbp, rsi
jae 0x1400a7d96
mov byte [rdi], 0x30
inc rdi
inc rbp
inc ebx
lea eax, [rcx - 1]
test ecx, ecx
mov ecx, eax
jg 0x1400a7ae6
jmp 0x1400a7b07
mov eax, ecx
lea rcx, [r8 + 1]
cmp rcx, r11
jbe 0x1400a7b1a
lea r9, [rsp + 0x61]
jmp 0x1400a7bb4
lea r9, [rsp + 0x1c3]
sub r9, r8
mov r10, rsi
sub r10, rbp
mov edx, 0
cmovae rdx, r10
cmp r9, rdx
cmovb rdx, r9
inc rdx
cmp rdx, 0x11
lea r11, [rsp + 0x1c5]
jb 0x1400a7b91
not r8
add r8, rdi
cmp r8, 0x10
jb 0x1400a7b91
mov r8d, edx
and r8d, 0xf
cmove r8, r15
sub rdx, r8
lea r8, [rcx + rdx]
add ebx, edx
lea r9, [rdi + rdx]
add rbp, rdx
xor r10d, r10d
movupd xmm0, xmmword [rcx + r10]
movupd xmmword [rdi + r10], xmm0
add r10, 0x10
cmp rdx, r10
jne 0x1400a7b76
mov rcx, r8
mov rdi, r9
lea r9, [rsp + 0x61]
cmp rbp, rsi
jae 0x1400a7d96
movzx edx, byte [rcx]
mov byte [rdi], dl
inc rdi
inc rbp
inc ebx
inc rcx
cmp rcx, r11
jne 0x1400a7b96
test byte [r13], 4
je 0x1400a7c42
test eax, eax
mov r11, qword [rsp + 0x40]
jle case.0x1400a701f.5
lea edx, [rax - 1]
mov r8, rsi
sub r8, rbp
mov ecx, 0
cmovae rcx, r8
cmp rdx, rcx
cmovb rcx, rdx
cmp rcx, 0x10
jb 0x1400a7c19
inc rcx
mov edx, ecx
and edx, 0xf
cmove rdx, r15
sub rcx, rdx
sub eax, ecx
add ebx, ecx
lea rdx, [rdi + rcx]
add rbp, rcx
xor r8d, r8d
movups xmmword [rdi + r8], xmm6
add r8, 0x10
cmp rcx, r8
jne 0x1400a7c08
mov rdi, rdx
inc eax
cmp rbp, rsi
jae 0x1400a7d96
mov byte [rdi], 0x20
inc rdi
inc rbp
inc ebx
dec eax
cmp eax, 1
jg 0x1400a7c1b
jmp case.0x1400a701f.5
mov eax, edx
jmp 0x1400a7973
mov r11, qword [rsp + 0x40]
jmp case.0x1400a701f.5
inc rcx
mov edx, ecx
and edx, 0xf
mov r15d, reloc.WS2_32.dll_recv
cmove rdx, r15
sub rcx, rdx
sub eax, ecx
add ebx, ecx
lea rdx, [rdi + rcx]
add rbp, rcx
xor r8d, r8d
movups xmmword [rdi + r8], xmm6
add r8, 0x10
cmp rcx, r8
jne 0x1400a7c6f
mov rdi, rdx
mov ecx, eax
mov r8, r10
cmp rbp, rsi
jae 0x1400a7d96
mov byte [rdi], 0x20
inc rdi
inc rbp
inc ebx
lea eax, [rcx - 1]
test ecx, ecx
mov ecx, eax
jg 0x1400a7c85
cmp rbp, rsi
jae 0x1400a7d96
mov byte [rdi], 0x28
lea rcx, [rbp + 1]
cmp rcx, rsi
jae 0x1400a7e17
mov byte [rdi + 1], WSASetLastError
lea rcx, [rbp + 2]
cmp rcx, rsi
jae 0x1400a7e21
mov byte [rdi + 2], 0x69
lea rcx, [rbp + 3]
cmp rcx, rsi
jae 0x1400a7e2c
mov byte [rdi + 3], WSAGetLastError
lea rcx, [rbp + 4]
cmp rcx, rsi
jae 0x1400a7e37
mov byte [rdi + 4], 0x29
add rdi, 5
lea rcx, [rbp + 5]
add ebx, 5
test byte [r8], 4
jne 0x1400a7d76
test eax, eax
jle 0x1400a7d76
lea r8d, [rax - 1]
mov rdx, r11
sub rdx, rbp
cmp r8, rdx
cmovb rdx, r8
cmp rdx, 0x10
jb 0x1400a7d54
mov r10, r9
inc rdx
mov r8d, edx
and r8d, 0xf
cmove r8, r15
sub rdx, r8
sub eax, edx
add ebx, edx
lea r8, [rdi + rdx]
add rcx, rdx
xor r9d, r9d
movups xmmword [rdi + r9], xmm6
add r9, 0x10
cmp rdx, r9
jne 0x1400a7d40
mov rdi, r8
mov r9, r10
inc eax
mov rbp, rcx
cmp rsi, rbp
je 0x1400a7e08
mov byte [rdi], 0x20
inc rdi
inc rbp
inc ebx
dec eax
cmp eax, 1
jg 0x1400a7d59
jmp case.0x1400a701f.5
mov rbp, rcx
mov r13, qword [r14]
add r14, 8
mov r10d, dword [rsp + 0x54]
mov rdx, qword [rsp + 0x58]
jmp 0x1400a6e74
cmp rbp, rsi
cmovbe rbp, rsi
test rsi, rsi
je 0x1400a7dab
cmp rbp, rsi
jne 0x1400a7da8
mov byte [rdi - 1], 0
dec ebx
jmp 0x1400a7dab
mov byte [rdi], 0
mov rcx, qword [rsp + 0x11d8]
xor rcx, rsp
call fcn.1400d2000
mov eax, ebx
movaps xmm6, xmmword [rsp + 0x11e0]
movaps xmm7, xmmword [rsp + 0x11f0]
movaps xmm8, xmmword [rsp + 0x1200]
add rsp, 0x1218
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
mov rbp, rcx
mov ebx, edx
jmp 0x1400a7d96
cmp rbp, rsi
cmovbe rbp, rsi
add ebx, r8d
add rdi, r8
jmp 0x1400a7d96
mov rcx, rsi
mov rbp, rsi
jmp 0x1400a7d9b
mov rbp, rsi
jmp 0x1400a7d96
inc rdi
inc ebx
mov rbp, rcx
jmp 0x1400a7d9b
inc rdi
mov eax, 1
jmp 0x1400a7e40
add rdi, 2
mov eax, 2
jmp 0x1400a7e40
add rdi, 3
mov eax, 3
jmp 0x1400a7e40
add rdi, 4
mov eax, 4
add ebx, eax
mov rbp, rcx
jmp 0x1400a7d9b