Function at 0x180414040
Capabilities:
Encode data using xor

Disassembly:
push rbp
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbx
push rax
mov rbp, rsp
mov rsi, rcx
mov eax, dword [0x18079b078]
xor edx, edx
div dword [0x18079b07c]
and eax, 0x93d249e3
add eax, 0x2177f605
xor eax, 0x642d69f8
cmp eax, 0xe309d73c
je 0x180414452
jmp 0x18041407d
mov eax, dword [0x18079b080]
mov ecx, dword [0x18079b084]
and eax, ecx
and eax, 0xdc2f4191
xor eax, 0x95ca2179
imul ecx, eax, 0x33ad6b7d
mov eax, 0x10
call fcn.180698e80
sub rsp, rax
mov rdi, rsp
mov eax, 0x10
call fcn.180698e80
sub rsp, rax
mov rbx, rsp
cmp ecx, 0xb77109b2
je 0x18041407d
jmp 0x1804140c5
sub rsp, 0x20
mov rcx, rsi
call fcn.18063b300
add rsp, 0x20
mov ecx, dword [0x18079b088]
or ecx, dword [0x18079b08c]
or ecx, 0x25b63bc4
add ecx, 0x31d7cbb
or ecx, 0xdf92c6cd
cmp ecx, 0xaf261621
jb 0x180414463
jmp 0x180414101
mov ecx, dword [0x18079b090]
and ecx, dword [0x18079b094]
or ecx, 0x52fba4f9
sub ecx, 0x59113111
xor ecx, 0x145b26f7
cmp ecx, 0x873f9e0a
jae 0x180414101
test al, 1
jne 0x180414330
jmp 0x180414131
sub rsp, 0x20
mov rcx, rsi
call fcn.18063b3a0
add rsp, 0x20
test al, 1
jne 0x18041414a
jmp 0x180414441
mov rcx, rsi
add rcx, 0x20
mov rax, qword [rcx]
lock dec qword [rax]
sete al
test al, 1
jne 0x180414161
jmp 0x180414170
sub rsp, 0x20
call fcn.1804b80b0
add rsp, 0x20
jmp 0x180414170
mov eax, dword [0x18079b098]
xor edx, edx
div dword [0x18079b09c]
or eax, 0xa336a3b2
sub eax, 0x1f653bac
mov ecx, 0xcb9cd70d
xor edx, edx
div ecx
cmp eax, 0x9c09e399
jae 0x180414470
mov edi, dword [0x18079b0a0]
or edi, dword [0x18079b0a4]
or edi, 0xf48585ec
add edi, 0xf68d9379
xor edi, 0x10ca3b71
mov rcx, rsi
add rcx, 0x30
sub rsp, 0x20
call fcn.1803f6e60
add rsp, 0x20
cmp edi, 0xe295022d
je 0x180414470
jmp 0x1804141dc
mov rcx, qword [rsi + 0x3d0]
cmp rcx, 0
je 0x180414310
mov eax, dword [0x18079b0a8]
xor edx, edx
div dword [0x18079b0ac]
mov r8d, 0x1462fb12
xor edx, edx
div r8d
sub eax, 0xe38d0d14
add eax, 0x72488c41
cmp eax, 0x8f6f1cdb
je 0x180414491
mov eax, dword [0x18079b0b0]
xor eax, dword [str.._9R]
and eax, 0x5ffca2a7
add eax, 0x1d38cc12
sub eax, 0x7cc84ca2
mov r8, rsi
add r8, 0x3d8
cmp eax, 0x110211c0
je 0x180414491
jmp 0x18041424d
mov eax, dword [0x18079b0b8]
and eax, dword [0x18079b0bc]
add eax, 0x4e6c4811
imul eax, eax, 0x27997339
imul eax, eax, 0xbd845e4f
cmp eax, 0x816c0773
je 0x18041449e
mov eax, dword [0x18079b0c0]
sub eax, dword [0x18079b0c4]
mov r9d, 0x78c62c74
xor edx, edx
div r9d
xor eax, 0xb13f59a7
xor eax, 0x22462ea1
mov rdi, qword [r8]
mov rbx, qword [rcx + 0x18]
cmp eax, 0x4f98527
jbe 0x18041449e
jmp 0x1804142aa
mov eax, dword [0x18079b0c8]
xor eax, dword [0x18079b0cc]
imul eax, eax, 0xcbaeaa8d
sub eax, 0x85a35797
xor eax, 0xe33182b7
cmp eax, 0x971b1f76
ja 0x1804144af
mov r14d, dword [0x18079b0d0]
sub r14d, dword [0x18079b0d4]
xor r14d, 0x63b714d3
xor r14d, 0x8573deb0
or r14d, 0xc08d3a4d
sub rsp, 0x20
mov rcx, rdi
call rbx
add rsp, 0x20
cmp r14d, 0x8922a9aa
jb 0x1804144af
jmp 0x180414310
sub rsp, 0x20
mov rcx, rsi
mov edx, 0x400
mov r8d, 0x80
call fcn.1804cafa0
add rsp, 0x20
jmp 0x180414441
mov r12, rsi
add r12, 0x28
mov rcx, qword [rsi + 0x28]
sub rsp, 0x20
call fcn.18063f660
add rsp, 0x20
mov qword [rbx], rax
mov qword [rbx + 8], rdx
mov r14, rsi
add r14, 0x30
sub rsp, 0x20
mov rcx, r14
call fcn.18034f610
add rsp, 0x20
movabs rax, 0x8000000000000006
mov qword [rsi + 0x30], rax
mov eax, dword [0x18079b0d8]
add eax, dword [0x18079b0dc]
mov ecx, 0x2460a63a
xor edx, edx
div ecx
or eax, 0xcecb8f4d
add eax, 0x6c5daed1
cmp eax, 0xc542e456
je 0x1804144c9
jmp 0x1804143a0
mov eax, dword [0x18079b0e0]
imul eax, dword [0x18079b0e4]
or eax, 0x9f9683d5
or eax, 0x89a3f276
imul r13d, eax, 0x3c257977
sub rsp, 0x20
mov rcx, rbx
call fcn.18063f700
add rsp, 0x20
mov r15, qword [r12]
sub rsp, 0x20
mov rcx, r15
call fcn.18063f660
add rsp, 0x20
mov qword [rdi], rax
mov qword [rdi + 8], rdx
sub rsp, 0x20
mov rcx, r14
call fcn.18034f610
add rsp, 0x20
movabs rax, 0x8000000000000005
mov qword [r14], rax
mov qword [rsi + 0x38], 1
mov qword [rsi + 0x40], 0
mov qword [rsi + 0x50], r15
sub rsp, 0x20
mov rcx, rdi
call fcn.18063f700
mov rcx, rsi
call fcn.180412f00
add rsp, 0x20
cmp r13d, 0x6bcf024e
jb 0x1804143a0
jmp 0x180414441
lea rsp, [rbp + 8]
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
mov ebp, 0x6852f046
sti
imul eax, dword [rdi], 0xe95b5f2b
sbb ah, bh
invalid
mov bh, 0x23
fisub word [rdi]
xor eax, 0xe9ebaa39
invalid
cmp dword [rcx + 0x2a], ebp
jnp 0x1804144be
movabs al, byte [0xc18348f18948629e]
xor byte [rax - 0x7d], cl
in al, dx
and al, ch
fsubr dword [rcx]
invalid
call fcn.1803f6e60
add rsp, 0x20
jmp 0x18041419c
push rcx
lodsd eax, dword [rsi]
xchg ecx, eax
jl 0x1804144c3
invalid
xor bl, byte [rsi + 0x37]
pushfq
retf 0xb3d8
jl 0x180414483
pushfq
mov dword [rcx], 0x485d48c9
sub esp, 0x20
mov rcx, rdi
call rbx
add rsp, 0x20
jmp 0x1804142d1
and cl, ch
or dh, bh
invalid
in al, 0x48
rcl byte [rcx + rdi*8 - 0x53], 0xf9
cmp eax, 0xafb8aadb
sub rsp, 0x20
mov rcx, rbx
call fcn.18063f700
add rsp, 0x20
mov r15, qword [r12]
sub rsp, 0x20
mov rcx, r15
call fcn.18063f660
add rsp, 0x20
mov qword [rdi], rax
mov qword [rdi + 8], rdx
sub rsp, 0x20
mov rcx, r14
call fcn.18034f610
add rsp, 0x20
movabs rax, 0x8000000000000005
mov qword [r14], rax
mov qword [rsi + 0x38], 1
mov qword [rsi + 0x40], 0
mov qword [rsi + 0x50], r15
sub rsp, 0x20
mov rcx, rdi
call fcn.18063f700
mov rcx, rsi
call fcn.180412f00
add rsp, 0x20
jmp 0x18041439e