Function at 0x14005a3b0
Capabilities:
Encode data using xor
Hash data using murmur3

Disassembly:
push rsi
push rdi
push rbp
push rbx
sub rsp, 0xf8
mov qword [rsp + 0xa8], rdx
mov qword [rsp + 0x98], rcx
mov rax, qword [0x14028d330]
mov ecx, dword [rax]
call fcn.14000efc9
mov rcx, rax
mov rax, qword [rsp + 0xa8]
add rcx, 0x60
mov qword [rsp + 0xa0], rcx
mov ecx, 4
cqo
idiv rcx
mov rcx, rax
mov rax, qword [rsp + 0xa8]
mov qword [rsp + 0xb8], rcx
mov ecx, 4
cqo
idiv rcx
mov rax, qword [rsp + 0xb8]
mov qword [rsp + 0xb0], rdx
movabs rcx, 0x4216422a99935698
movabs rdx, 0x4216422a9993569a
xor rcx, rdx
shl rax, cl
mov rcx, qword [rsp + 0xb8]
mov qword [rsp + 0xc0], rax
cvtsi2sd xmm1, rcx
movsd xmm0, qword [0x140281fe0]
mulsd xmm1, xmm0
movsd qword [rsp + 0xc8], xmm1
cvtsi2sd xmm0, rax
ucomisd xmm1, xmm0
sete al
setnp cl
and al, cl
mov byte [rsp + 0xd7], al
subsd xmm0, xmm1
movsd qword [rsp + 0xd8], xmm0
mov rdx, 0xffffffffffffffff
xor ecx, ecx
xor eax, eax
mov qword [rsp + 0xe0], rdx
mov dword [rsp + 0xec], ecx
mov qword [rsp + 0xf0], rax
mov al, byte [rsp + 0xd7]
mov rcx, qword [rsp + 0xe0]
mov edx, dword [rsp + 0xec]
mov r8, qword [rsp + 0xf0]
mov qword [rsp + 0x80], r8
mov dword [rsp + 0x8c], edx
mov qword [rsp + 0x90], rcx
test al, 1
jne 0x14005a53a
movsd xmm0, qword [rsp + 0xd8]
call fcn.140271c60
movaps xmm1, xmm0
movsd xmm0, qword [rsp + 0xc8]
movsd qword [rsp + 0x78], xmm1
call fcn.140271c60
movsd xmm1, qword [rsp + 0x78]
movsd xmm2, qword [0x140281fe8]
mulsd xmm1, xmm2
ucomisd xmm0, xmm1
jae 0x14005a53a
call fcn.14000f24b
jmp 0x14005ae08
mov eax, dword [0x140274cf0]
mov ecx, dword [str.6_va]
xor ecx, 0xce7198fd
sub eax, ecx
sub eax, 0x4fa43e93
sub eax, 0xa03620ac
sub eax, 0x62cbdb86
add eax, 0xa03620ac
mov ecx, 0xffffffff
xor ecx, 0x7daf3f6
add eax, ecx
add eax, 1
mov ecx, 0x4097b13b
xor ecx, 0xe41eb616
cmp eax, ecx
ja 0x14005ae19
mov rcx, qword [rsp + 0x80]
mov rdx, qword [rsp + 0xc0]
mov eax, dword [0x140274cf8]
mov r9d, dword [0x140274cfc]
mov r8d, eax
xor r8d, 0xffffffff
and r8d, r9d
xor r9d, 0xffffffff
and eax, r9d
sub eax, r8d
and eax, 0xf8bce81f
sub eax, 0xd8b9604a
add eax, 0xef8deb71
cmp rcx, rdx
setl cl
mov byte [rsp + 0x77], cl
cmp eax, 0xe1de0332
ja 0x14005ae19
mov al, byte [rsp + 0x77]
test al, 1
jne 0x14005a5eb
jmp 0x14005a7a9
mov eax, dword [0x140274d00]
mov ecx, dword [0x140274d04]
xor ecx, 0x1e21fb6c
or eax, ecx
mov ecx, 0x77056fe9
xor ecx, 0x7b82fd11
xor edx, edx
div ecx
mov ecx, 0x70086323
xor edx, edx
div ecx
and eax, 0xf940625f
cmp eax, 0x6ab866a5
jae 0x14005ae22
mov rcx, qword [rsp + 0x80]
mov edx, dword [0x140274d08]
mov eax, dword [0x140274d0c]
xor eax, 0xe8dc2b9
sub edx, eax
mov eax, 0xf1239a75
xor eax, 0xd98c39b6
xor edx, eax
mov eax, edx
and eax, 0x723b1592
or edx, 0x723b1592
add eax, edx
mov r8d, 0x10bd136
xor edx, edx
div r8d
mov rdx, qword [rsp + 0xa8]
cmp rcx, rdx
setl cl
mov byte [rsp + 0x76], cl
cmp eax, 0x87066a33
ja 0x14005a627
mov al, byte [rsp + 0x76]
test al, 1
jne 0x14005a6ca
jmp 0x14005a696
mov rcx, qword [rsp + 0x80]
mov rdx, qword [rsp + 0xa8]
movabs rax, 0x71cd4d06438adcec
movabs r8, 0x8e32b2f9bc752313
xor rax, r8
add rdx, rax
call fcn.1400292ad
jmp 0x14005ae08
mov rax, qword [rsp + 0xa0]
mov al, byte [rax]
mov cl, 0xee
xor cl, 0xee
cmp al, cl
jne 0x14005ae08
mov rdx, qword [rsp + 0x90]
mov r8d, dword [rsp + 0x8c]
mov rax, qword [rsp + 0x80]
mov rcx, qword [rsp + 0x98]
mov r9d, dword [rcx + rax]
imul ecx, r9d, 0xcc9e2d51
shr ecx, 0x11
imul r9d, r9d, 0x16a88000
or ecx, r9d
mov r9, rax
and r9, 4
movabs r10, 0x53ffcc7b37f6d463
movabs r11, 0x53ffcc7b37f6d461
xor r10, r11
imul r9, r10
xor rax, 4
add rax, r9
mov r11d, 0xffffffff
xor r11d, 0x1b873593
mov r10d, ecx
and r10d, r11d
mov r9d, ecx
or r9d, r11d
xor r9d, 0xffffffff
imul r9d, r10d
mov r10d, ecx
and r10d, 0x1b873593
or ecx, 0x1b873593
imul ecx, r10d
add ecx, r9d
xor ecx, r8d
rol ecx, 0xd
imul ecx, ecx, 5
add ecx, 0xe6546b64
add rdx, 4
mov qword [rsp + 0xe0], rdx
mov dword [rsp + 0xec], ecx
mov qword [rsp + 0xf0], rax
jmp 0x14005a4b2
mov rcx, qword [rsp + 0xb0]
movabs rdx, 0x228ad8336563c423
movabs rax, 0x228ad8336563c423
xor rdx, rax
xor eax, eax
cmp rcx, rdx
mov dword [rsp + 0x70], eax
jle 0x14005ab7c
mov rcx, qword [rsp + 0xb0]
mov rdx, qword [rsp + 0xa8]
mov r8, qword [rsp + 0x90]
xor r8, 0xffffffffffffffff
xor eax, eax
sub rax, 1
sub r8, rax
mov rax, rcx
sub rax, r8
cmp rax, rdx
setl al
mov byte [rsp + 0x5f], al
xor eax, eax
mov qword [rsp + 0x60], rcx
mov dword [rsp + 0x6c], eax
mov r8, qword [rsp + 0x80]
mov rcx, qword [rsp + 0x60]
mov eax, dword [rsp + 0x6c]
mov dword [rsp + 0x3c], eax
mov qword [rsp + 0x40], rcx
movabs rdx, 0x1119142f9142ac6f
movabs rax, 0x3cfbc449068e895b
xor rdx, rax
mov rax, rcx
add rax, rdx
add rax, 0xffffffffffffffff
movabs rdx, 0x6fe5395fb6df4bd9
movabs r9, 0x4207e93921136eed
xor rdx, r9
sub rax, rdx
mov qword [rsp + 0x48], rax
xor edx, edx
sub rdx, rax
movabs rax, 0x78159056d8225315
movabs r9, 0x78159056d8225315
xor rax, r9
sub rax, r8
add rdx, rax
xor eax, eax
sub rax, rdx
mov qword [rsp + 0x50], rax
movabs rdx, 0xb0c94a87649db492
movabs r8, 0xb0c94a87649db492
xor rdx, r8
sub rdx, rcx
add rdx, 0
mov rcx, rax
xor rcx, rdx
xor rcx, 0xffffffffffffffff
or rax, rdx
and rax, rcx
movabs rcx, 0x99afe7112b871ed8
movabs rdx, 0x99afe7112b871ed8
xor rcx, rdx
cmp rax, rcx
jge 0x14005a9ba
mov eax, dword [0x140274d10]
mov edx, dword [0x140274d14]
xor edx, 0x4015fcb8
mov ecx, eax
xor ecx, 0xffffffff
and ecx, edx
xor edx, 0xffffffff
and eax, edx
sub eax, ecx
mov ecx, 0xa21ed97c
xor edx, edx
div ecx
mov ecx, 0xf4f671e1
xor edx, edx
div ecx
xor eax, 0xef18183c
cmp eax, 0xe8b7d913
je 0x14005ae2b
mov eax, dword [0x140274d18]
mov ecx, dword [0x140274d1c]
xor ecx, 0x4032a62d
sub eax, ecx
mov ecx, 0xa3870a75
xor ecx, 0x5cf8a4ee
add eax, ecx
mov ecx, 0x2f075391
xor ecx, 0x97bd2c0b
sub eax, ecx
mov ecx, 0x90fa6735
xor ecx, 0x6f85c9ae
sub eax, ecx
mov ecx, 0x570e7c26
xor ecx, 0x2e478b8e
xor eax, ecx
mov edx, 0x1db41fd8
xor edx, 0x4c9abecf
mov ecx, 0xc3169a4e
xor ecx, 0x3ce965b1
xor edx, ecx
mov ecx, eax
and ecx, edx
mov edx, eax
xor edx, 0x512ea117
add eax, edx
sub eax, ecx
mov dword [rsp + 0x38], eax
call fcn.14000f24b
mov eax, dword [rsp + 0x38]
cmp eax, 0xe8ffe93b
jae 0x14005a92d
jmp 0x14005ae08
mov cl, byte [rsp + 0x5f]
mov rax, qword [rsp + 0x50]
cmp rax, 0xffffffffffffffff
setg al
and al, cl
test al, 1
jne 0x14005a9ef
mov rcx, qword [rsp + 0x50]
mov rdx, qword [rsp + 0xa8]
add rdx, 0xffffffffffffffff
call fcn.1400292ad
jmp 0x14005ae08
mov eax, dword [0x140274d20]
mov edx, dword [0x140274d24]
xor edx, 0xdffadd89
mov ecx, edx
and ecx, eax
xor ecx, 0xffffffff
add eax, edx
add eax, 1
add eax, ecx
mov ecx, 0xab2051bb
xor ecx, 0xf7913124
sub eax, ecx
xor eax, 0x6a3c8dc1
mov ecx, 0xfaebf4d3
xor ecx, 0x7d67af2b
add eax, ecx
mov ecx, 0x40ceda71
xor ecx, 0xcefc9b6d
add eax, ecx
mov ecx, 0xe34c8b78
xor ecx, 0x64c0d080
sub eax, ecx
cmp eax, 0xec09765c
ja 0x14005ae34
mov rcx, qword [rsp + 0x40]
mov r8, qword [rsp + 0x50]
mov r9d, dword [rsp + 0x3c]
mov ebx, dword [0x140274d28]
mov eax, 0x27e223e8
xor eax, 0x21b3b7eb
xor ebx, eax
mov edi, dword [0x140274d2c]
mov edx, ebx
xor edx, 0xffffffff
mov r11d, edi
xor r11d, 0xffffffff
mov r10d, 0xffffffff
xor r10d, 0x31e72344
mov eax, edx
and eax, 0x31e72344
and ebx, r10d
mov ebp, 0x62444241
xor ebp, 0x53a36105
mov esi, r11d
and esi, ebp
and edi, r10d
or eax, ebx
or esi, edi
xor eax, esi
or edx, r11d
xor edx, 0xffffffff
or r10d, 0x31e72344
and edx, r10d
or eax, edx
mov edx, 0xffffffff
xor edx, 0x7fe93655
add eax, edx
add eax, 1
mov edx, 0x4f60803
xor edx, 0x4ca8de3b
or eax, edx
mov r10d, 0xb1ab9bfb
xor edx, edx
div r10d
mov rdx, qword [rsp + 0x98]
shl r9d, 8
movzx r8d, byte [rdx + r8]
mov edx, r9d
xor edx, 0xffffffff
mov r10d, 0xacca8998
xor r10d, 0x53357667
xor r9d, r10d
or edx, r9d
and r8d, r8d
xor r8d, 0xffffffff
mov r9d, 0x116e4bf7
xor r9d, 0xee91b408
xor edx, r9d
xor r8d, 0xffffffff
or edx, r8d
mov dword [rsp + 0x30], edx
cmp rcx, 1
seta cl
mov byte [rsp + 0x37], cl
cmp eax, 0xe37d949b
jae 0x14005aa53
mov eax, dword [rsp + 0x30]
mov rcx, qword [rsp + 0x48]
mov dl, byte [rsp + 0x37]
test dl, 1
mov qword [rsp + 0x60], rcx
mov ecx, eax
mov dword [rsp + 0x6c], ecx
mov dword [rsp + 0x70], eax
jne 0x14005a817
jmp 0x14005ab7c
mov rax, qword [rsp + 0xa0]
mov ecx, dword [rsp + 0x70]
mov dword [rsp + 0x2c], ecx
cmp byte [rax], 0
jne 0x14005ae08
mov ecx, dword [rsp + 0x8c]
mov rax, qword [rsp + 0xa8]
mov esi, dword [rsp + 0x2c]
imul edi, esi, 0xcc9e2d51
shr edi, 0x11
mov r8d, 0xddab01db
xor r8d, 0x2254fe24
mov edx, esi
xor edx, r8d
mov r8d, 0x97c4597b
xor r8d, 0x816cd97b
and r8d, edx
mov r9d, 0xffffffff
xor r9d, 0x16a88000
mov edx, esi
and edx, r9d
imul edx, r8d
mov r8d, esi
and r8d, 0x16a88000
or esi, 0x16a88000
imul esi, r8d
add esi, edx
mov r8d, edi
xor r8d, 0xffffffff
mov r9d, esi
xor r9d, 0xffffffff
mov r10d, 0xffffffff
xor r10d, 0xd9df80d0
mov edx, r8d
and edx, 0xd9df80d0
and edi, r10d
mov ebx, 0x5caef384
xor ebx, 0x85717354
mov r11d, r9d
and r11d, ebx
and esi, r10d
or edx, edi
or r11d, esi
xor edx, r11d
or r8d, r9d
xor r8d, 0xffffffff
mov r9d, 0x1c586f6c
xor r9d, 0xc587efbc
or r9d, r10d
and r8d, r9d
or edx, r8d
mov r8d, edx
xor r8d, 0xffffffff
mov r9d, 0xf7376332
xor r9d, 0xecb056a1
and r9d, r8d
mov r10d, 0x78617342
xor r10d, 0x63e646d1
mov r8d, 0x66fe8259
xor r8d, 0x99017da6
xor r10d, r8d
mov r8d, edx
and r8d, r10d
imul r8d, r9d
mov r9d, edx
and r9d, 0x1b873593
or edx, 0x1b873593
imul edx, r9d
add edx, r8d
mov r9d, eax
mov r8d, 0x6cb1462c
xor r8d, 0x934eb9d3
mov eax, edx
xor eax, r8d
mov r8d, edx
xor r8d, 0xffffffff
or eax, r8d
xor eax, 0xffffffff
mov r10d, 0x8e0660a1
xor r10d, 0x71f99f5e
mov r8d, r9d
xor r8d, r10d
or eax, r8d
mov r10d, 0x1f11ceb5
xor r10d, 0xe0ee314a
mov r8d, r9d
xor r8d, r10d
mov r10d, 0x80744d34
xor r10d, 0x7f8bb2cb
xor r9d, r10d
or r8d, r9d
xor edx, 0xffffffff
xor r8d, 0xffffffff
or edx, r8d
mov r8d, 0xf5b43261
xor r8d, 0xa4bcd9e
xor eax, r8d
mov r8d, 0xb4bead87
xor r8d, 0x4b415278
xor edx, r8d
or eax, edx
mov edx, eax
or edx, edx
xor edx, 0xffffffff
mov r9d, 0xe4e5eaa3
xor r9d, 0x1b1a155c
mov r8d, ecx
xor r8d, r9d
mov r10d, 0xa0d26577
xor r10d, 0x5f2d9a88
mov r9d, ecx
xor r9d, r10d
and r8d, r9d
xor edx, 0xffffffff
xor r8d, 0xffffffff
and edx, r8d
or eax, ecx
xor eax, 0xffffffff
or edx, eax
xor edx, 0xffffffff
mov ecx, edx
shr ecx, 0x10
mov r8d, ecx
xor r8d, edx
mov eax, 0x8089a37b
xor eax, 0x7f765c84
xor r8d, eax
mov eax, edx
and eax, r8d
shl eax, 1
sub eax, edx
sub ecx, eax
mov r8d, 0xffffffff
xor r8d, 0x85ebca6b
mov edx, ecx
and edx, r8d
mov eax, ecx
or eax, r8d
mov r8d, 0xa954c7da
xor r8d, 0x56ab3825
xor eax, r8d
imul eax, edx
mov r8d, 0xe28e9c55
xor r8d, 0x6765563e
mov edx, ecx
and edx, r8d
or ecx, 0x85ebca6b
imul ecx, edx
add ecx, eax
mov eax, ecx
shr eax, 0xd
xor eax, ecx
imul ecx, eax, 0xc2b2ae35
mov eax, ecx
shr eax, 0x10
xor eax, ecx
mov eax, eax
mov qword [rsp + 0x20], rax
mov rax, qword [rsp + 0x20]
add rsp, 0xf8
pop rbx
pop rbp
pop rdi
pop rsi
ret
and byte [rax - 0x7f], cl
invalid
je 0x14005ada4
sub dword [rbx - 0x89c17], esi
invalid
in al, dx
add al, 0xd3
jmp 0x14005a627
ja 0x14005ae0c
invalid
scasb al, byte [rdi]
pop rsp
clc
int1
jmp 0x14005aa53