Function at 0x1802b7070
Capabilities:
Encode data using xor

Disassembly:
push r15
push r14
push rsi
push rdi
push rbx
sub rsp, 0x30
mov rdi, rcx
mov rdx, rdi
add rdx, 0x18
mov rcx, qword [rdx]
mov rax, qword [rdi + 0x20]
mov eax, dword [rdi + 0x20]
mov qword [rdx], 0xffffffffffffffff
cmp rcx, 0xffffffffffffffff
je 0x1802b74a2
invalid
add al, 0
invalid
mov qword [rsp + 0x20], rcx
lea r15, [rsp + 0x20]
add r15, 8
add edi, 8
mov qword [rsp + 0x28], rax
mov rcx, rdi
call fcn.180405ba0
mov rsi, rax
add rdi, 0x10
lea rcx, [rsp + 0x20]
mov rdx, rsi
call fcn.18041c1c0
cmp rax, 0
sete cl
test cl, 1
jne 0x1802b70dd
jmp 0x1802b720a
mov eax, dword [0x180527018]
xor eax, dword [0x18052701c]
xor eax, 0x14aa213f
and eax, 0x2fcdbde9
sub eax, 0x3e818897
cmp eax, 0x827c112f
jb 0x1802b74ae
add byte [rax], al
jmp 0x1802b7105
mov eax, dword [0x180527020]
sub eax, dword [0x180527024]
and eax, 0x81b06f98
sub eax, 0xba0e9c52
and eax, 0x5a3f8aa5
mov r14, rsi
add r14, 0x18
cmp eax, 0xb2b75255
jae 0x1802b7105
jmp 0x1802b7130
mov rbx, rsi
add rbx, 0x20
mov cl, 1
xor eax, eax
lock cmpxchg byte [rsi + 0x20], cl
sete al
test al, 1
jne 0x1802b7157
mov rcx, rbx
mov r8d, 0x3b9aca00
retf 0x3b9a
call fcn.1804719a0
jmp 0x1802b7157
mov rdx, rsi
add rdx, 0x28
sub byte [rcx + rcx*4 - 0xf], cl
mov r8, rdi
call fcn.180419320
mov cl, al
xor edx, edx
mov al, 1
lock cmpxchg byte [rbx], dl
sete r8b
test cl, 1
jne 0x1802b71e9
mov eax, dword [0x180527028]
add eax, dword [0x18052702c]
or eax, 0x47c738bb
and eax, 0x84253b42
or eax, 0xce14511
cmp eax, 0x263e1760
ja 0x1802b74bb
jmp 0x1802b71a4
mov eax, dword [0x180527030]
add eax, dword [0x180527034]
mov ecx, 0x57b68546
xor edx, edx
div ecx
sub eax, 0xc61f1742
mov ecx, 0xd776f15e
xor edx, edx
div ecx
cmp eax, 0xf8ac325b
ja 0x1802b71a4
test r8b, 1
jne 0x1802b72d5
jmp 0x1802b71da
mov rcx, rbx
xor edx, edx
call fcn.180471ff0
jmp 0x1802b72d5
test r8b, 1
jne 0x1802b71fd
jmp 0x1802b71f1
mov rcx, rbx
xor edx, edx
call fcn.180471ff0
jmp 0x1802b71fd
mov rcx, rsi
call fcn.1804104a0
jmp 0x1802b72d5
mov rcx, rax
and rcx, 3
lea rdx, [0x18048a02c]
movsxd rcx, dword [rdx + rcx*4]
add rcx, rdx
jmp rcx
mov rsi, qword [r15]
cmp rsi, 0
je 0x1802b7446
mov rcx, rsi
call fcn.18041b8c0
mov rax, qword [rsi]
lock dec qword [rax]
sete al
test al, 1
jne 0x1802b72fa
jmp 0x1802b7361
mov rcx, rsi
call fcn.180279160
mov eax, dword [str.nZ_]
and eax, dword [0x18052704c]
imul eax, eax, 0x7e75ead4
mov ecx, 0x7a85c629
xor edx, edx
div ecx
mov ecx, 0x1a016c6e
xor edx, edx
div ecx
cmp eax, 0xe4367c95
jae 0x1802b74dd
mov eax, dword [0x180527050]
or eax, dword [0x180527054]
mov ecx, 0xf2eaceb6
xor edx, edx
div ecx
add eax, 0xa360f9bb
mov ecx, 0x52aa2093
xor edx, edx
div ecx
cmp eax, 0x1b9e7b86
jae 0x1802b74dd
jmp 0x1802b7361
add rsi, 8
mov rax, qword [rsi]
mov rcx, 0xffffffffffffffff
lock xadd qword [rax], rcx
mov eax, dword [0x180527058]
xor eax, dword [str.__a_P_]
add eax, 0xd7beb37d
mov r8d, 0x5594baf8
xor edx, edx
div r8d
xor eax, 0xf330dd53
cmp eax, 0xcc65ca24
jb 0x1802b74ea
jmp 0x1802b73a2
mov eax, dword [0x180527060]
and eax, dword [0x180527064]
or eax, 0x851b0de8
xor eax, 0x886c940a
mov r8d, 0xd3226bf9
xor edx, edx
div r8d
cmp rcx, 1
sete dl
cmp eax, 0xd8084cf0
je 0x1802b73a2
test dl, 1
jne 0x1802b73d8
jmp 0x1802b7431
mov rcx, rsi
call fcn.180272d20
mov eax, dword [0x180527068]
and eax, dword [0x18052706c]
imul eax, eax, 0xc7dd3150
add eax, 0xc0a00271
and eax, 0x4d342912
cmp eax, 0xa182f493
je 0x1802b74fb
mov eax, dword [0x180527070]
xor eax, dword [0x180527074]
sub eax, 0x9253aa90
imul eax, eax, 0x1fad3dd4
imul eax, eax, 0xa0fc1c7c
cmp eax, 0x97519112
je 0x1802b74fb
jmp 0x1802b7431
mov rcx, qword [r15]
mov edx, 0x20
mov r8d, 8
call fcn.1802cbf20
jmp 0x1802b7446
mov rcx, qword [rsp + 0x20]
call qword [sym.imp.ws2_32.dll_closesocket]
mov eax, dword [0x180527078]
xor edx, edx
div dword [str.2UEkv]
add eax, 0xa7f5d0a8
mov ecx, 0xa8014e16
xor edx, edx
div ecx
imul eax, eax, 0xdf281ee
cmp eax, 0xb02dfbe9
jae 0x1802b7508
mov eax, dword [0x180527080]
and eax, dword [0x180527084]
xor eax, 0xa2328254
or eax, 0x8a2a219f
add eax, 0x20d063bb
cmp eax, 0x8e1b2a7
jbe 0x1802b7508
jmp 0x1802b74a2
add rsp, 0x30
pop rbx
pop rdi
pop rsi
pop r14
pop r15
ret
invalid
or byte [rbx + 0x13deec9b], 0xca
cmp eax, 0xcb80721f
jmp 0x1802b71a2
jp 0x1802b74bb
retf
adc ah, byte [rsi]
jne 0x1802b7513
pop rdi
sbb eax, 0xfee7b633
and al, 0xe9
movsd dword [rdi], dword [rsi]
invalid
invalid
fcomp dword [rdi - 0x288517ba]
ret
invalid