Function at 0x180427e20
Capabilities:
Encode data using xor

Disassembly:
push r15
push r14
push rsi
push rdi
push rbx
sub rsp, 0x20
mov rsi, rcx
mov eax, dword [0x18079cf48]
xor eax, dword [0x18079cf4c]
and eax, 0x1abb4de5
imul eax, eax, 0xdcaf54e5
imul eax, eax, 0x33f3bd6d
cmp eax, 0xac602bc7
je 0x1804284ad
mov edi, dword [0x18079cf50]
add edi, dword [0x18079cf54]
xor edi, 0x7887f437
sub edi, 0xaf676811
and edi, 0xd3c31967
mov rcx, rsi
call fcn.1804538a0
mov r14, rsi
add r14, 0x18
cmp edi, 0x75e87b1b
jb 0x1804284ad
jmp 0x180427e91
mov rdi, qword [r14]
cmp rdi, 0xffffffffffffffff
sete cl
mov eax, dword [0x18079cf58]
or eax, dword [0x18079cf5c]
xor eax, 0x983e5b68
mov r8d, 0x14f78d3f
xor edx, edx
div r8d
sub eax, 0x4cb5a573
cmp eax, 0xa6b17459
jbe 0x1804284c2
mov eax, dword [0x18079cf60]
imul eax, dword [0x18079cf64]
xor eax, 0x45526c2e
mov r8d, 0x5830ee1e
xor edx, edx
div r8d
and eax, 0x6a292e69
cmp eax, 0xb07f5845
jae 0x1804284c2
test cl, 1
jne 0x18042816a
jmp 0x180427eff
mov eax, dword [0x18079cf68]
xor eax, dword [0x18079cf6c]
add eax, 0x71b02ddc
imul eax, eax, 0xd63028e2
sub eax, 0x207eb207
cmp eax, 0x55aabc87
jbe 0x1804284cf
mov eax, dword [0x18079cf70]
or eax, dword [0x18079cf74]
mov ecx, 0x80e2ed67
xor edx, edx
div ecx
xor eax, 0x780db23
or eax, 0x8533f66a
cmp eax, 0xf2c39a47
jae 0x1804284cf
jmp 0x180427f52
mov eax, dword [0x18079cf78]
or eax, dword [0x18079cf7c]
sub eax, 0x8b2104b8
or eax, 0x2e300cc2
sub eax, 0x23c5bcf0
cmp eax, 0x9ad0aec7
je 0x1804284e0
mov eax, dword [0x18079cf80]
imul eax, dword [0x18079cf84]
sub eax, 0xb6c23039
imul ecx, eax, 0xc1acd223
add ecx, 0x17e11a6
mov r15, rsi
add r15, 0x20
mov rbx, qword [rsi + 0x20]
cmp rbx, 0
sete al
cmp ecx, 0x9ae273e6
jb 0x1804284e0
test al, 1
jne 0x18042810e
jmp 0x180427fbe
mov rcx, rbx
call fcn.1806595d0
mov eax, dword [0x18079cf88]
imul eax, dword [0x18079cf8c]
sub eax, 0xe9068714
and eax, 0x9a89dd19
mov ecx, 0x1b1f605
xor edx, edx
div ecx
cmp eax, 0x1c307400
jae 0x1804284f1
mov ecx, dword [0x18079cf90]
sub ecx, dword [0x18079cf94]
or ecx, 0x5b2e71fb
add ecx, 0xb9e24fda
sub ecx, 0xc52d5cc8
mov rax, qword [rbx]
cmp ecx, 0xb0e76625
jbe 0x1804284f1
jmp 0x180428020
lock dec qword [rax]
sete al
test al, 1
je 0x18042808a
mov rcx, rbx
call fcn.1804b9d30
mov eax, dword [0x18079cf98]
xor edx, edx
div dword [0x18079cf9c]
sub eax, 0x7345ceb7
sub eax, 0x99efe519
add eax, 0xf7be105
cmp eax, 0xb28d11eb
ja 0x180428502
jmp 0x18042805d
mov eax, dword [0x18079cfa0]
or eax, dword [0x18079cfa4]
mov ecx, 0x541feebd
xor edx, edx
div ecx
imul eax, eax, 0xa4fe8970
mov ecx, 0x47193a84
xor edx, edx
div ecx
cmp eax, 0x3dc51343
ja 0x18042805d
jmp 0x18042808a
mov eax, dword [0x18079cfa8]
imul eax, dword [0x18079cfac]
mov ecx, 0x202c1328
xor edx, edx
div ecx
sub eax, 0xf64443d3
or eax, 0xb91f1246
cmp eax, 0x203d8122
jb 0x180428513
jmp 0x1804280b7
mov eax, dword [0x18079cfb0]
and eax, dword [0x18079cfb4]
add eax, 0xb219e194
imul eax, eax, 0xe28e5076
sub eax, 0x51b2c74d
mov rcx, rbx
add rcx, 8
cmp eax, 0xe7a9ca7
je 0x1804280b7
jmp 0x1804280e3
mov rax, qword [rcx]
lock dec qword [rax]
sete al
test al, 1
je 0x1804280f8
call fcn.1804c6740
jmp 0x1804280f8
mov rcx, qword [r15]
mov edx, 0x20
mov r8d, 8
call fcn.1804cafa0
mov rdi, qword [r14]
mov eax, dword [0x18079cfb8]
sub eax, dword [0x18079cfbc]
sub eax, 0x9b29fbe6
add eax, 0xa6799077
and eax, 0xe3814da0
cmp eax, 0xebba0249
jae 0x180428524
jmp 0x180428136
mov eax, dword [0x18079cfc0]
xor eax, dword [0x18079cfc4]
or eax, 0xfa7eacf5
xor eax, 0xa726b860
mov ecx, 0xc029fd83
xor edx, edx
div ecx
mov ebx, eax
mov rcx, rdi
call qword [sym.imp.ws2_32.dll_closesocket]
cmp ebx, 0xebb57ff7
ja 0x180428136
jmp 0x18042816a
mov rcx, rsi
call fcn.18063b100
mov eax, dword [0x18079cfc8]
xor edx, edx
div dword [0x18079cfcc]
add eax, 0x963550d8
or eax, 0xa43d3188
or eax, 0xefa2b993
cmp eax, 0xbd5305c4
je 0x18042853e
jmp 0x18042819c
mov eax, dword [0x18079cfd0]
xor edx, edx
div dword [0x18079cfd4]
and eax, 0x28cc99e8
xor eax, 0xe101e660
xor eax, 0x54cf8767
cmp eax, 0xe610f26d
jae 0x18042819c
jmp 0x1804281c2
mov eax, dword [str.Iqb__]
xor edx, edx
div dword [0x18079cfdc]
imul eax, eax, 0x4cc4ce49
or eax, 0x5862dbe0
imul eax, eax, 0x9cb9f6ad
cmp eax, 0x66f36e56
je 0x18042854f
mov eax, dword [0x18079cfe0]
sub eax, dword [0x18079cfe4]
mov ecx, 0xc313486b
xor edx, edx
div ecx
add eax, 0xd216c311
and eax, 0x140e9b13
mov rcx, qword [rsi]
cmp eax, 0x2c58d55c
ja 0x18042854f
test rcx, rcx
je 0x1804282ff
jmp 0x180428224
sub rcx, 1
je 0x180428376
jmp 0x180428230
mov eax, dword [0x18079cfe8]
add eax, dword [0x18079cfec]
and eax, 0x27c78504
sub eax, 0xf34ab599
imul eax, eax, 0xd0fa2015
cmp eax, 0x21a0f74a
jb 0x180428560
mov eax, dword [0x18079cff0]
xor edx, edx
div dword [0x18079cff4]
add eax, 0x2d87462c
mov ecx, 0x626c6694
xor edx, edx
div ecx
sub eax, 0x66026574
mov rdi, rsi
add rdi, 8
cmp eax, 0x3006a7cc
jbe 0x180428560
jmp 0x18042828c
mov rax, qword [rdi]
lock dec qword [rax]
sete al
test al, 1
je 0x1804283e4
mov eax, dword [0x18079cff8]
xor edx, edx
div dword [0x18079cffc]
xor eax, 0x93e15830
and eax, 0x296e12ab
or eax, 0x60fbeb5d
cmp eax, 0x438d377a
jbe 0x18042856d
mov ebx, dword [0x18079d000]
or ebx, dword [0x18079d004]
xor ebx, 0xc89be5f6
add ebx, 0x8ae1f3cb
or ebx, 0x1c276491
mov rcx, rdi
call fcn.1804be730
cmp ebx, 0x8b246f85
je 0x18042856d
jmp 0x1804282fa
jmp 0x1804283e4
mov rcx, rsi
add rcx, 8
mov rax, qword [rcx]
lock dec qword [rax]
sete al
test al, 1
jne 0x180428319
jmp 0x1804283e4
mov eax, dword [0x18079d008]
sub eax, dword [0x18079d00c]
and eax, 0xf5d1d536
mov r8d, 0x148ce10f
xor edx, edx
div r8d
mov r8d, 0xea1f898
xor edx, edx
div r8d
cmp eax, 0x892d366d
ja 0x180428586
jmp 0x18042834d
mov eax, dword [0x18079d010]
mov edx, dword [0x18079d014]
sub eax, edx
imul eax, eax, 0xbde5b2e0
and eax, 0x8314000
cmp eax, 0x23684e4a
jae 0x18042834d
jmp 0x18042836f
call fcn.1804bab90
jmp 0x1804283e4
mov eax, dword [0x18079d018]
add eax, dword [0x18079d01c]
xor eax, 0x53d1b815
sub eax, 0x8ef930a1
mov ecx, 0x42dd520a
xor edx, edx
div ecx
cmp eax, 0x3074a841
ja 0x180428597
jmp 0x1804283a2
mov eax, dword [0x18079d020]
sub eax, dword [0x18079d024]
add eax, 0x91366ea0
and eax, 0xaee05dc6
and eax, 0xf8f12a9b
mov rcx, rsi
add rcx, 8
cmp eax, 0xa6919ed8
je 0x1804283a2
jmp 0x1804283cd
mov rax, qword [rcx]
lock dec qword [rax]
sete al
test al, 1
jne 0x1804283dd
jmp 0x1804283e4
call fcn.1804b80b0
jmp 0x1804283e4
add rsi, 0x10
mov eax, dword [0x18079d028]
or eax, dword [0x18079d02c]
imul eax, eax, 0xc831e7d0
or eax, 0xa60c9bf0
xor eax, 0xe157a376
cmp eax, 0x4ac0f0d5
jb 0x1804285a4
jmp 0x180428411
mov eax, dword [0x18079d030]
or eax, dword [0x18079d034]
imul eax, eax, 0x4e5eb2d8
xor eax, 0x4e5efd15
mov ecx, 0xfd1871c1
xor edx, edx
div ecx
cmp eax, 0xce8c758d
je 0x180428411
jmp 0x18042843a
mov rax, qword [rsi]
lock dec qword [rax]
sete al
test al, 1
je 0x1804284a1
mov eax, dword [0x18079d038]
add eax, dword [0x18079d03c]
mov ecx, 0x62791966
xor edx, edx
div ecx
or eax, 0x9ed886b
or eax, 0x5fe00c57
cmp eax, 0xe3190ee1
je 0x1804285b1
mov eax, dword [0x18079d040]
mov ecx, dword [0x18079d044]
sub eax, ecx
or eax, 0xbfeff6ae
and eax, 0xffeff6ff
cmp eax, 0xd3ecdd5
jbe 0x1804285b1
jmp 0x180428497
mov rcx, rsi
call fcn.1804c2000
jmp 0x1804284a1
add rsp, 0x20
pop rbx
pop rdi
pop rsi
pop r14
pop r15
ret
invalid
adc byte [rcx + 0x667e76d7], al
ror byte [rax + 0x48], 0x89
int1
call fcn.1804538a0
jmp 0x180427e56
mov esi, 0xeec92e1d
fidivr word [rax]
invalid
sbb eax, 0xfb27e95c
and cl, byte [rsi - 0x35]
adc byte [rsi + rax*2 - 0x5b916b1], dl
invalid
mov ecx, 0x734ad28c
sub ebx, ecx
idiv al
and al, byte [rsi + 0x3c]
jmp 0x180427f78
add eax, 0x5a53edc4
sti
invalid
jns 0x1804284a3
invalid
jns 0x180428583
invalid
cmpsb byte [rsi], byte [rdi]
invalid
sub byte [rbx - 0x10], dh
fcmove st(0), st(1)
push rdi
xor byte [rcx + 0x42f3b27d], 0xe9
cld
invalid
jmp 0x153a9c3fd
mov ecx, 0xaa0ffc8a
sub edi, dword [rbx - 0x3151631]
invalid
invalid
std
invalid
xchg ebx, eax
invalid
sbb eax, 0xe06b735b
xor al, 0x98
or ch, cl
cld
std
invalid
jo 0x18a98afc4
cmc
retf 0x5ee9
adc edi, dword [rdx + 0x40]
xchg ecx, eax
mov ecx, 0x90a857f3
sal byte [rdx + 0x61], 0xe9
mov al, 0xfe
invalid