Function at 0x14010d7d0
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 0x10], rdx
push rbx
sub rsp, 0xd0
mov rbx, rcx
call fcn.14010d260
cmp qword [rbx + 0x228], 0
jne 0x14010d806
mov rcx, rbx
call fcn.14010d400
test eax, eax
jne 0x14010d806
xor eax, eax
add rsp, 0xd0
pop rbx
ret
mov rcx, qword [rbx + 0x238]
mov qword [rsp + 0xc0], rsi
mov qword [rsp + 0xb8], rdi
xor edi, edi
test rcx, rcx
je 0x14010d83e
mov rax, qword [rcx]
call qword [rax + reloc.WS2_32.dll_recv]
mov rcx, qword [rbx + 0x228]
mov rax, qword [rcx]
call qword [rax + reloc.WS2_32.dll_WSASetLastError]
mov qword [rbx + 0x238], rdi
mov rcx, qword [rbx + 0x228]
lea r8, [rbx + 0x2a0]
lea r9, [rbx + 0x238]
mov rax, qword [rcx]
mov edx, 0xa
call qword [rax + 0x40]
cmp eax, 0x887a0027
je 0x14010d8b0
test eax, eax
jns 0x14010d8b7
cmp dword [reloc.WS2_32.dll_accept], 3
jg 0x14010d894
lea r9, str.Fail_to_get_frame_hr_u
lea rdx, str....._screen_monitor_screendx.cpp
mov r8d, 0x1b2
mov ecx, 3
mov dword [rsp + 0x20], eax
call fcn.1400045f0
mov rcx, rbx
call fcn.14010d740
mov rcx, qword [rbx + 0x228]
mov rax, qword [rcx]
call qword [rax + reloc.WS2_32.dll_recv]
mov qword [rbx + 0x228], rdi
xor eax, eax
jmp 0x14010df99
mov rcx, qword [rbx + 0x238]
lea r8, [rbx + 0x240]
lea rdx, [0x140240450]
mov rax, qword [rcx]
mov qword [rsp + 0xc8], rbp
call qword [rax]
test eax, eax
jns 0x14010d917
cmp dword [reloc.WS2_32.dll_accept], 3
jg 0x14010d908
lea r9, str.Fail_to_get_image_hr_u
lea rdx, str....._screen_monitor_screendx.cpp
mov r8d, 0x1d7
mov ecx, 3
mov dword [rsp + 0x20], eax
call fcn.1400045f0
mov rcx, rbx
call fcn.14010d740
xor eax, eax
jmp 0x14010df91
mov qword [rsp + 0xb0], r12
cmp qword [rbx + 0x248], rdi
jne 0x14010d9cf
mov rcx, qword [rbx + 0x240]
lea rdx, [rsp + 0x58]
mov rax, qword [rcx]
call qword [rax + 0x50]
mov rcx, qword [rbx + 0x218]
mov dword [rsp + 0x74], 3
mov dword [rsp + 0x7c], 0x30000
mov dword [rsp + 0x78], edi
mov dword [rsp + 0x80], edi
mov dword [rsp + 0x60], 1
mov dword [rsp + 0x64], 1
mov dword [rsp + 0x6c], 1
mov rax, qword [rcx]
lea r9, [rbx + 0x248]
lea rdx, [rsp + 0x58]
xor r8d, r8d
call qword [rax + 0x28]
mov r12d, eax
test eax, eax
jns 0x14010d9cf
mov rcx, rbx
call fcn.14010d740
cmp dword [reloc.WS2_32.dll_accept], 3
jg 0x14010d9c8
lea r9, str.Fail_to_allow_image_hr_u
lea rdx, str....._screen_monitor_screendx.cpp
mov r8d, 0x200
mov ecx, 3
mov dword [rsp + 0x20], r12d
call fcn.1400045f0
xor eax, eax
jmp 0x14010df89
mov rcx, qword [rbx + 0x220]
mov r8, qword [rbx + 0x240]
mov rdx, qword [rbx + 0x248]
mov rax, qword [rcx]
call qword [rax + 0x178]
cmp qword [rbx + 0x230], rdi
jne 0x14010da50
mov rcx, qword [rbx + 0x248]
lea r8, [rbx + 0x230]
lea rdx, [0x140240408]
mov rax, qword [rcx]
call qword [rax]
mov esi, eax
test eax, eax
jns 0x14010da50
mov rcx, rbx
call fcn.14010d740
cmp dword [reloc.WS2_32.dll_accept], 3
jg 0x14010da49
lea r9, str.Fail_to_get_buffer_hr_u
lea rdx, str....._screen_monitor_screendx.cpp
mov r8d, 0x225
mov ecx, 3
mov dword [rsp + 0x20], esi
call fcn.1400045f0
xor eax, eax
jmp 0x14010df89
mov rcx, qword [rbx + 0x230]
lea rdx, [rsp + 0x48]
mov r8d, 3
mov rax, qword [rcx]
call qword [rax + 0x48]
mov esi, eax
test eax, eax
jns 0x14010daa8
mov rcx, rbx
call fcn.14010d740
cmp dword [reloc.WS2_32.dll_accept], 3
jg 0x14010daa1
lea r9, [0x1402403c8]
lea rdx, str....._screen_monitor_screendx.cpp
mov r8d, 0x23a
mov ecx, 3
mov dword [rsp + 0x20], esi
call fcn.1400045f0
xor eax, eax
jmp 0x14010df89
mov qword [rsp + 0xa8], r13
mov qword [rsp + 0xa0], r14
mov qword [rsp + 0x98], r15
cmp dword [0x1402e49f0], edi
je 0x14010df59
mov ecx, dword [rbx + 0x2cc]
cmp ecx, dword [rbx + 0x258]
jbe 0x14010db09
mov rcx, qword [rbx + 0x250]
test rcx, rcx
je 0x14010daeb
call fcn.1401e64f8
mov ecx, dword [rbx + 0x2cc]
call fcn.1401e6440
mov ecx, dword [rbx + 0x2cc]
mov dword [rbx + 0x258], ecx
mov qword [rbx + 0x250], rax
cmp qword [rbx + 0x2a8], rdi
jle 0x14010db2a
mov eax, dword [rbx + 0x2bc]
mov dword [rbx + 0x274], eax
mov eax, dword [rbx + 0x2c0]
mov dword [rbx + 0x278], eax
mov r8, qword [rbx + 0x250]
test r8, r8
je 0x14010df53
mov dword [rsp + 0xf0], edi
test ecx, ecx
je 0x14010db75
mov rcx, qword [rbx + 0x228]
mov edx, dword [rbx + 0x258]
lea rax, [rbx + 0x25c]
mov r10, qword [rcx]
lea r9, [rsp + 0xf0]
mov qword [rsp + 0x20], rax
call qword [r10 + 0x58]
test eax, eax
js 0x14010df59
movsxd rcx, dword [rbx + 0x274]
mov r10, qword [rsp + 0x50]
mov r15d, dword [rbx + 0x278]
mov qword [rsp + 0x30], r10
test ecx, ecx
jns 0x14010dba1
mov r9d, ecx
neg r9d
mov dword [rsp + 0xe0], r9d
jmp 0x14010dbab
mov r9d, edi
mov dword [rsp + 0xe0], edi
test r15d, r15d
jns 0x14010dbb5
mov edi, r15d
neg edi
mov r8d, dword [rbx + 0x260]
mov edx, dword [rbx + 0x27c]
lea eax, [r8 + rcx]
cmp eax, edx
jbe 0x14010dbce
sub edx, ecx
jmp 0x14010dbd1
mov edx, r8d
mov eax, dword [rbx + 0x25c]
movsxd rsi, r9d
mov r11, rcx
mov qword [rsp + 0xf8], rcx
movsxd r13, edx
mov qword [rsp + 0x38], rsi
cmp eax, 1
jne 0x14010dcfe
mov ecx, dword [rbx + 0x264]
mov r14d, dword [rbx + 0x280]
shr ecx, 1
lea eax, [rcx + r15]
cmp eax, r14d
jbe 0x14010dc13
sub r14d, r15d
jmp 0x14010dc16
mov r14d, ecx
mov r8d, dword [rbx + 0x268]
imul r8d, ecx
add r8, qword [rbx + 0x250]
cmp edi, r14d
mov qword [rsp + 0x40], r8
jge 0x14010df59
nop word [rax + rax]
mov ecx, dword [rbx + 0x268]
lea eax, [rdi + r15]
imul eax, dword [rsp + 0x48]
imul ecx, edi
movsxd rdx, eax
mov rax, qword [rbx + 0x250]
add rdx, r10
cmp rsi, r13
lea rbp, [rcx + rax]
lea r12, [rcx + r8]
mov r10d, r9d
jge 0x14010dce9
lea rax, [rsi + r11]
mov r11, r13
sub r11, rsi
lea r9, [rdx + rax*4]
or esi, 0xffffffff
mov eax, r10d
mov ecx, 7
mov r8d, 1
and eax, 7
mov edx, 0xff000000
sub ecx, eax
mov eax, r10d
sar eax, 3
shl r8d, cl
test byte [rax + rbp], r8b
movzx ecx, byte [rax + r12]
cmovne edx, esi
and ecx, r8d
neg ecx
sbb eax, eax
and edx, dword [r9]
add r9, 4
and eax, 0xffffff
inc r10d
xor edx, eax
sub r11, 1
mov dword [r9 - 4], edx
jne 0x14010dc80
mov rsi, qword [rsp + 0x38]
mov r8, qword [rsp + 0x40]
mov r9d, dword [rsp + 0xe0]
mov r11, qword [rsp + 0xf8]
mov r10, qword [rsp + 0x30]
inc edi
cmp edi, r14d
jl 0x14010dc40
jmp 0x14010df59
cmp eax, 2
jne 0x14010de76
mov ecx, dword [rbx + 0x264]
mov r12d, dword [rbx + 0x280]
lea eax, [rcx + r15]
cmp eax, r12d
jbe 0x14010dd22
sub r12d, r15d
jmp 0x14010dd25
mov r12d, ecx
cmp edi, r12d
jge 0x14010df59
nop
mov ebp, dword [rbx + 0x268]
lea eax, [rdi + r15]
imul eax, dword [rsp + 0x48]
imul ebp, edi
movsxd rcx, eax
add rcx, r10
mov r10d, r9d
add rbp, qword [rbx + 0x250]
cmp rsi, r13
jge 0x14010de61
lea rax, [rsi + r11]
mov r11, r13
lea r9, [rcx + rax*4 + 2]
sub r11, rsi
nop word [rax + rax]
lea eax, [r10*4]
movsxd r8, eax
add r8, rbp
movzx eax, byte [r8 + 3]
cmp al, 0xff
jne 0x14010dda5
movzx eax, byte [r8]
mov byte [r9 - 2], al
movzx eax, byte [r8 + 1]
mov byte [r9 - 1], al
movzx eax, byte [r8 + 2]
mov byte [r9], al
jmp 0x14010de40
test al, al
je 0x14010de40
movzx eax, byte [r8 + 3]
mov ecx, 0xff
sub ecx, eax
movzx eax, byte [r9 - 2]
imul ecx, eax
mov eax, 0x80808081
add ecx, 0x7f
imul ecx
add edx, ecx
mov ecx, 0xff
sar edx, 7
mov eax, edx
shr eax, 0x1f
add edx, eax
add dl, byte [r8]
mov byte [r9 - 2], dl
movzx eax, byte [r8 + 3]
sub ecx, eax
movzx eax, byte [r9 - 1]
imul ecx, eax
mov eax, 0x80808081
add ecx, 0x7f
imul ecx
add edx, ecx
mov ecx, 0xff
sar edx, 7
mov eax, edx
shr eax, 0x1f
add edx, eax
add dl, byte [r8 + 1]
mov byte [r9 - 1], dl
movzx eax, byte [r8 + 3]
sub ecx, eax
movzx eax, byte [r9]
imul ecx, eax
mov eax, 0x80808081
add ecx, 0x7f
imul ecx
add edx, ecx
sar edx, 7
mov eax, edx
shr eax, 0x1f
add edx, eax
add dl, byte [r8 + 2]
mov byte [r9], dl
inc r10d
add r9, 4
sub r11, 1
jne 0x14010dd70
mov r9d, dword [rsp + 0xe0]
mov r11, qword [rsp + 0xf8]
mov r10, qword [rsp + 0x30]
inc edi
cmp edi, r12d
jl 0x14010dd30
jmp 0x14010df59
mov ecx, dword [rbx + 0x264]
mov r11d, dword [rbx + 0x280]
lea eax, [rcx + r15]
cmp eax, r11d
jbe 0x14010de91
sub r11d, r15d
jmp 0x14010de94
mov r11d, ecx
cmp edi, r11d
jge 0x14010df59
mov rbp, qword [rsp + 0xf8]
nop word [rax + rax]
lea eax, [rdi + r15]
mov r8d, r9d
imul eax, dword [rsp + 0x48]
movsxd rcx, eax
add rcx, r10
mov r10d, dword [rbx + 0x268]
imul r10d, edi
add r10, qword [rbx + 0x250]
cmp rsi, r13
jge 0x14010df41
lea rax, [rsi + rbp]
mov r9, r13
lea rcx, [rcx + rax*4 + 2]
sub r9, rsi
nop dword [rax + rax]
lea eax, [r8*4]
movsxd rdx, eax
add rdx, r10
cmp byte [rdx + 3], 0
jne 0x14010df19
movzx eax, byte [rdx]
mov byte [rcx - 2], al
movzx eax, byte [rdx + 1]
mov byte [rcx - 1], al
movzx eax, byte [rdx + 2]
mov byte [rcx], al
jmp 0x14010df2c
movzx eax, byte [rdx]
xor byte [rcx - 2], al
movzx eax, byte [rdx + 1]
xor byte [rcx - 1], al
movzx eax, byte [rdx + 2]
xor byte [rcx], al
inc r8d
add rcx, 4
sub r9, 1
jne 0x14010def0
mov r9d, dword [rsp + 0xe0]
mov r10, qword [rsp + 0x30]
inc edi
cmp edi, r11d
jl 0x14010deb0
jmp 0x14010df59
mov dword [rbx + 0x258], edi
mov rcx, qword [rsp + 0xe8]
mov r15, qword [rsp + 0x98]
mov r14, qword [rsp + 0xa0]
mov r13, qword [rsp + 0xa8]
test rcx, rcx
je 0x14010df84
mov eax, dword [rsp + 0x48]
mov dword [rcx], eax
mov rax, qword [rsp + 0x50]
mov r12, qword [rsp + 0xb0]
mov rbp, qword [rsp + 0xc8]
mov rsi, qword [rsp + 0xc0]
mov rdi, qword [rsp + 0xb8]
add rsp, 0xd0
pop rbx
ret