Function at 0x140034ea0
Capabilities:
Encode data using xor
Encrypt data using aes mixcolumns step
Hash data using murmur3

Disassembly:
push rsi
push rdi
push rbx
sub rsp, 0x100
mov qword [rsp + 0xb0], rdx
mov qword [rsp + 0xa0], rcx
call fcn.140035837
mov rcx, rax
mov rax, qword [rsp + 0xb0]
mov qword [rsp + 0xa8], rcx
mov ecx, 4
cqo
idiv rcx
mov rcx, rax
mov rax, qword [rsp + 0xb0]
mov r8d, 4
cqo
idiv r8
mov qword [rsp + 0xb8], rdx
mov rax, rcx
shl rax, 2
mov qword [rsp + 0xc0], rax
cvtsi2sd xmm1, rcx
movsd xmm0, qword [0x1402514e8]
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 + 0x88], r8
mov dword [rsp + 0x94], edx
mov qword [rsp + 0x98], rcx
test al, 1
jne 0x140034ff8
movsd xmm0, qword [rsp + 0xd8]
call fcn.140240030
movaps xmm1, xmm0
movsd xmm0, qword [rsp + 0xc8]
movsd qword [rsp + 0x80], xmm1
call fcn.140240030
movsd xmm1, qword [rsp + 0x80]
movsd xmm2, qword [0x1402514f0]
mulsd xmm1, xmm2
ucomisd xmm0, xmm1
jae 0x140034ff8
call fcn.140008d37
jmp 0x1400351c0
mov rax, qword [rsp + 0x88]
mov rcx, qword [rsp + 0xc0]
cmp rax, rcx
jge 0x1400352c1
mov rax, qword [rsp + 0x88]
mov rcx, qword [rsp + 0xb0]
mov dword [rsp + 0xfc], 0
cmp rax, rcx
jl 0x140035090
mov rcx, qword [rsp + 0x88]
mov rdx, qword [rsp + 0xb0]
movabs rax, 0xfe3a7f59b34d824e
sub rdx, rax
movabs rax, 0x63ada329a962b850
movabs r8, 0x9c525cd6569d47af
xor rax, r8
add rdx, rax
movabs rax, 0xa728329af42f95d7
movabs r8, 0x59124dc347621799
xor rax, r8
add rdx, rax
call fcn.140012b72
jmp 0x1400351c0
mov eax, dword [0x140242890]
mov edx, dword [0x140242894]
mov ecx, eax
and ecx, edx
shl ecx, 1
add eax, edx
sub eax, ecx
add eax, 0x6a1ab48a
mov edx, 0xdb528ab2
xor edx, 0x24ad754d
mov ecx, eax
xor ecx, edx
and ecx, 0x35c91354
mov edx, 0xdd7da5f6
xor edx, 0xe8b4b6a2
mov r8d, 0xb850066c
xor r8d, 0x47aff993
xor edx, r8d
and eax, edx
sub eax, ecx
mov ecx, 0xc81962af
xor ecx, 0xd5353f94
or eax, ecx
mov ecx, 0x98065d1e
xor ecx, 0xfecfc46c
cmp eax, ecx
jb 0x14003581c
mov r8, qword [rsp + 0x88]
mov eax, dword [str.6_tl]
sub eax, dword [0x14024289c]
mov ecx, 0x980b9a09
xor ecx, 0x7abf54da
xor edx, edx
div ecx
and eax, 0xb62ba131
mov ecx, 0x7bb2056
xor ecx, 0x9ade027
xor edx, edx
div ecx
mov rdx, qword [rsp + 0xa0]
mov ecx, 0x437f659e
xor ecx, 0xa70fb1dd
add rdx, r8
mov qword [rsp + 0x78], rdx
cmp eax, ecx
ja 0x14003581c
xor eax, eax
mov qword [rsp + 0x70], rax
jmp 0x140035166
mov rax, qword [rsp + 0x70]
mov qword [rsp + 0x68], rax
cmp rax, 4
je 0x1400351af
mov rax, qword [rsp + 0x68]
mov rcx, qword [rsp + 0x78]
mov cl, byte [rcx + rax]
mov byte [rsp + rax + 0xfc], cl
mov rcx, 0xffffffffffffffff
xor rcx, 1
xor edx, edx
sub rdx, 1
sub rcx, rdx
sub rax, rcx
mov qword [rsp + 0x70], rax
jmp 0x140035166
mov rax, qword [rsp + 0xa8]
cmp byte [rax], 0
je 0x1400351cc
xor eax, eax
mov qword [rsp + 0x60], rax
jmp 0x14003580c
mov rdx, qword [rsp + 0x98]
mov r8d, dword [rsp + 0x94]
mov rax, qword [rsp + 0x88]
mov r9d, dword [rsp + 0xfc]
mov ecx, r9d
xor ecx, 0xffffffff
and ecx, 0xcc9e2d51
mov r11d, 0x76b685f
xor r11d, 0xcbf5450e
mov r10d, 0xf65e4d3d
xor r10d, 0x9a1b2c2
xor r11d, r10d
mov r10d, r9d
and r10d, r11d
imul r10d, ecx
mov ecx, 0x57229746
xor ecx, 0x9bbcba17
mov r11d, r9d
and r11d, ecx
mov ecx, r9d
or ecx, 0xcc9e2d51
imul ecx, r11d
add ecx, r10d
shr ecx, 0x11
imul r9d, r9d, 0x16a88000
or ecx, r9d
xor r9d, r9d
sub r9, 4
sub rax, r9
imul ecx, ecx, 0x1b873593
xor ecx, r8d
rol ecx, 0xd
mov r8d, 0x727118fe
xor r8d, 0x727118fb
imul ecx, r8d
add ecx, 0xe6546b64
movabs r8, 0xfe024c4a2257952
movabs r9, 0x4f26a92388847c2a
xor r8, r9
add rdx, r8
add rdx, 4
movabs r8, 0x40c68de72aa10578
sub rdx, r8
mov qword [rsp + 0xe0], rdx
mov dword [rsp + 0xec], ecx
mov qword [rsp + 0xf0], rax
jmp 0x140034f6a
mov eax, dword [0x1402428a0]
mov ecx, 0x536152c
xor ecx, 0x33c9a791
xor eax, ecx
xor edx, edx
div dword [0x1402428a4]
mov ecx, 0xdb97fec6
xor ecx, 0xdb70ffca
xor edx, edx
div ecx
xor eax, 0x75eae528
mov ecx, 0x2f852a00
xor ecx, 0xe7a6094a
imul eax, ecx
mov ecx, 0xff473dba
xor ecx, 0xaa9aee2d
cmp eax, ecx
jb 0x140035825
mov r8, qword [rsp + 0xb0]
mov r9, qword [rsp + 0x98]
mov rdx, qword [rsp + 0xb8]
mov ecx, dword [0x1402428a8]
imul ecx, dword [0x1402428ac]
mov eax, ecx
xor eax, 0xffffffff
mov r10d, ecx
xor r10d, 0xffffffff
or eax, r10d
xor eax, 0xffffffff
mov r10d, 0x9f87dd2f
xor r10d, 0xbd251c7
mov r11d, 0xb0ad89bb
xor r11d, 0x4f527644
xor r10d, r11d
or eax, r10d
mov r10d, 0xffffffff
xor r10d, 0x94558ce8
mov r11d, 0xffffffff
xor r11d, 0x94558ce8
or r10d, r11d
xor ecx, 0xffffffff
xor r10d, 0xffffffff
or ecx, r10d
and eax, ecx
xor eax, 0xffffffff
or eax, 0xd871123f
mov ecx, 0xac26f80c
xor ecx, 0x313e3b34
xor eax, ecx
mov ecx, 0x85888d20
xor ecx, 0x81aa391e
add rdx, r9
cmp rdx, r8
setl dl
mov byte [rsp + 0x5f], dl
cmp eax, ecx
jb 0x140035311
mov rax, qword [rsp + 0xb8]
xor ecx, ecx
mov dword [rsp + 0x4c], ecx
mov qword [rsp + 0x50], rax
jmp 0x1400353de
mov ecx, dword [rsp + 0x4c]
mov rax, qword [rsp + 0x50]
mov qword [rsp + 0x40], rax
mov dword [rsp + 0x48], ecx
cmp rax, 0
jle 0x1400355b2
mov ecx, dword [0x1402428b0]
mov eax, 0xb3521182
xor eax, 0x7f52f8e2
xor ecx, eax
mov edx, dword [0x1402428b4]
xor edx, 0x852ed80a
mov eax, 0x7dad5a9d
xor eax, 0x8252a562
xor edx, eax
mov eax, ecx
xor eax, edx
and eax, ecx
mov ecx, 0xc66f69
xor edx, edx
div ecx
imul eax, eax, 0xbd1aab1c
xor eax, 0x1f810ad8
cmp eax, 0x467080e6
je 0x14003582e
mov r8, qword [rsp + 0x40]
mov rdx, qword [rsp + 0x88]
mov eax, dword [0x1402428b8]
mov r9d, dword [0x1402428bc]
xor r9d, 0xa254b77c
xor ecx, ecx
sub ecx, r9d
add eax, ecx
and eax, 0x8143c9c7
xor ecx, ecx
sub ecx, 0x1a5c78dd
add eax, ecx
add eax, 0x444b55f9
mov r9, r8
and r9, 0xffffffffffffffff
shl r9, 1
movabs r10, 0xc1fbc7e7f6d6db41
movabs rcx, 0x3e043818092924be
xor r10, rcx
mov rcx, r8
xor rcx, r10
add rcx, r9
mov qword [rsp + 0x28], rcx
add rcx, rdx
mov qword [rsp + 0x30], rcx
xor edx, edx
sub rdx, r8
and rcx, rdx
cmp rcx, 0
setl cl
mov byte [rsp + 0x3f], cl
cmp eax, 0x545978c0
jb 0x140035449
mov al, byte [rsp + 0x3f]
test al, 1
jne 0x1400354ec
jmp 0x1400354fd
call fcn.140008d37
xor eax, eax
mov qword [rsp + 0x60], rax
jmp 0x14003580c
mov dl, byte [rsp + 0x5f]
mov rax, qword [rsp + 0x30]
cmp rax, 0xffffffffffffffff
setg cl
xor dl, 0xff
mov al, cl
xor al, dl
and al, cl
test al, 1
jne 0x140035567
mov rcx, qword [rsp + 0x30]
mov rdx, qword [rsp + 0xb0]
movabs rax, 0xbc26f4e571614014
movabs r8, 0xcd062cdf449f3f8
xor rax, r8
add rdx, rax
add rdx, 0xffffffffffffffff
movabs rax, 0xb0f696288528b3ec
sub rdx, rax
call fcn.140012b72
xor eax, eax
mov qword [rsp + 0x60], rax
jmp 0x14003580c
mov rax, qword [rsp + 0x28]
mov rdx, qword [rsp + 0xa0]
mov r8, qword [rsp + 0x30]
mov r9d, dword [rsp + 0x48]
mov ecx, 0x6ba62010
xor ecx, 0x6ba62018
shl r9d, cl
mov ecx, r9d
movzx r8d, byte [rdx + r8]
mov edx, r8d
and edx, ecx
xor edx, 0xffffffff
add ecx, r8d
add ecx, 1
add ecx, edx
mov dword [rsp + 0x4c], ecx
mov qword [rsp + 0x50], rax
jmp 0x1400353de
mov rax, qword [rsp + 0xa8]
mov cl, byte [rax]
mov dl, 0x1b
xor dl, 0x1b
xor eax, eax
cmp cl, dl
mov qword [rsp + 0x60], rax
jne 0x14003580c
mov edx, dword [rsp + 0x94]
mov rcx, qword [rsp + 0xb0]
mov esi, dword [rsp + 0x48]
imul edi, esi, 0xcc9e2d51
shr edi, 0x11
mov r9d, 0xffffffff
xor r9d, 0x16a88000
mov r8d, esi
and r8d, r9d
mov eax, esi
or eax, r9d
xor eax, 0xffffffff
imul eax, r8d
mov r8d, esi
and r8d, 0x16a88000
or esi, 0x16a88000
imul esi, r8d
add esi, eax
mov r8d, edi
xor r8d, 0xffffffff
mov r10d, esi
xor r10d, 0xffffffff
mov r9d, 0xaf8143e0
xor r9d, 0x223a654c
mov eax, 0x709e7101
xor eax, 0x8f618efe
xor r9d, eax
mov eax, r8d
and eax, 0x8dbb26ac
and edi, r9d
mov ebx, 0x622b9eab
xor ebx, 0xef90b807
mov r11d, r10d
and r11d, ebx
and esi, r9d
or eax, edi
or r11d, esi
xor eax, r11d
or r8d, r10d
xor r8d, 0xffffffff
or r9d, 0x8dbb26ac
and r8d, r9d
or eax, r8d
mov r8d, 0x93fc9e92
xor r8d, 0x887bab01
imul eax, r8d
mov r8d, ecx
mov ecx, eax
xor ecx, r8d
xor ecx, 0xffffffff
mov r9d, r8d
and r9d, ecx
mov ecx, 0xafa85fc2
xor ecx, 0xafa85fc0
imul ecx, r9d
sub ecx, r8d
sub eax, ecx
mov ecx, eax
or ecx, ecx
xor ecx, 0xffffffff
mov r8d, edx
or r8d, r8d
xor r8d, 0xffffffff
or ecx, r8d
xor ecx, 0xffffffff
mov r8d, 0x1464880d
xor r8d, 0xeb9b77f2
xor eax, r8d
xor edx, 0xffffffff
and eax, edx
xor ecx, 0xffffffff
xor eax, 0xffffffff
and ecx, eax
mov eax, ecx
shr eax, 0x10
mov edx, eax
xor edx, 0xffffffff
mov r8d, eax
xor r8d, 0xffffffff
and edx, r8d
mov r9d, 0x3c412b40
xor r9d, 0xc3bed4bf
mov r8d, ecx
xor r8d, r9d
mov r9d, ecx
xor r9d, 0xffffffff
and r8d, r9d
or edx, r8d
xor edx, 0xffffffff
mov r8d, 0x3908ba40
xor r8d, 0xc6f745bf
xor eax, r8d
xor ecx, 0xffffffff
and eax, ecx
xor edx, 0xffffffff
xor eax, 0xffffffff
and edx, eax
mov r8d, 0xffffffff
xor r8d, 0x85ebca6b
mov ecx, edx
and ecx, r8d
mov eax, edx
or eax, r8d
mov r8d, 0xec7e3727
xor r8d, 0x1381c8d8
xor eax, r8d
imul eax, ecx
mov ecx, edx
and ecx, 0x85ebca6b
or edx, 0x85ebca6b
imul edx, ecx
add edx, eax
mov eax, edx
shr eax, 0xd
mov ecx, eax
and ecx, ecx
xor ecx, 0xffffffff
xor ecx, 0xffffffff
mov r8d, edx
xor r8d, 0xffffffff
or ecx, r8d
and edx, edx
mov r8d, 0x61cc4cc
xor r8d, 0xf9e33b33
xor edx, r8d
and eax, edx
xor eax, 0xffffffff
mov edx, 0xcd892c15
xor edx, 0x3276d3ea
xor ecx, edx
mov edx, 0x6fa37b79
xor edx, 0x905c8486
xor eax, edx
or ecx, eax
mov edx, ecx
xor edx, 0xffffffff
and edx, 0xc2b2ae35
mov r8d, 0xffffffff
xor r8d, 0xc2b2ae35
mov eax, ecx
and eax, r8d
imul eax, edx
mov edx, ecx
and edx, 0xc2b2ae35
or ecx, 0xc2b2ae35
imul ecx, edx
add ecx, eax
mov eax, ecx
shr eax, 0x10
xor eax, ecx
mov eax, eax
mov qword [rsp + 0x60], rax
mov rax, qword [rsp + 0x60]
add rsp, 0x100
pop rbx
pop rdi
pop rsi
ret
invalid
xchg ebx, eax
sub byte [rdi - 0x72417], bl
invalid
fcom dword [rcx + 0x33]
js 0x140035813
push rcx
xor edi, dword [rax - 0x17]
jrcxz 0x140035826
invalid
stc
sbb ch, byte [rsi - 0x3ed16f3]
invalid