Function at 0x1802acd10
Capabilities:
Encode data using xor

Disassembly:
push rbp
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbx
sub rsp, 0x78
lea rbp, [rsp + 0x70]
mov rbx, rcx
mov eax, 0x10
call fcn.18045a590
sub rsp, rax
mov r14, rsp
mov eax, 0x10
call fcn.18045a590
sub rsp, rax
mov rdi, rsp
mov eax, 0x10
call fcn.18045a590
sub rsp, rax
mov rsi, rsp
mov rax, qword [0x180528cf8]
mov r15, qword [rax]
cmp r15, 0
sete al
test al, 1
jne 0x1802acd6f
jmp 0x1802acda4
lea rcx, [rbp - 0x38]
lea rdx, str.RUST_MIN_STACKWQLGot_enumerator
sub rsp, 0x20
mov r8d, 0xe
call fcn.180429150
add rsp, 0x20
movabs rax, 0x8000000000000000
cmp qword [rbp - 0x38], rax
sete al
test al, 1
jne 0x1802acdad
jmp 0x1802acdb8
add r15, 0xffffffffffffffff
jmp 0x1802ad016
mov r15d, 0x200000
jmp 0x1802ad006
mov eax, dword [0x1805262f8]
add eax, dword [0x1805262fc]
imul eax, eax, 0x34b9437a
or eax, 0xb2765dca
add eax, 0x3d4c8f24
cmp eax, 0x366bde6d
jb 0x1802ad4ba
jmp 0x1802acde1
mov eax, dword [0x180526300]
and eax, dword [0x180526304]
mov ecx, 0x464ab3b8
xor edx, edx
div ecx
add eax, 0x9eadb657
sub eax, 0x4dc46a40
mov rcx, qword [rbp - 0x38]
mov qword [rbp - 0x18], rcx
mov rcx, qword [rbp - 0x30]
mov qword [rbp - 0x10], rcx
mov rcx, qword [rbp - 0x28]
mov qword [rbp - 8], rcx
mov rcx, qword [rbp - 0x20]
mov qword [rbp], rcx
cmp eax, 0x18227c0f
je 0x1802acde1
jmp 0x1802ace29
lea rcx, [rbp - 0x18]
sub rsp, 0x20
call fcn.180432df0
add rsp, 0x20
mov r8, rdx
lea rcx, [rbp - 0x70]
sub rsp, 0x20
mov rdx, rax
call fcn.1804331a0
add rsp, 0x20
cmp qword [rbp - 0x70], 0
jne 0x1802acee1
mov rdx, qword [rbp - 0x68]
mov r8, qword [rbp - 0x60]
lea rcx, [rbp - 0x58]
sub rsp, 0x20
call fcn.180452aa0
add rsp, 0x20
cmp byte [rbp - 0x58], 0
sete cl
mov r8, qword [rbp - 0x50]
mov eax, dword [0x180526308]
imul eax, dword [0x18052630c]
imul eax, eax, 0x1b61aa77
and eax, 0x3249ec1
and eax, 0x4b44a579
cmp eax, 0x4b4f0099
jae 0x1802ad4e7
mov eax, dword [0x180526310]
xor edx, edx
div dword [0x180526314]
add eax, 0x5a6ad797
imul eax, eax, 0x67bed705
imul eax, eax, 0x99809889
mov r15d, 0x200000
test cl, 1
cmovne r15, r8
cmp eax, 0x11ebb173
jae 0x1802ad4e7
jmp 0x1802acf39
mov eax, dword [0x180526318]
and eax, dword [0x18052631c]
xor eax, 0x33923b88
and eax, 0xaf664eeb
sub eax, 0xc52aab41
cmp eax, 0xeb05def0
jae 0x1802ad4f8
jmp 0x1802acf09
mov eax, dword [0x180526320]
xor edx, edx
div dword [0x180526324]
mov ecx, 0x6386e107
xor edx, edx
div ecx
add eax, 0xf2796cf5
add eax, 0x5835f862
cmp eax, 0x70410369
ja 0x1802acf09
mov r15d, 0x200000
jmp 0x1802acf39
mov rdx, qword [rbp - 0x18]
cmp rdx, 0
je 0x1802acf63
lea rax, [rbp - 0x18]
add rax, 8
mov rcx, qword [rax]
sub rsp, 0x20
mov r8d, 1
call fcn.1802cbf20
add rsp, 0x20
jmp 0x1802acf63
mov eax, dword [0x180526328]
imul eax, dword [0x18052632c]
sub eax, 0xcf2b88c7
xor eax, 0x67dffdc2
mov ecx, 0x1a5c29c8
xor edx, edx
div ecx
cmp eax, 0xb47d25b7
ja 0x1802ad509
mov eax, dword [0x180526330]
and eax, dword [0x180526334]
mov ecx, 0x52e24be1
xor edx, edx
div ecx
add eax, 0xefd934d3
add eax, 0x6e712120
cmp eax, 0x560ad3e3
jb 0x1802ad509
jmp 0x1802acfba
mov eax, dword [0x180526338]
or eax, dword [0x18052633c]
xor eax, 0xecba2ea
or eax, 0xb9c84a6d
and eax, 0x28ff4f9
cmp eax, 0x106deda0
jae 0x1802ad51a
jmp 0x1802acfe2
mov eax, dword [0x180526340]
xor eax, dword [0x180526344]
add eax, 0x949e8431
add eax, 0x9c027969
add eax, 0x7c0522e9
cmp eax, 0xda2f5b4f
je 0x1802acfe2
jmp 0x1802ad006
mov rax, r15
inc rax
mov rcx, qword [0x180528cf8]
mov qword [rcx], rax
sub rsp, 0x20
call fcn.180427a30
add rsp, 0x20
mov qword [rsi], rax
mov ecx, 1
lock xadd qword [rax], rcx
cmp rcx, 0
jl 0x1802ad0bc
mov r13, qword [rsi]
mov al, byte [0x1805297c8]
sub rsp, 0x20
mov ecx, 0x30
mov edx, 8
call fcn.1802cbf10
add rsp, 0x20
mov r12, rax
cmp r12, 0
sete al
test al, 1
jne 0x1802ad06a
jmp 0x1802ad083
sub rsp, 0x20
mov ecx, 8
mov edx, 0x30
call fcn.180407090
add rsp, 0x20
ud2
mov qword [r12], 1
mov rax, r12
add rax, 8
mov qword [rax], 1
mov rax, r12
add rax, 0x10
xorps xmm0, xmm0
movups xmmword [rax], xmm0
mov qword [rdi], r12
mov eax, 1
lock xadd qword [r12], rax
cmp rax, 0
jl 0x1802ad0e7
jmp 0x1802ad0c0
ud2
mov qword [rbp - 0x40], r13
mov qword [rbp - 0x48], rbx
sub rsp, 0x20
xor ecx, ecx
call fcn.1804311b0
add rsp, 0x20
mov r13, rax
cmp r13, 0
sete al
test al, 1
jne 0x1802ad107
jmp 0x1802ad0eb
ud2
mov eax, 1
lock xadd qword [r13], rax
cmp rax, 0
setl al
test al, 1
jne 0x1802ad205
jmp 0x1802ad107
mov rbx, rdi
mov eax, dword [0x180526348]
and eax, dword [0x18052634c]
mov ecx, 0xd7219bc2
xor edx, edx
div ecx
sub eax, 0x6ca80de6
or eax, 0x64ae2cc8
cmp eax, 0x6c4b1dce
jbe 0x1802ad52b
mov edi, dword [0x180526350]
add edi, dword [0x180526354]
and edi, 0x2435c9a8
sub edi, 0x77db967c
or edi, 0xb9ce12
sub rsp, 0x20
mov rcx, r13
call fcn.1804311b0
add rsp, 0x20
mov qword [r14], rax
cmp edi, 0x677b02ff
jbe 0x1802ad52b
jmp 0x1802ad173
cmp rax, 0
sete cl
test cl, 1
jne 0x1802ad1a2
jmp 0x1802ad181
lock dec qword [rax]
sete al
jmp 0x1802ad18a
test al, 1
jne 0x1802ad190
jmp 0x1802ad1a2
sub rsp, 0x20
mov rcx, r14
call fcn.180277290
add rsp, 0x20
jmp 0x1802ad1a2
mov r14, qword [rbx]
mov eax, dword [0x180526358]
and eax, dword [0x18052635c]
or eax, 0x18e851c2
mov ecx, 0x20e25394
xor edx, edx
div ecx
or eax, 0x9699c9a2
cmp eax, 0x5bfdbfe3
jb 0x1802ad54b
mov eax, dword [0x180526360]
imul eax, dword [0x180526364]
imul eax, eax, 0xc3930dbb
or eax, 0x8ec8720a
xor eax, 0xac2c106c
mov rcx, qword [r14 + 0x10]
cmp eax, 0xe0b9cb0f
je 0x1802ad54b
jmp 0x1802ad1fd
cmp rcx, 0
je 0x1802ad275
jmp 0x1802ad262
mov eax, dword [0x180526368]
or eax, dword [0x18052636c]
mov ecx, 0xf5d4fb99
xor edx, edx
div ecx
and eax, 0x5ed0c2fb
mov ecx, 0x5c5045ef
xor edx, edx
div ecx
cmp eax, 0xa41a451
ja 0x1802ad558
mov eax, dword [0x180526370]
xor edx, edx
div dword [0x180526374]
add eax, 0x45c4c31f
imul eax, eax, 0x2f26eae8
sub eax, 0x882c98b6
ud2
add rcx, 0x10
sub rsp, 0x20
call fcn.180438a60
add rsp, 0x20
jmp 0x1802ad275
mov al, byte [0x1805297c8]
sub rsp, 0x20
mov ecx, 0x18
mov edx, 8
call fcn.1802cbf10
add rsp, 0x20
mov ecx, dword [0x180526378]
or ecx, dword [0x18052637c]
sub ecx, 0xee7e2bc1
add ecx, 0xce2726b7
imul ecx, ecx, 0xff328dda
cmp ecx, 0x36825b65
jbe 0x1802ad567
mov ecx, dword [0x180526380]
or ecx, dword [0x180526384]
and ecx, 0xbf5f8780
and ecx, 0x9ad7b376
imul edx, ecx, 0x7037872
cmp rax, 0
sete cl
cmp edx, 0xfa99c4b8
je 0x1802ad567
test cl, 1
jne 0x1802ad333
jmp 0x1802ad2f4
mov rcx, qword [rbp - 0x40]
mov qword [rax], rcx
mov qword [rax + 8], r12
mov qword [rax + 0x10], r13
lea r8, [0x180489bb8]
sub rsp, 0x20
mov rcx, r15
mov rdx, rax
call fcn.180436630
add rsp, 0x20
cmp rax, 0
sete cl
mov rax, qword [rbp - 0x48]
test cl, 1
jne 0x1802ad497
jmp 0x1802ad34c
sub rsp, 0x20
mov ecx, 8
mov edx, 0x18
call fcn.180407090
add rsp, 0x20
ud2
mov rcx, 0xffffffffffffffff
lock xadd qword [r14], rcx
mov eax, dword [0x180526388]
and eax, dword [0x18052638c]
xor eax, 0xbe37aea4
imul eax, eax, 0x9531a51
mov r8d, 0xad39713b
xor edx, edx
div r8d
cmp eax, 0x9d3b13a3
je 0x1802ad578
mov eax, dword [0x180526390]
xor edx, edx
div dword [0x180526394]
and eax, 0x70003913
sub eax, 0x3d65ef31
add eax, 0xb36f3626
cmp rcx, 1
sete dl
cmp eax, 0x6c0afc7a
jb 0x1802ad578
jmp 0x1802ad3b6
test dl, 1
jne 0x1802ad3bd
jmp 0x1802ad425
sub rsp, 0x20
mov rcx, rbx
call fcn.180273650
add rsp, 0x20
mov eax, dword [0x180526398]
imul eax, dword [0x18052639c]
mov ecx, 0xf44c32de
xor edx, edx
div ecx
or eax, 0x1e53cd27
sub eax, 0x65ce7c65
cmp eax, 0x542f336a
je 0x1802ad585
mov eax, dword [0x1805263a0]
imul eax, dword [0x1805263a4]
mov ecx, 0xf24fc630
xor edx, edx
div ecx
sub eax, 0xb6498d80
xor eax, 0x82d7f63f
cmp eax, 0x4005a185
je 0x1802ad585
jmp 0x1802ad425
mov eax, dword [0x1805263a8]
add eax, dword [0x1805263ac]
or eax, 0x561dd20b
add eax, 0xee110fe8
sub eax, 0xd565a307
cmp eax, 0xad51c398
jae 0x1802ad596
mov ecx, dword [0x1805263b0]
add ecx, dword [0x1805263b4]
add ecx, 0xd1813716
xor ecx, 0x346c1cc
sub ecx, 0xf99e44ff
mov rax, qword [rsi]
lock dec qword [rax]
sete al
cmp ecx, 0x2127275e
jb 0x1802ad596
test al, 1
jne 0x1802ad485
jmp 0x1802ad4b6
sub rsp, 0x20
mov rcx, rsi
call fcn.1802752a0
add rsp, 0x20
jmp 0x1802ad4b6
mov rcx, qword [rsi]
mov qword [rax], rcx
mov qword [rax + 8], r14
mov qword [rax + 0x10], rdx
lea rsp, [rbp + 8]
lea esp, [rbp + 8]
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
ud2
pop rax
add eax, esi
invalid
or al, 0xce
push rsp
in eax, 0x7b
movsd dword [rdi], dword [rsi]
invalid
stc
invalid
in eax, 0x35
movabs byte [0x9f74bec954394d1], al
imul ebp, ecx, 0xfffffffe
stc
invalid
xor al, 0x6c
jp 0x1802ad563
mov bl, 0x10
mov al, 0x33
jb 0x1802ad4a6
imul edi, dword [rax - 0x17], 0xfffffa74
loopne 0x1802ad4f5
xchg ebx, eax
je 0x1802ad520
invalid
mov edi, 0xc67cb1da
jmp 0x1802acfe0
scasb al, byte [rdi]
invalid
scasb al, byte [rdi]
cmp bl, dl
invalid
loop 0x1802ad598
add dword [rsi + 0xf5cf00b], 0xfccce90b
invalid
int3
cli
invalid
test al, 0xc9
xor dword [rsi + 0x56160fca], edi
jmp 0x1802ad385
jo 0x1802ad5b3
push rbx
invalid
and ebx, esi
sbb cl, byte [rcx - 0x5a39a906]
mov rax, qword [rsi]
lock dec qword [rax]
sete al
jmp 0x1802ad44b
push rsi