Function at 0x1400a5cd0
Capabilities:
Encode data using xor
Encrypt data using speck

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x38
mov ebx, r8d
mov r14, rcx
mov r12, qword [rsp + 0xc0]
add byte [rax], al
mov rdi, qword [rsp + 0xb8]
mov rsi, qword [rsp + 0xb0]
mov r13, qword [rsp + 0xa8]
mov r15, qword [rsp + 0xa0]
add byte [rax], al
mov eax, r8d
and eax, 0x3f
cmp eax, 0x12
jbe 0x1400a5d54
cmp eax, 0x21
jbe case.default.0x1400a5d36
lea rcx, [0x1407901c8]
add eax, 0xffffffde
lea r8, [0x1405e998c]
add byte [rbx - 0x72b32140], al
add eax, 0x543c5d
movsxd rax, dword [r8 + rax*4]
add rax, r8
jmp rax
nop
movzx eax, byte [0x140706156]
cmp al, 0x59
jne 0x1400a65f7
lea rcx, [0x140706140]
jmp case.0x1400a5d78.0
cmp eax, 8
jbe 0x1400a5dbf
cmp eax, 0xd
jbe case.default.0x1400a5d78
mov ecx, 1
add eax, 0xfffffff2
lea r8, [0x1405e9978]
movsxd rax, dword [r8 + rax*4]
add rax, r8
jmp rax
mov rcx, r13
call fcn.140096cf0
test esi, esi
je 0x1400a6438
mov rcx, r13
call fcn.1400954d0
mov rcx, r13
jmp case.0x1400a5d78.0
cmp eax, 0x16
jae 0x1400a5e46
cmp eax, 0x13
je 0x1400a5fcb
cmp eax, 0x15
jne case.0x1400a5d36.5
mov ecx, 0xffff
jmp case.0x1400a5d78.0
cmp eax, 4
jae 0x1400a5e8d
cmp eax, 2
jae 0x1400a5ef4
mov ecx, 0xffff
test eax, eax
jne case.0x1400a5d78.0
jmp case.0x1400a0ffb.18
mov ecx, 0xffff
cmp eax, 9
je case.0x1400a5d78.0
cmp eax, 0xa
jbe 0x1400a5fdd
cmp eax, 0xb
je 0x1400a6316
cmp eax, 0xd
jne 0x1400a6320
nop
movzx eax, byte [0x140706233]
lea rcx, [0x140706230]
cmp al, 0x36
je case.0x1400a5d78.0
mov dl, 0xd4
mov al, 0x79
lock cmpxchg byte [0x140706233], dl
je 0x1400a6728
cmp al, 0x36
je case.0x1400a5d78.0
test bl, bl
jns 0x1400a5e25
jmp 0x1400a6474
jne 0x1400a5f0d
lea rax, [0x1405e8c48]
mov qword [r14], rax
mov rdi, qword [r14 + 0x60]
test rdi, rdi
je 0x1400a6470
nop
mov rcx, qword [rdi + 8]
test rcx, rcx
je 0x1400a6468
nop
mov rax, qword [rcx]
mov rax, qword [rax + 0x10]
call qword [0x140704440]
test rax, rax
jne 0x1400a6450
jmp 0x1400a6468
cmp eax, 5
jbe 0x1400a5fa9
cmp eax, 6
je 0x1400a616e
mov ecx, 0xffffffff
cmp eax, 8
je case.0x1400a5d78.0
mov rdx, r15
sub rdx, rdi
jae 0x1400a63fc
test rsi, rsi
je 0x1400a6919
cmp rsi, 1
mov rax, rsi
adc rax, 0
xor ecx, ecx
cmp rsi, 8
jb 0x1400a67ab
cmp rdx, 0x20
jb 0x1400a67ab
cmp rsi, 0x20
jae 0x1400a6752
xor ecx, ecx
jmp 0x1400a6786
cmp eax, 3
jne 0x1400a6077
nop
mov qword [rsp + 0x30], r15
xor eax, eax
mov rcx, r9
jmp 0x1400a691e
cmp eax, 0x1a
jbe 0x1400a60a7
cmp eax, 0x1d
jae 0x1400a62b4
cmp eax, 0x1b
jne case.0x1400a0ffb.18
lea rax, [0x1405e8568]
mov qword [rdi], rax
mov rdx, rdi
mov r9d, 0x43b09117
call fcn.1400a0ce0
lea rax, [0x1405e8688]
mov qword [rdi], rax
mov rsi, qword [rdi + 0x60]
test rsi, rsi
je 0x1400a5f90
nop
mov rcx, qword [rsi + 8]
test rcx, rcx
je 0x1400a5f88
nop
mov rax, qword [rcx]
mov rax, qword [rax + 0x10]
call qword [0x140704440]
test rax, rax
je 0x1400a5f88
nop
mov rcx, qword [rax]
mov r8, qword [rcx]
mov rcx, rax
mov edx, 1
mov rax, r8
call qword [0x140704440]
mov rcx, rsi
call fcn.1400954d0
test r14d, r14d
je 0x1400a6221
mov rcx, rdi
call fcn.1400954d0
mov rcx, rdi
jmp case.0x1400a5d78.0
cmp eax, 4
jne case.0x1400a5d36.5
lea rcx, [0x14078fff8]
mov r9d, 0x786c91b
call fcn.1400a0ce0
xor ecx, ecx
jmp case.0x1400a5d78.0
mov ecx, r15d
mov rdx, rsi
call fcn.14057fe3c
mov ecx, eax
jmp case.0x1400a5d78.0
call fcn.140097710
mov esi, eax
movzx r14d, byte [0x1407901d0]
mov rcx, qword [0x14070b840]
mov ebp, eax
sub ebp, r14d
add ebp, 0xffffd6f2
mov eax, dword [0x14070b828]
add eax, ebp
cdqe
add rax, rcx
mov rcx, rdi
call qword [0x140704440]
mov rcx, qword [0x14070b830]
add ebp, dword [0x14070b824]
movsxd rax, ebp
add rax, rcx
mov ecx, r15d
mov edx, 0xe11a094d
call qword [0x140704440]
test al, 1
jne 0x1400a6221
sub esi, r14d
nop
mov rcx, qword [0x14070b838]
mov eax, dword [0x14070b820]
add eax, esi
add eax, 0xffffd6f2
cdqe
add rax, rcx
mov rcx, rdi
call qword [0x140704440]
test ebx, 0x100
mov rcx, rdi
jne case.0x1400a5d78.0
jmp case.0x1400a5d36.5
mov rcx, rsi
mov r9d, 0x908ff096
call fcn.1400a0ce0
test r12d, r12d
je 0x1400a64e3
test bl, 0x40
jne 0x1400a6511
mov rcx, rsi
call fcn.1400954d0
mov rcx, rsi
jmp case.0x1400a5d78.0
cmp eax, 0x18
jbe 0x1400a62f4
cmp eax, 0x1a
jne 0x1400a648c
test edi, edi
je 0x1400a6484
mov rcx, r13
call fcn.1400954d0
mov rcx, r13
jmp case.0x1400a5d78.0
nop
movzx eax, byte [0x140706135]
lea rcx, [0x140706120]
cmp al, 0x9d
je case.0x1400a5d78.0
mov dl, 0xd5
nop word [rax + rax]
mov al, 0x1d
lock cmpxchg byte [0x140706135], dl
je 0x1400a6335
invalid
add al, byte [rax]
invalid
cmp al, 0x9d
jne 0x1400a60f0
jmp case.0x1400a5d78.0
lea rax, [0x1405e90b0]
mov qword [rdi], rax
test edx, edx
je 0x1400a6221
and ebx, 0x40
je 0x1400a6221
mov rcx, rdi
call fcn.1400954d0
mov rcx, rdi
jmp case.0x1400a5d78.0
invalid
test r14d, r14d
je 0x1400a6430
test bl, bl
jns case.0x1400a5d36.5
mov rcx, r12
call fcn.1400954d0
mov rcx, r12
jmp case.0x1400a5d78.0
add byte [rax], al
mov rcx, rsi
mov rdx, r13
mov r8, r15
mov r9, rdi
call fcn.1405801c0
mov rcx, rax
jmp case.0x1400a5d78.0
mov ecx, edx
mov rdx, r12
call fcn.14058036c
mov ecx, eax
jmp case.0x1400a5d78.0
lea rax, [0x1405e8688]
mov qword [rsi], rax
mov rdi, qword [rsi + 0x60]
test rdi, rdi
je 0x1400a61cf
nop
mov rcx, qword [rdi + 8]
test rcx, rcx
je 0x1400a61c7
nop
mov rax, qword [rcx]
mov rax, qword [rax + 0x10]
call qword [0x140704440]
test rax, rax
je 0x1400a61c7
nop
mov rcx, qword [rax]
mov r8, qword [rcx]
mov rcx, rax
mov edx, 1
add byte [rax], al
mov rax, r8
call qword [0x140704440]
mov rcx, rdi
call fcn.1400954d0
test r12d, r12d
je 0x1400a64e3
or eax, dword [rbx]
add byte [rax], al
or eax, dword [rbx]
add byte [rax], al
mov rcx, rsi
call fcn.1400954d0
invalid
invalid
dec dword [rax - 0x77]
int1
jmp case.0x1400a5d78.0
xor eax, eax
sub eax, dword [r9 - 4]
cdqe
lea rdi, [r9 + rax]
add rdi, 0xffffffffffffff78
mov rdx, rdi
cli
mov r9d, 0x3d572a94
call fcn.1400a0ce0
test esi, esi
je 0x1400a6221
mov rcx, rdi
call fcn.1400954d0
invalid
invalid
test bl, 0x40
mov rcx, r12
je case.0x1400a5d78.0
mov rcx, rdi
jmp case.0x1400a5d78.0
nop
mov rax, qword [rdx + 0x38]
mov r10, qword [rax]
mov r8w, 0xffff
mov eax, 0x854dffff
ror byte [rdi], cl
test byte [rax + 7], ah
add byte [rax], al
test bl, bl
jns case.0x1400a0db9.6
mov esp, esp
invalid
add byte [rax], al
nop
mov rcx, qword [rdx + 0x50]
push rax
push rax
cmp dword [rcx], 0
jle 0x1400a66a9
nop
movzx r8d, word [r10]
jmp 0x1400a699f
mov rcx, rdi
call fcn.1401f8170
adc eax, 0xe9c93100
invalid
invalid
add byte [rax], al
test r14d, r14d
je 0x1400a6484
xor ecx, ecx
test bl, bl
js 0x1400a6957
mov dh, dl
invalid
add byte [rax], al
invalid
mov rcx, r13
call fcn.1400954d0
mov rcx, r13
jmp case.0x1400a5d78.0
nop
movzx ecx, word [rsi + 0x1a]
sbb r13b, cl
test al, 6
add byte [rax], al
sbb r13b, cl
test al, 6
add byte [rax], al
nop
lock inc dword [r13 + 8]
xor ecx, ecx
jmp case.0x1400a5d78.0
call fcn.140095150
xor ecx, ecx
jmp case.0x1400a5d78.0
jne 0x1400a649d
nop
movzx eax, byte [0x140706189]
lea rcx, [0x140706180]
cmp al, 0x9a
je case.0x1400a5d78.0
mov dl, 0x56
mov al, 0x1d
lock cmpxchg byte [0x140706189], dl
je 0x1400a6277
test ebx, 0x100
je 0x1400a60c1
cmp al, 0x9a
jne 0x1400a62d3
jmp case.0x1400a5d78.0
jne 0x1400a64bb
nop
movzx eax, byte [0x140706175]
cmp al, 0x6d
jne 0x1400a64d4
lea rcx, [0x140706160]
jmp case.0x1400a5d78.0
mov ecx, 1
jmp case.0x1400a5d78.0
test r13d, r13d
je 0x1400a65e9
test ebx, 0x200
jne case.0x1400a5d36.5
mov r8d, 0xb21e5513
mov r9d, 0xb21e5512
xor r11d, r11d
movabs rsi, 0x8618618618618619
lea rax, [0x1405e7790]
mov edi, 0xb21e550a
add rdi, rax
lea rcx, [0x140706120]
nop word cs:[rax + rax]
mov rax, r8
mul rsi
mov r10, rdx
mov rax, r9
mul rsi
mov rax, r9
sub rax, rdx
shr rax, 1
add rax, rdx
shr rax, 4
imul rax, rax, 0xffffffffffffffeb
add rax, rdi
movzx edx, byte [r11 + rcx]
xor dl, byte [r11 + rax + 8]
xor dl, byte [rbx + rax + 8]
xor dl, 0x6d
mov byte [r11 + rcx], dl
cmp r11, 0x14
je 0x1400a63ef
mov rax, r8
sub rax, r10
shr rax, 1
add rax, r10
shr rax, 4
add al, 0x48
imul eax, eax, 0xffffffeb
add rax, rdi
add rax, 9
movzx edx, byte [r11 + rcx + 1]
xor dl, byte [rax + r11]
xor dl, 0x6d
insd dword [rdi], dx
insd dword [rdi], dx
mov byte [r11 + rcx + 1], dl
add r11, 2
add r8, 2
add r9, 2
jmp 0x1400a6370
xor ecx, ecx
jmp case.0x1400a5d78.0
mov al, 0x9d
xchg byte [0x140706135], al
jmp case.0x1400a5d78.0
test rsi, rsi
je 0x1400a6919
cmp rsi, 4
jb 0x1400a68b5
mov rax, rdi
sub rax, r15
cmp rax, 0x10
jb 0x1400a68b5
cmp rsi, 0x10
jae 0x1400a680e
xor eax, eax
jmp 0x1400a6851
mov rcx, r12
jmp case.0x1400a5d78.0
mov rcx, r13
test bl, 0x40
jne case.0x1400a5d78.0
lea rdi, [rsp + 0x28]
lea rax, [rsp + 0x30]
xor esi, esi
nop
mov rcx, qword [rax]
mov r8, qword [rcx]
mov rcx, rax
mov edx, 1
mov rax, r8
call qword [0x140704440]
mov rcx, rdi
call fcn.1400954d0
test esi, esi
je 0x1400a647c
mov rcx, r14
call fcn.1400954d0
mov rcx, r14
jmp case.0x1400a5d78.0
mov rcx, r13
jmp case.0x1400a5d78.0
nop
mov qword [rsi], r13
mov qword [r15], r14
mov ecx, 3
jmp case.0x1400a5d78.0
cmp eax, 0x1f
ja 0x1400a65c7
jne 0x1400a66f9
mov rcx, r12
call fcn.1405806b0
mov ecx, eax
jmp case.0x1400a5d78.0
mov r8, r9
mov rsi, r9
mov esi, ecx
mov r9d, 0xe2dfbe11
call fcn.1400a0ce0
mov r9, rsi
test r15d, r15d
je case.0x1400a5d36.12
test bl, bl
js 0x1400a64f3
mov rcx, r9
mov rsi, r9
call fcn.1400954d0
mov rcx, rsi
jmp case.0x1400a5d78.0
mov rcx, r9
jmp case.0x1400a5d78.0
mov dl, 3
lea rcx, [0x140706160]
mov al, 0x5a
lock cmpxchg byte [0x140706175], dl
je 0x1400a6511
cmp al, 0x6d
jne 0x1400a64fc
jmp case.0x1400a5d78.0
mov eax, 1
mov edx, 0xc5367be4
mov r8d, 0x3ac98432
mov r9d, 0xc5367be5
mov r10d, 0x3ac98431
mov r11d, 0xb21642c9
lea rcx, [0x140706160]
lea rsi, [0x1405e77d0]
nop word cs:[rax + rax]
mov edi, r10d
imul rdi, r11
shr rdi, 0x24
lea ebx, [rdi + rdi*2]
shl ebx, 3
sub ebx, edi
add ebx, r9d
movzx edi, byte [rax + rcx - 1]
xor dil, byte [rbx + rsi]
xor dil, 0x41
mov byte [rax + rcx - 1], dil
cmp rax, 0x15
je 0x1400a65ba
mov edi, r8d
imul rdi, r11
shr rdi, 0x24
lea ebx, [rdi + rdi*2]
shl ebx, 3
sub ebx, edi
add ebx, edx
movzx edi, byte [rax + rcx]
mov ebx, ebx
xor dil, byte [rbx + rsi]
xor dil, 0x41
mov byte [rax + rcx], dil
add rax, 2
add edx, 0xfffffffe
add r8d, 2
add r9d, 0xfffffffe
add r10d, 2
jmp 0x1400a6550
mov al, 0x6d
xchg byte [0x140706175], al
jmp case.0x1400a5d78.0
cmp eax, 0x21
jne 0x1400a6719
test r15d, r15d
je 0x1400a6895
mov rcx, rsi
call fcn.1400954d0
mov rcx, rsi
jmp case.0x1400a5d78.0
mov ecx, 1
test bl, 0x40
jne case.0x1400a5d78.0
mov dl, 0x6e
lea rcx, [0x140706140]
mov al, 3
lock cmpxchg byte [0x140706156], dl
je 0x1400a6615
cmp al, 0x59
jne 0x1400a6600
jmp case.0x1400a5d78.0
mov eax, 0xeb4bd56d
mov edx, 0x14b42aab
mov r8d, 1
mov r9d, 0xeb4bd56e
mov r10d, 0x14b42aaa
lea rcx, [0x140706140]
lea r11, [0x1405e77b0]
mov esi, edx
imul rsi, rsi, 0x51eb851f
shr rsi, 0x23
lea esi, [rsi + rsi*4]
lea esi, [rsi + rsi*4]
add esi, eax
mov edi, r10d
imul rdi, rdi, 0x51eb851f
shr rdi, 0x23
lea edi, [rdi + rdi*4]
lea edi, [rdi + rdi*4]
add edi, r9d
movzx ebx, byte [rdi + r11]
xor bl, 0x45
add byte [r8 + rcx - 1], bl
movzx ebx, byte [rsi + r11]
xor bl, 0x45
add byte [r8 + rcx], bl
add eax, 0xfffffffe
add edx, 2
add r8, 2
add r9d, 0xfffffffe
add r10d, 2
cmp r8, 0x17
jne 0x1400a663f
mov al, 0x59
xchg byte [0x140706156], al
jmp case.0x1400a5d78.0
nop
mov r11, qword [rdx + 0x40]
mov r11, qword [r11]
test r11, r11
je 0x1400a699f
nop
test byte [rdx + 0x70], 4
jne 0x1400a68a6
nop
mov r9, qword [rdx + 0x68]
cmp r9, r11
cmovb r9, r11
mov r8w, 0xffff
cmp r9, r10
jbe 0x1400a699f
nop
mov qword [rdx + 0x68], r9
sub r9, qword [rax]
shr r9, 1
mov dword [rcx], r9d
mov rax, qword [rdx + 0x38]
mov r10, qword [rax]
jmp 0x1400a6255
nop
mov r10, qword [r13 + 8]
test r10, r10
sete r11b
movzx eax, byte [0x1407060d2]
cmp al, 0x21
jne 0x1400a69c1
jmp 0x1400a6aa3
mov rcx, r14
call fcn.14059b818
xor ecx, ecx
jmp case.0x1400a5d78.0
nop
add byte [0x140706230], 0xdd
add byte [0x140706231], 0xc
add byte [0x140706232], 0xbd
mov al, 0x36
xchg byte [0x140706233], al
lea rcx, [0x140706230]
jmp case.0x1400a5d78.0
mov rcx, rax
and rcx, 0xffffffffffffffe0
xor edx, edx
nop
movups xmm0, xmmword [rdi + rdx]
movups xmm1, xmmword [rdi + rdx + 0x10]
movups xmmword [r15 + rdx], xmm0
movups xmmword [r15 + rdx + 0x10], xmm1
add rdx, 0x20
cmp rcx, rdx
jne 0x1400a675b
cmp rax, rcx
je 0x1400a6919
test al, 0x18
je 0x1400a67ab
mov rdx, rcx
mov rcx, rax
and rcx, 0xfffffffffffffff8
nop
mov r8, qword [rdi + rdx]
mov qword [r15 + rdx], r8
add rdx, 8
cmp rcx, rdx
jne 0x1400a6790
cmp rax, rcx
je 0x1400a6919
mov r8, rax
mov rdx, rcx
and r8, 3
je 0x1400a67cc
mov rdx, rcx
nop
movzx r9d, byte [rdi + rdx]
mov byte [r15 + rdx], r9b
inc rdx
dec r8
jne 0x1400a67ba
sub rcx, rax
cmp rcx, 0xfffffffffffffffc
ja 0x1400a6919
nop
movzx eax, byte [rdi + rdx]
mov byte [r15 + rdx], al
movzx eax, byte [rdi + rdx + 1]
mov byte [r15 + rdx + 1], al
movzx eax, byte [rdi + rdx + 2]
mov byte [r15 + rdx + 2], al
movzx eax, byte [rdi + rdx + 3]
mov byte [r15 + rdx + 3], al
add rdx, 4
cmp rsi, rdx
jne 0x1400a67d9
jmp 0x1400a6919
mov rax, rsi
and rax, 0xfffffffffffffff0
lea rcx, [r15 + rsi]
add rcx, 0xfffffffffffffff0
lea rdx, [rdi + rsi]
add rdx, 0xfffffffffffffff0
mov r8, rax
neg r8
xor r9d, r9d
nop
movups xmm0, xmmword [rdx + r9]
movups xmmword [rcx + r9], xmm0
add r9, 0xfffffffffffffff0
cmp r8, r9
jne 0x1400a682e
cmp rax, rsi
je 0x1400a6919
test sil, 0xc
je 0x1400a68b2
mov rcx, rsi
and rcx, 0xfffffffffffffffc
mov edx, esi
and edx, 3
lea r8, [r15 + rsi]
add r8, 0xfffffffffffffffc
neg rax
lea r9, [rdi + rsi]
add r9, 0xfffffffffffffffc
mov r10, rcx
neg r10
nop
mov r11d, dword [r9 + rax]
mov dword [r8 + rax], r11d
add rax, 0xfffffffffffffffc
cmp r10, rax
jne 0x1400a6876
cmp rcx, rsi
mov rsi, rdx
jne 0x1400a68b5
jmp 0x1400a6919
mov rcx, rsi
test bl, 0x40
jne 0x1400a673e
jmp case.0x1400a5d78.0
mov r8w, 0xffff
xor ecx, ecx
jmp 0x1400a699a
and esi, 0xf
lea rcx, [rsi - 1]
mov rdx, rsi
and rdx, 3
je 0x1400a68db
lea rax, [rsi - 1]
movzx r8d, byte [rdi + rsi - 1]
mov byte [r15 + rsi - 1], r8b
dec rdx
mov rsi, rax
jne 0x1400a68c2
jmp 0x1400a68de
mov rax, rsi
cmp rcx, 3
jb 0x1400a6919
mov rcx, rax
nop
movzx edx, byte [rdi + rax - 1]
mov byte [r15 + rax - 1], dl
movzx edx, byte [rdi + rax - 2]
mov byte [r15 + rax - 2], dl
movzx edx, byte [rdi + rax - 3]
mov byte [r15 + rax - 3], dl
add rcx, 0xfffffffffffffffc
movzx edx, byte [rdi + rax - 4]
mov dh, 0x54
invalid
cld
mov byte [r15 + rax - 4], dl
mov rax, rcx
jne 0x1400a68e7
mov rcx, r15
jmp case.0x1400a5d78.0
nop
mov qword [rsp + 0x28], rax
cmp rax, qword [rsp + 0x30]
jae case.0x1400a5d78.0
nop
mov rax, qword [rsp + 0x28]
and al, 0x28
and al, 0x28
movzx edx, byte [rdi + rax]
mov byte [r9 + rax], dl
mov rax, qword [rsp + 0x28]
inc rax
jmp 0x1400a691e
mov rax, rcx
add rsp, 0x38
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
lea eax, [rcx + 0x234f2355]
imul rax, rax, 0x38e38e39
shr rax, 0x21
lea eax, [rax + rax*8]
neg eax
add eax, ecx
add eax, 0x234f2355
movsxd rcx, ecx
lea rdx, [0x140706180]
lea r8, [0x1405e77f0]
sub r8, rax
movzx eax, byte [r8 + 8]
add byte [rcx + rdx], al
inc ecx
xor r8d, r8d
cmp ecx, 8
jg 0x1400a69a5
test bl, 0x40
je 0x1400a6957
movzx ecx, r8w
jmp case.0x1400a5d78.0
lea r10, [rsp + 0x30]
mov r11b, 1
test ebx, 0x200
je 0x1400a6a87
cmp al, 0x21
je 0x1400a6a9b
mov cl, 0xda
mov al, 0xca
lock cmpxchg byte [0x1407060d2], cl
jne 0x1400a69ad
lea rsi, [0x1405e7750]
lea rdi, [rsi + 0x44c20734]
add rsi, 0x44c20733
mov ecx, 0x44c20734
mov r8d, 0x44c20732
movabs r14, 0xcccccccccccccccd
lea r15, [0x1407060c0]
mov rax, rcx
mul r14
shr rdx, 2
and rdx, 0xfffffffffffffffc
lea r12, [rdx + rdx*4]
neg r12
mov rax, r8
mul r14
shr rdx, 2
and rdx, 0xfffffffffffffffc
lea rax, [rdx + rdx*4]
neg rax
movzx edx, byte [rcx + r15 - 0x44c20734]
xor dl, byte [rsi + rax]
movzx eax, byte [rcx + r15 - 0x44c20733]
xor dl, 0x18
xor al, byte [rdi + r12]
mov byte [rcx + r15 - 0x44c20734], dl
xor al, 0x18
mov byte [rcx + r15 - 0x44c20733], al
add rdi, 2
add rcx, 2
add rsi, 2
add r8, 2
cmp rcx, 0x44c20746
jne 0x1400a6a00
mov al, 0x21
xchg byte [0x1407060d2], al
test bl, 0x40
mov rcx, r9
jne case.0x1400a5d78.0
jmp 0x1400a6aa3
mov al, 0x9a
xchg byte [0x140706189], al
lea rcx, [0x140706180]
jmp case.0x1400a5d78.0
test bl, bl
js 0x1400a603d
lea rcx, [0x1407060c0]
test r11b, 1
cmove rcx, r10
jmp case.0x1400a5d78.0
invalid
invalid
invalid
invalid
mov esi, ecx
mov dh, 5
int1
add byte gs:[rcx + rax*8], bh
add byte [rax], al
add ecx, dword [rax - 0x75]
sbb byte [rax - 0x77], cl
fcos
adc eax, 0x65ccde
add byte [rax], al
test byte [rcx + 0x4800000f], al
add ebx, 0x10
and al, 0x49
inc esp