Function at 0x14041b2de
Capabilities:
Authenticate hmac
Encrypt data using speck

Disassembly:
push r15
jmp 0x14041b310
push r14
cmp di, r15w
cmc
clc
push r13
test rbp, rcx
push r12
test sil, cl
push rsi
test spl, r9b
cmp si, 0x4836
push rdi
push rbp
test bp, 0x4846
push rbx
test r8b, al
sub rsp, 0x128
jmp 0x14041b345
movdqa xmmword [rsp + 0x110], xmm8
movdqa xmmword [rsp + 0x100], xmm7
movdqa xmmword [rsp + 0xf0], xmm6
mov rsi, rcx
bsf ax, r14w
rcr ah, 0x29
mov rax, rdx
mov qword [rsp + 0x48], rdx
clc
cmp r8d, edx
jmp 0x14041b37d
jne 0x14041b38b
mov rax, rsi
jmp 0x14041cdd2
mov ebx, r9d
mov ebp, r8d
shr eax, cl
mov eax, r9d
or eax, r8d
jmp 0x14041b39e
js 0x14041cdbd
test ebx, ebx
jmp 0x14041b3ab
je 0x14041b3dc
mov eax, 0x7fffffff
stc
cmp si, r15w
xor edx, edx
stc
test r12d, 0x7f3421dc
idiv ebx
test r14d, 0x50ea0676
clc
cmp eax, ebp
jmp 0x14041b3d6
jl 0x14041cdbd
mov edi, dword [rsp + 0x190]
adc ax, r15w
mov eax, ebx
imul eax, ebp
test r10w, 0x1c3c
mov dword [rsp + 0x34], eax
test r15b, 0xe6
clc
or eax, edi
jmp 0x14041b402
js 0x14041cdbd
test edi, edi
jmp 0x14041b40f
je 0x14041b438
mov eax, 0x7fffffff
jmp 0x14041b41f
sub edx, edx
stc
cmp r13b, 0xb1
clc
idiv edi
cmp eax, dword [rsp + 0x34]
jmp 0x14041b432
jl 0x14041cdbd
mov eax, dword [rsp + 0x34]
rcr cx, cl
imul eax, edi
movsx ecx, si
movzx rcx, r9w
movsxd rcx, eax
call fcn.140179b4c
test rax, rax
jmp 0x14041b459
je 0x14041cdbd
mov rdx, rax
mov qword [rsp + 0x70], rbp
cmc
test r11, r14
test edi, edi
mov qword [rsp + 0x78], rax
jle 0x14041cd8a
mov rax, qword [rsp + 0x70]
mov rcx, qword [rsp + 0x48]
lea r15d, [rax + rcx*8]
jmp 0x14041b495
cmp r15d, 0x23
jmp 0x14041b49e
ja 0x14041cda6
movabs rcx, 0xe161a1c00
jmp 0x14041b4b4
bt rcx, r15
jmp 0x14041b4bd
jae 0x14041cda6
lea eax, [rbx - 1]
movsx r8, ax
mov r8b, 0x86
mov ecx, edi
mov qword [rsp + 0xe0], rcx
mov ecx, eax
cmova r8, rsi
inc dil
jmp 0x14041b4e5
mov qword [rsp + 0x38], rcx
mov di, r12w
jmp 0x14041b4f3
inc rcx
cmp rdi, 0x747a337e
mov r8, rcx
rcr di, cl
and r8, 0xfffffffffffffff0
lea rdi, [r8 - 0x10]
bsr rbp, r14
mov qword [rsp + 0xc8], rdi
shr rdi, 4
movsx bp, r11b
movsx ebp, r11w
inc rdi
lea ebp, [rbx - 2]
cmp r10b, r12b
cmp di, 0x5524
mov dword [rsp + 0x30], ebp
bt bp, r14w
mov bpl, 0xbd
bswap ebp
movabs rbp, 0x1fffffff0
cmp rax, r15
test r11w, r9w
or rbp, 8
cmc
jmp 0x14041b55b
mov qword [rsp + 0x68], rcx
and rbp, rcx
mov ecx, eax
sub ecx, ebp
test al, dil
stc
mov dword [rsp + 0x58], ecx
movzx ecx, r8w
mov dword [rsp + 0x24], eax
sub eax, r8d
mov dword [rsp + 0x54], eax
shl rcx, 7
neg ax
bsr cx, r14w
mov rax, rdi
rcr eax, 0xd1
adc cx, 0x562a
and rax, 0x47901ccf
mov qword [rsp + 0xc0], rdi
movzx eax, bx
xor ah, ah
mov ecx, 0x437b77f8
and rdi, 0xfffffffffffffffe
mov qword [rsp + 0x98], rdi
adc al, r11b
movsx rax, si
cwde
mov eax, ebx
sbb rcx, r10
sal cx, cl
imul eax, dword [rsp + 0x48]
or cl, cl
sal rcx, 0xbe
mov dword [rsp + 0x5c], eax
rcl ax, 0xf7
cmc
mov eax, ebx
rol cl, cl
mov cx, 0x7789
and eax, 3
mov ecx, ebx
cmc
and ecx, 7
jmp 0x14041b5f4
mov qword [rsp + 0xd8], rcx
pcmpeqd xmm0, xmm0
pxor xmm1, xmm1
movdqa xmm8, xmmword [0x1400bf4e0]
movdqa xmm3, xmmword [0x1400bf4f0]
movdqa xmm4, xmmword [0x1400bf500]
lea rcx, [rbp + rbp]
cmp rdx, 0xc67d1e
mov qword [rsp + 0xb0], rcx
movzx ecx, r11w
neg cx
mov qword [rsp + 0xb8], rbp
mov cx, dx
lea rcx, [rbp + rbp*2]
cmc
clc
mov qword [rsp + 0xa8], rcx
mov cx, 0x7c7
stc
movsx ecx, ax
mov qword [rsp + 0x60], r8
shr rcx, cl
or ecx, 0x6e0f2b4c
lea rcx, [r8 + r8]
jmp 0x14041b671
mov qword [rsp + 0x80], rcx
jmp 0x14041b67e
lea rcx, [rsi + 0x17]
jmp 0x14041b687
mov qword [rsp + 0xa0], rcx
test r11, 0x22e460f
cmp di, di
cmc
mov qword [rsp + 0x40], rax
clc
lea rax, [rax + rax*2]
cmp sp, r14w
clc
mov qword [rsp + 0xd0], rax
lea rax, [rdx + 0x30]
cmp dil, 0xa8
mov qword [rsp + 0x90], rax
sal rax, 0x16
and ah, 0x4f
lea rax, [rsi + 0x18]
mov qword [rsp + 0x88], rax
jmp 0x14041b6dd
sub r10d, r10d
cmp r10w, 0x7231
xor r13d, r13d
test sil, r8b
xor r12d, r12d
mov qword [rsp + 0xe8], rsi
mov qword [rsp + 0x28], rbx
jmp 0x14041b701
jmp 0x14041b74d
inc r12
movsx rdx, r15w
rcr dl, cl
clc
add r13d, dword [rsp + 0x5c]
movsxd rdx, eax
cmp r15b, r8b
add r10d, dword [rsp + 0x34]
cmp r12, qword [rsp + 0xe0]
movzx esi, sp
mov rsi, qword [rsp + 0xe8]
jmp 0x14041b738
mov rbx, qword [rsp + 0x28]
mov rdx, qword [rsp + 0x78]
jmp 0x14041b747
je 0x14041cd8a
mov r14d, r10d
sal bp, 0xb0
mov r9, 0x88e4139
mov r8d, r13d
movsx r9d, bx
lea r11, [rdx + r14]
stc
dec ebp
mov ebp, r12d
jmp 0x14041b775
imul ebp, ebx
mov r9d, ebp
cmc
cmp r13b, 0x65
imul r9d, dword [rsp + 0x48]
stc
add r9, rsi
clc
cmc
imul ebp, dword [rsp + 0x70]
cmc
add rbp, rdx
cmp r15d, 0x13
jmp 0x14041b79e
jle 0x14041bb61
cmp r15d, 0x1b
mov ax, 0x5d11
movsxd rax, ecx
mov eax, dword [rsp + 0x24]
jmp 0x14041b7b8
jg 0x14041bc58
cmp r15d, 0x14
jmp 0x14041b7c7
je 0x14041bd75
cmp r15d, 0x19
jmp 0x14041b7d6
je 0x14041be19
cmp r15d, 0x1a
jmp 0x14041b7e5
jne 0x14041c1cf
test eax, eax
js 0x14041b706
mov ecx, dword [rsp + 0x24]
test ah, 0xe1
cmp ecx, 7
jmp 0x14041b802
jb 0x14041bab1
add r8, qword [rsp + 0xa0]
cbw
add rbp, qword [rsp + 0xb0]
rcl dh, 0x3c
shr esi, 0xdd
movsxd rdx, r15d
add r9, qword [rsp + 0xa8]
or rsi, r12
movzx rdi, r11w
xor ecx, ecx
shl sil, 0xdd
test r12b, 0x67
mov r14, qword [rsp + 0xb8]
cqo
bt rsi, 0x6b
nop
cdqe
inc di
movzx edi, byte [r8 - 0x15]
inc bx
movzx ebx, byte [r8 - 0xf]
movsx edx, si
and sil, 0x9b
movzx esi, byte [r8 - 9]
movzx eax, byte [r8 - 3]
btc dx, r14w
ror dh, cl
cmovnp rdx, r13
movzx edx, byte [r8 - 0xc]
stc
shl edx, 8
or edx, ebx
xchg rbx, rbx
bsr ebx, ebp
shrd bx, sp, 0xf3
movzx ebx, byte [r8 - 0x12]
cmp r14b, dil
shl ebx, 8
jmp 0x14041b8a5
or ebx, edi
movd xmm7, ebx
pinsrw xmm7, edx, 1
movzx edx, byte [r8]
test r15b, r9b
shl edx, 8
test r11b, 0x15
clc
or edx, eax
movzx eax, byte [r8 - 6]
shl eax, 8
test bl, sil
or eax, esi
jmp 0x14041b8d3
movd xmm2, eax
pinsrw xmm2, edx, 1
punpcklbw xmm2, xmm1
movzx eax, byte [r8 - 0x16]
bts rdi, rdi
shrd rdi, rcx, 0xa2
btr bx, r14w
movzx edx, byte [r8 - 0x10]
movzx esi, byte [r8 - 0xa]
sar bl, 0xde
movzx edi, byte [r8 - 4]
movzx rbx, r8w
sbb bh, 0x84
movzx ebx, byte [r8 - 0xd]
cmp bpl, 0xe4
shl ebx, 8
or ebx, edx
movzx edx, byte [r8 - 0x13]
shl edx, 8
clc
jmp 0x14041b92b
or edx, eax
jmp 0x14041b932
movd xmm5, edx
pinsrw xmm5, ebx, 1
movzx eax, byte [r8 - 1]
jmp 0x14041b949
shl eax, 8
or eax, edi
sal edx, 0x51
adc dl, 0x6e
shld rdx, rax, 0x34
movzx edx, byte [r8 - 7]
jmp 0x14041b96d
shl edx, 8
test r15, 0x23426a5f
test bpl, dil
or edx, esi
movd xmm6, edx
pinsrw xmm6, eax, 1
punpcklbw xmm7, xmm1
punpcklbw xmm6, xmm1
punpcklwd xmm6, xmm2
punpcklbw xmm5, xmm1
punpcklwd xmm5, xmm7
movzx eax, byte [r8 - 0x17]
movzx edx, byte [r8 - 0x11]
ror bx, 0x7f
rcl bh, 0xc2
sbb dil, bl
movzx esi, byte [r8 - 0xb]
stc
movzx edi, byte [r8 - 5]
movzx ebx, byte [r8 - 0xe]
test r11b, al
shl ebx, 8
or ebx, edx
rcr dx, cl
test r11d, r10d
movsx rdx, bx
movzx edx, byte [r8 - 0x14]
shl edx, 8
or edx, eax
jmp 0x14041b9de
movd xmm2, edx
pinsrw xmm2, ebx, 1
movzx eax, byte [r8 - 2]
shl eax, 8
xor dx, 0x2ea2
movsx dx, bh
movzx rdx, r12w
or eax, edi
shl dx, 0x6d
shrd edx, r15d, 0xd5
movzx edx, byte [r8 - 8]
test r15, 0x7c180d8b
cmp si, 0x520d
shl edx, 8
or edx, esi
jmp 0x14041ba22
movd xmm7, edx
pinsrw xmm7, eax, 1
punpcklbw xmm7, xmm1
punpcklwd xmm7, xmm1
punpcklbw xmm2, xmm1
punpcklwd xmm2, xmm1
pmaddwd xmm2, xmm8
pmaddwd xmm7, xmm8
pmaddwd xmm5, xmm3
paddd xmm5, xmm2
pmaddwd xmm6, xmm3
paddd xmm6, xmm7
psrld xmm5, 8
psrld xmm6, 8
pand xmm6, xmm4
pand xmm5, xmm4
packuswb xmm5, xmm6
packuswb xmm5, xmm5
punpcklbw xmm5, xmm0
movdqu xmmword [r11 + rcx*2], xmm5
add rcx, 8
stc
clc
add r8, 0x18
cmp sp, 0x25fe
clc
cmp r14, rcx
jmp 0x14041ba91
jne 0x14041b852
mov ecx, dword [rsp + 0x58]
jmp 0x14041baa1
cmp qword [rsp + 0x68], r14
jmp 0x14041baab
je 0x14041b706
inc ecx
add r9, 2
cmp r15w, 0xda8
shl al, cl
nop word cs:[rax + rax]
neg bx
xadd dx, bx
movzx eax, byte [r9]
movzx edx, byte [r9 - 1]
bsf bx, sp
shr edi, 0x86
movzx ebx, byte [r9 - 2]
shrd di, r15w, 0x86
movsx rdi, dx
imul edi, ebx, 0x4d
xor bl, r15b
test ax, r8w
imul edx, edx, 0x96
adc rbx, rdx
test r10b, 0x91
mov bx, ax
lea ebx, [rax + rax*8]
lea ebx, [rbx + rbx*2]
add ebx, eax
stc
test si, r13w
clc
add ebx, eax
cmp bpl, 0x8f
test sp, 0xf3b
add ebx, edx
add ebx, edi
test r11, 0x10b369ed
mov byte [rbp], bh
cmc
cmp r15b, spl
stc
mov byte [rbp + 1], 0xff
cmp bp, 0x6d5a
clc
add rbp, 2
dec ecx
clc
jmp 0x14041bb4c
add r9, 3
cmp r13b, 0x25
test ecx, ecx
jg 0x14041bad1
jmp 0x14041b706
lea rcx, [rsi + r8]
sub al, r13b
btc ax, cx
cmp r15d, 0xb
mov rax, 0x5b523ea1
setae al
mov eax, dword [rsp + 0x24]
jmp 0x14041bb83
jle 0x14041bcbb
cmp r15d, 0xc
jmp 0x14041bb92
je 0x14041be46
cmp r15d, 0x11
jmp 0x14041bba1
je 0x14041bfec
cmp r15d, 0x13
jmp 0x14041bbb0
jne 0x14041c1cf
test eax, eax
jmp 0x14041bbbd
js 0x14041b706
test byte [rsp + 0x28], 3
jmp 0x14041bbcd
je 0x14041c953
sub ebp, ebp
cwde
mov edx, dword [rsp + 0x24]
add bx, r11w
rcl ecx, 0xf7
mov ecx, edx
clc
dec bh
mov rbx, qword [rsp + 0xd0]
xor eax, 0x3b94350f
nop word cs:[rax + rax]
movzx eax, byte [r9]
cmc
cmp ebx, ecx
mov byte [r11 + rbp + 2], al
test di, 0x7864
cmp bpl, r14b
mov byte [r11 + rbp + 1], al
mov byte [r11 + rbp], al
cmp r9d, edx
add r9, 2
jmp 0x14041bc29
dec ecx
add rbp, 3
cmp ebx, ebp
jmp 0x14041bc36
jne 0x14041bc00
add r11, rbp
rcr bpl, 0xa1
mov rbp, r11
test r14b, 0x96
cmp edx, 3
jb 0x14041b706
jmp 0x14041c967
cmp r15d, 0x1c
jmp 0x14041bc61
je 0x14041c091
cmp r15d, 0x21
jmp 0x14041bc70
je 0x14041c0b9
cmp r15d, 0x22
jmp 0x14041bc7f
jne 0x14041c1cf
test eax, eax
jmp 0x14041bc8c
js 0x14041b706
test byte [rsp + 0x28], 1
jmp 0x14041bc9c
jne 0x14041c1ff
mov eax, dword [rsp + 0x24]
cmovp cx, dx
jmp 0x14041bcaf
mov ecx, eax
jmp 0x14041bcb6
jmp 0x14041c294
cmp r15d, 0xa
jmp 0x14041bcc4
je 0x14041c0e7
cmp r15d, 0xb
jmp 0x14041bcd3
jne 0x14041c1cf
test eax, eax
js 0x14041b706
test byte [rsp + 0x28], 3
jmp 0x14041bceb
je 0x14041ca2d
xor ebx, ebx
cmp r13b, 0xb0
ror edi, 0xa4
mov edx, dword [rsp + 0x24]
inc ax
rcr dil, cl
mov rdi, qword [rsp + 0x40]
cwde
nop
sar rax, cl
xadd ax, ax
movzx eax, byte [rcx + rbx]
cmp bx, sp
jmp 0x14041bd1f
mov byte [rbp + 2], al
mov byte [rbp + 1], al
test r15b, 0xa3
mov byte [rbp], al
stc
add rbp, 3
inc rbx
cmp edi, ebx
jmp 0x14041bd3b
jne 0x14041bd13
mov rax, qword [rsp + 0x38]
movsx rdi, r8w
movsx di, r8b
mov edi, eax
btc r9, 0x12
sub edi, ebx
bt r9d, ebx
add rcx, rbx
sar r9w, 0xf9
mov r9, rcx
cmp edx, 3
jb 0x14041b706
jmp 0x14041ca4b
test eax, eax
js 0x14041b706
test byte [rsp + 0x28], 3
jmp 0x14041bd87
je 0x14041caeb
xor edi, edi
seto cl
bswap rax
not rdx
mov edx, dword [rsp + 0x24]
movsx ecx, cx
mov rcx, qword [rsp + 0x40]
xchg ah, al
cwde
nop word cs:[rax + rax]
cdqe
movzx eax, si
mov al, 0x90
movzx eax, word [r9]
movd xmm2, eax
punpcklbw xmm2, xmm1
pshuflw xmm2, xmm2, 0x40
packuswb xmm2, xmm2
movd dword [rbp], xmm2
add r9, 2
add rbp, 4
jmp 0x14041bde2
inc rdi
cmp rbp, rbp
cmp ecx, edi
jne 0x14041bdbb
mov rax, qword [rsp + 0x38]
btr cx, bp
mov ecx, eax
cmp esp, r12d
cmc
clc
sub ecx, edi
test dil, 0x5b
cmp edx, 3
jmp 0x14041be0e
jb 0x14041b706
jmp 0x14041cb0d
test eax, eax
js 0x14041b706
test byte [rsp + 0x28], 1
jmp 0x14041be2b
jne 0x14041c3f0
mov eax, dword [rsp + 0x24]
not ch
mov ch, 0x85
mov ecx, eax
jmp 0x14041be41
jmp 0x14041c487
test eax, eax
jmp 0x14041be4d
js 0x14041b706
mov edx, dword [rsp + 0x24]
mov edi, edx
test r10b, sil
test byte [rsp + 0x28], 3
je 0x14041bf0c
sub ebx, ebx
bsr di, r9w
xor ebp, ebp
mov rdi, qword [rsp + 0x40]
not ah
cwde
bswap rax
nop dword [rax]
movzx ax, bpl
bswap eax
movzx eax, byte [rcx + rbp]
jmp 0x14041be8f
mov byte [r11 + rbp*4 + 2], al
jmp 0x14041be99
mov byte [r11 + rbp*4 + 1], al
jmp 0x14041bea3
mov byte [r11 + rbp*4], al
jmp 0x14041beac
mov byte [r11 + rbp*4 + 3], 0xff
jmp 0x14041beb7
inc rbp
add rbx, 0xfffffffffffffffc
stc
cmp edi, ebp
jmp 0x14041bec6
jne 0x14041be86
mov rax, qword [rsp + 0x38]
xchg r9b, r9b
rcr dil, 0x68
mov edi, eax
sar r9b, cl
dec r9w
cmp r9, r12
sub edi, ebp
bt r9, r13
sal r9b, cl
adc r9b, r13b
sub r11, rbx
add r9b, dl
xor r9b, sil
add rcx, rbp
neg r9b
mov rbp, r11
shl r9, cl
mov r9, rcx
cmp dh, 0xc3
stc
cmp edx, 3
jb 0x14041b706
add edi, 4
xor ecx, ecx
or eax, 0x3101790b
btr rax, r9
nop word cs:[rax + rax]
cmp r11, r15
rcl eax, 0xab
movzx eax, byte [r9 + rcx]
mov byte [rbp + rcx*4 + 2], al
cmp al, 0x64
test r15b, dil
mov byte [rbp + rcx*4 + 1], al
test r14b, 0x87
mov byte [rbp + rcx*4], al
mov byte [rbp + rcx*4 + 3], 0xff
rol rax, 0xf8
shrd ax, bp, 0x8c
movzx eax, byte [r9 + rcx + 1]
mov byte [rbp + rcx*4 + 6], al
cmc
mov byte [rbp + rcx*4 + 5], al
cmc
jmp 0x14041bf70
mov byte [rbp + rcx*4 + 4], al
btc ax, dx
cwde
mov byte [rbp + rcx*4 + 7], 0xff
cmp dil, sil
sal rax, 0xad
movzx eax, byte [r9 + rcx + 2]
mov byte [rbp + rcx*4 + 0xa], al
test sil, r13b
mov byte [rbp + rcx*4 + 9], al
cmp bl, 0x47
test spl, 0xae
mov byte [rbp + rcx*4 + 8], al
mov byte [rbp + rcx*4 + 0xb], 0xff
cbw
not rax
cdqe
movzx eax, byte [r9 + rcx + 3]
mov byte [rbp + rcx*4 + 0xe], al
test esp, r10d
mov byte [rbp + rcx*4 + 0xd], al
cmp dl, ch
stc
mov byte [rbp + rcx*4 + 0xc], al
clc
mov byte [rbp + rcx*4 + 0xf], 0xff
cmp r14b, r9b
add edi, 0xfffffffc
cmc
stc
add rcx, 4
cmc
clc
cmp edi, 3
jmp 0x14041bfe1
jg 0x14041bf33
jmp 0x14041b706
test eax, eax
js 0x14041b706
test byte [rsp + 0x28], 7
jmp 0x14041bffe
je 0x14041cbc7
xor ebp, ebp
ror ch, cl
movzx rcx, r14w
mov edx, dword [rsp + 0x24]
movzx cx, bh
cwde
mov rcx, qword [rsp + 0xd8]
cmovp eax, ebx
movsx rax, ax
nop dword [rax]
setnp ah
movzx eax, byte [r9]
cmp edx, 0x4f140395
mov byte [r11 + rbp], al
cmc
stc
test ecx, edx
add r9, 2
jmp 0x14041c045
inc rbp
jmp 0x14041c04d
cmp ecx, ebp
jmp 0x14041c054
jne 0x14041c02a
mov rax, qword [rsp + 0x38]
movsxd rcx, ebx
mov ecx, eax
clc
test r11b, 0x57
sub ecx, ebp
clc
lea r11, [r11 + rbp]
sbb bpl, 0x9f
shl bp, 0xfe
mov rbp, r11
cmp rsp, 0x4b11434b
clc
cmp edx, 7
jb 0x14041b706
jmp 0x14041cbe4
test eax, eax
js 0x14041b706
test byte [rsp + 0x28], 1
jmp 0x14041c0a3
jne 0x14041c5c8
mov eax, dword [rsp + 0x24]
mov ecx, eax
jmp 0x14041c0b4
jmp 0x14041c634
test eax, eax
jmp 0x14041c0c0
js 0x14041b706
test byte [rsp + 0x28], 1
jmp 0x14041c0d0
jne 0x14041c6d7
mov eax, dword [rsp + 0x24]
not cx
seto ch
mov ecx, eax
jmp 0x14041c769
test eax, eax
jmp 0x14041c0ee
js 0x14041b706
mov ecx, dword [rsp + 0x24]
clc
cmp ecx, 0xf
jmp 0x14041c101
jb 0x14041cd42
cmp qword [rsp + 0xc8], 0
jmp 0x14041c115
je 0x14041ccaf
add r14, qword [rsp + 0x90]
shrd edi, r12d, 0xd8
and edi, 0x795714ca
add r8, qword [rsp + 0x88]
shl rdi, 0x3c
mov rdi, qword [rsp + 0x98]
sub ecx, ecx
jmp 0x14041c149
nop word [rax + rax]
movq xmm2, qword [r8 + rcx - 0x18]
jmp 0x14041c15b
movq xmm5, qword [r8 + rcx - 0x10]
jmp 0x14041c167
punpcklbw xmm2, xmm0
movdqu xmmword [r14 + rcx*2 - 0x30], xmm2
jmp 0x14041c177
punpcklbw xmm5, xmm0
movdqu xmmword [r14 + rcx*2 - 0x20], xmm5
jmp 0x14041c187
movq xmm2, qword [r8 + rcx - 8]
jmp 0x14041c193
movq xmm5, qword [r8 + rcx]
jmp 0x14041c19e
punpcklbw xmm2, xmm0
movdqu xmmword [r14 + rcx*2 - 0x10], xmm2
punpcklbw xmm5, xmm0
movdqu xmmword [r14 + rcx*2], xmm5
add rcx, 0x20
cmp sil, r14b
cmc
add rdi, 0xfffffffffffffffe
jmp 0x14041c1c4
jne 0x14041c14f
jmp 0x14041ccb6
test eax, eax
jmp 0x14041c1d6
js 0x14041b706
test byte [rsp + 0x28], 1
jmp 0x14041c1e6
jne 0x14041c863
mov eax, dword [rsp + 0x24]
movzx ecx, dx
mov ecx, eax
jmp 0x14041c1fa
jmp 0x14041c8ab
movzx ebx, byte [r9 + 2]
rol al, cl
movzx ecx, byte [r9 + 1]
rol edi, 0xa1
mov r8b, 0xbd
xadd ax, di
movzx edi, byte [r9]
sar r8b, 0x4c
not r8w
imul r8d, edi, 0x4d
imul edi, ecx, 0x96
sar ah, cl
cmc
lea ecx, [rbx + rbx*8]
lahf
xchg al, al
lea ecx, [rcx + rcx*2]
btr eax, 0x5e
add ecx, ebx
add ecx, ebx
sbb ax, r12w
movsx ax, ah
movzx ax, bh
add ecx, edi
bsf ax, r11w
add ecx, r8d
xchg ah, al
mov byte [rbp], ch
movsx rax, di
movzx ecx, byte [r9 + 3]
sar eax, 0xb5
movzx eax, r15w
movzx ax, r12b
mov byte [rbp + 1], cl
adc cl, 0x79
rol cl, 0x7e
add r9, 4
shld cx, bx, 0xf6
add rbp, 2
setb ah
mov ecx, dword [rsp + 0x30]
rcr ax, 0x97
mov eax, dword [rsp + 0x24]
test eax, eax
jmp 0x14041c29b
je 0x14041b706
add ecx, 2
shrd esi, esp, 1
cmp sil, 0x91
sal al, cl
xor edi, edi
rol dx, 0xff
mov al, 0xd8
nop word cs:[rax + rax]
cmova dx, r8w
adc dx, 0x551e
test r10w, r13w
movzx eax, byte [r9 + rdi*2 + 2]
not dx
sub sil, r15b
bswap esi
movzx edx, byte [r9 + rdi*2 + 1]
sar bl, cl
btr si, 0x64
movsxd rbx, edx
movzx ebx, byte [r9 + rdi*2]
test r10d, r10d
cmc
imul esi, ebx, 0x4d
movsx bx, cl
bswap bx
movsx ebx, r14w
imul edx, edx, 0x96
not rbx
lea ebx, [rax + rax*8]
jmp 0x14041c318
lea ebx, [rbx + rbx*2]
cmp r11b, r13b
test ax, 0x46b3
add ebx, eax
stc
clc
add ebx, eax
btr rax, r15
sbb ah, 0x33
add ebx, edx
rcl dl, 0xc8
shl dh, 0x19
add ebx, esi
shl rsi, 0xce
sub edx, 0x52f26911
mov byte [rbp + rdi], bh
xchg esi, edx
xor dh, 0xb3
movzx eax, byte [r9 + rdi*2 + 3]
add bl, r14b
add bx, 0x2d90
bsr dx, r9w
mov byte [rbp + rdi + 1], al
cqo
mov dl, cl
clc
movzx eax, byte [r9 + rdi*2 + 6]
sub bl, bpl
add dh, bh
movzx edx, byte [r9 + rdi*2 + 5]
movzx ebx, byte [r9 + rdi*2 + 4]
add sil, 0xd8
imul esi, ebx, 0x4d
imul edx, edx, 0x96
lea ebx, [rax + rax*8]
cmp bx, r10w
cmp r10b, 0xf0
lea ebx, [rbx + rbx*2]
cmp dil, 0x5e
add ebx, eax
add ebx, eax
sal ax, cl
add ebx, edx
add al, dil
add ebx, esi
bswap ax
xor rax, 0x45850e75
shrd ax, r12w, 0x57
mov byte [rbp + rdi + 2], bh
movzx eax, byte [r9 + rdi*2 + 7]
stc
jmp 0x14041c3cc
mov byte [rbp + rdi + 3], al
jmp 0x14041c3d5
add ecx, 0xfffffffe
clc
add rdi, 4
cmp ecx, 1
jmp 0x14041c3e5
jg 0x14041c2d2
jmp 0x14041b706
movzx eax, byte [r9 + 2]
movzx ecx, byte [r9 + 1]
ror dh, 0x81
cqo
movzx edx, byte [r9]
cmp r13, 0xe45283b
imul edx, edx, 0x4d
or bh, 0x36
imul ebx, ecx, 0x96
adc ecx, 0x3ad72f85
sbb ch, 0xe0
lea ecx, [rax + rax*8]
jmp 0x14041c42d
lea ecx, [rcx + rcx*2]
test r9d, 0x4ddb5ddb
test edx, r13d
add ecx, eax
test cl, 0xd5
stc
cmp r14d, 0x3ee922c0
add ecx, eax
sar al, 0xf1
add ecx, ebx
bts rax, rbp
sar al, cl
ror rax, cl
add ecx, edx
btr ax, 0x9e
movsx rax, bp
ror eax, 0x56
mov byte [rbp], ch
add r9, 3
movsx cx, dl
inc rbp
cmovp cx, cx
mov ecx, dword [rsp + 0x30]
mov eax, dword [rsp + 0x24]
jmp 0x14041c487
test eax, eax
jmp 0x14041c48e
je 0x14041b706
add ecx, 2
movsx edi, r8w
movzx rdx, r11w
dec eax
add r9, 5
movsxd rax, esi
cdq
bsr ax, cx
nop word cs:[rax + rax]
rcl al, cl
dec ah
movzx eax, byte [r9 - 3]
movzx di, bl
bts dx, di
shr dx, 0xeb
movzx edx, byte [r9 - 4]
stc
sets dil
xor di, cx
movzx ebx, byte [r9 - 5]
cmova edi, r12d
clc
imul edi, ebx, 0x4d
rcl bx, 0xbd
shr ebx, 0x1a
imul edx, edx, 0x96
or bh, 0x8e
xor bx, 0x1929
lea ebx, [rax + rax*8]
clc
test r13w, 0xe9
cmp al, 0x90
lea ebx, [rbx + rbx*2]
clc
cmp rsi, r15
add ebx, eax
cmp sil, 0x5f
test ebx, ebp
add ebx, eax
sal ah, 4
lahf
rol rax, 0x1a
add ebx, edx
neg ax
add ebx, edi
clc
cdq
mov byte [rbp], bh
rcr dl, 0x55
cmp r15b, 0xd8
rcl bx, cl
movzx eax, byte [r9]
movzx edx, byte [r9 - 1]
shl bl, cl
bt di, 0xa9
movzx ebx, byte [r9 - 2]
movzx rdi, r11w
imul edi, ebx, 0x4d
movsx bx, r12b
add rbx, 0xfd906db
imul edx, edx, 0x96
rol bl, cl
sbb rbx, 0x329d7f76
rcr bl, cl
lea ebx, [rax + rax*8]
cmc
stc
lea ebx, [rbx + rbx*2]
cmp r13d, ecx
jmp 0x14041c581
add ebx, eax
add ebx, eax
cmp r9b, 0xd5
add ebx, edx
stc
add ebx, edi
test r12b, r15b
jmp 0x14041c599
mov byte [rbp + 1], bh
cmc
cmp edi, 0x4f832683
add rbp, 2
cmp ax, 0x35ec
test eax, 0x513d15e6
add ecx, 0xfffffffe
add r9, 6
cmp dl, 0x54
cmp ecx, 1
jg 0x14041c4bd
jmp 0x14041b706
movzx eax, byte [r9]
rol ecx, 0xe8
cmp r9b, r10b
sar ch, cl
mov byte [rbp], al
cmovge cx, dx
cdqe
bsf cx, r10w
movzx eax, byte [r9 + 1]
mov byte [rbp + 1], al
cmc
btc ecx, r11d
movzx eax, byte [r9 + 2]
sar cx, cl
cmp bx, 0xf67
mov byte [rbp + 2], al
rcr cx, cl
bt ax, r10w
rol cl, 0xcc
mov byte [rbp + 3], 0xff
add r9, 3
cdqe
rcr cl, 0x14
and cl, 0x47
add rbp, 4
mov ecx, dword [rsp + 0x30]
mov ah, 0xdf
mov eax, dword [rsp + 0x24]
cmp r12b, 0x8b
test r10w, 0x3913
stc
test eax, eax
je 0x14041b706
add ecx, 2
nop dword [rax]
rol ah, cl
movzx eax, byte [r9]
test esi, r9d
cmc
stc
mov byte [rbp], al
movzx eax, byte [r9 + 1]
cmp r14b, sil
mov byte [rbp + 1], al
rcl ax, 0x1a
setno ah
movzx eax, byte [r9 + 2]
cmp r9d, 0x67b7e60
mov byte [rbp + 2], al
bt ax, r12w
mov byte [rbp + 3], 0xff
cwde
add al, r13b
test r13b, spl
movzx eax, byte [r9 + 3]
cmp sil, r9b
mov byte [rbp + 4], al
cmp dl, 0x64
movzx eax, byte [r9 + 4]
test sil, sil
mov byte [rbp + 5], al
movzx eax, byte [r9 + 5]
clc
cmp bpl, 0x89
cmp r8b, bl
mov byte [rbp + 6], al
mov byte [rbp + 7], 0xff
add r9, 6
stc
cmp r14b, 0xe4
add rbp, 8
jmp 0x14041c6c1
add ecx, 0xfffffffe
cmp ecx, 1
jmp 0x14041c6cc
jg 0x14041c645
jmp 0x14041b706
movzx ebx, byte [r9 + 2]
sar di, cl
shr dil, cl
movzx ecx, byte [r9 + 1]
movzx edi, byte [r9]
clc
imul r8d, edi, 0x4d
dec dil
sar di, cl
imul edi, ecx, 0x96
bswap eax
sal ch, 0xb3
lea ecx, [rbx + rbx*8]
shl ax, 0xf6
cmc
jmp 0x14041c70e
lea ecx, [rcx + rcx*2]
ror al, cl
adc rax, 0x52083f2d
add ecx, ebx
sbb al, r14b
sbb rax, 0x76df5359
add ecx, ebx
add ecx, edi
cbw
btc eax, 0x3b
sbb rax, rsi
add ecx, r8d
xadd al, ah
mov byte [rbp], ch
sub eax, 0x28f5403e
movzx eax, bx
rcr rax, 0x74
add r9, 4
inc rbp
ror ch, 0xec
mov ecx, dword [rsp + 0x30]
cbw
movsx rax, r14w
bt rax, rsi
mov eax, dword [rsp + 0x24]
jmp 0x14041c769
test eax, eax
je 0x14041b706
add ecx, 2
lahf
sub ax, si
not ax
xor edi, edi
adc rbx, 0x4c466f59
nop word cs:[rax + rax]
movzx ebx, r13w
movzx eax, byte [r9 + rdi*4 + 2]
cmc
movzx edx, byte [r9 + rdi*4 + 1]
sub bh, 0
movzx ebx, byte [r9 + rdi*4]
cmp rbx, r13
imul esi, ebx, 0x4d
or bx, sp
imul edx, edx, 0x96
btr bx, dx
lea ebx, [rax + rax*8]
jmp 0x14041c7c6
lea ebx, [rbx + rbx*2]
add ebx, eax
jmp 0x14041c7d1
add ebx, eax
bsf ax, cx
shrd eax, ebx, 0x31
add ebx, edx
rcl dh, 0x25
add ebx, esi
mov byte [rbp + rdi], bh
rcr eax, 0xd6
bts eax, edx
xchg edx, eax
movzx eax, byte [r9 + rdi*4 + 6]
shr si, 0x3e
sal bl, cl
xor sil, bl
movzx edx, byte [r9 + rdi*4 + 5]
movzx ebx, byte [r9 + rdi*4 + 4]
sar si, 6
mov esi, esi
or sil, dil
imul esi, ebx, 0x4d
rcr bl, cl
imul edx, edx, 0x96
xor bx, 0x77a2
lea ebx, [rax + rax*8]
cmc
lea ebx, [rbx + rbx*2]
stc
add ebx, eax
test r15b, 0x9a
add ebx, eax
jmp 0x14041c837
add ebx, edx
add ebx, esi
mov byte [rbp + rdi + 1], bh
test ax, r13w
test r14w, 0x59e1
add ecx, 0xfffffffe
add rdi, 2
cmp ecx, 1
jmp 0x14041c858
jg 0x14041c796
jmp 0x14041b706
movzx ecx, byte [r9]
lahf
ror ah, 0xa6
mov byte [rbp], cl
bt cx, 2
shl ax, 0xf5
bswap rcx
movzx ecx, byte [r9 + 1]
xor al, spl
mov byte [rbp + 1], cl
movzx ecx, byte [r9 + 2]
mov byte [rbp + 2], cl
sbb cl, ch
sal cl, cl
add r9, 4
btc cx, di
bsr ax, r8w
cmc
add rbp, 3
mov ecx, dword [rsp + 0x30]
mov eax, dword [rsp + 0x24]
test eax, eax
jmp 0x14041c8b2
je 0x14041b706
add ecx, 2
shld eax, r10d, 0x21
nop dword [rax]
movzx rax, bp
movzx eax, byte [r9]
mov byte [rbp], al
movzx eax, byte [r9 + 1]
test ah, 0xca
test bpl, dil
cmc
mov byte [rbp + 1], al
btc eax, 0x16
sar al, cl
movzx eax, byte [r9 + 2]
cmp r14w, di
test r13w, 0x2f09
mov byte [rbp + 2], al
cmovnp eax, r8d
movzx eax, byte [r9 + 4]
stc
test r12w, 0x3659
mov byte [rbp + 3], al
adc ah, 0x33
movzx eax, byte [r9 + 5]
cmp cl, 0x5c
mov byte [rbp + 4], al
movsx eax, ax
movzx eax, byte [r9 + 6]
stc
mov byte [rbp + 5], al
clc
cmp rbx, 0x2a7f5ded
stc
add r9, 8
stc
add rbp, 6
stc
cmp r15b, sil
test bh, 0x40
add ecx, 0xfffffffe
cmc
cmp ecx, 1
jmp 0x14041c948
jg 0x14041c8c8
jmp 0x14041b706
mov edx, dword [rsp + 0x24]
mov ecx, edx
cmp edx, 3
jmp 0x14041c961
jb 0x14041b706
add ecx, 4
add rbp, 0xb
movzx rax, r15w
cmc
neg ax
nop word [rax + rax]
adc eax, 0x7fac2d07
sal ax, 0x2c
movzx eax, byte [r9]
mov byte [rbp - 9], al
jmp 0x14041c998
mov byte [rbp - 0xa], al
mov byte [rbp - 0xb], al
lahf
btr eax, 0x77
sets ah
movzx eax, byte [r9 + 2]
mov byte [rbp - 6], al
cmp bpl, bpl
jmp 0x14041c9b6
mov byte [rbp - 7], al
clc
jmp 0x14041c9bf
mov byte [rbp - 8], al
sar al, 0x55
movzx eax, byte [r9 + 4]
mov byte [rbp - 3], al
cmc
test r11b, r14b
mov byte [rbp - 4], al
mov byte [rbp - 5], al
shl al, cl
movzx rax, bx
adc rax, 0x1af91ff3
movzx eax, byte [r9 + 6]
mov byte [rbp], al
clc
jmp 0x14041c9f2
mov byte [rbp - 1], al
test bl, r9b
cmc
mov byte [rbp - 2], al
jmp 0x14041ca01
add r9, 8
test rsp, rsi
cmp cx, 0x2c49
test cl, 1
add ecx, 0xfffffffc
add rbp, 0xc
cmp cl, r10b
cmp ecx, 3
jmp 0x14041ca22
jg 0x14041c985
jmp 0x14041b706
mov edx, dword [rsp + 0x24]
bswap edi
btc edi, r9d
mov edi, edx
cmp cl, bl
cmc
clc
cmp edx, 3
jmp 0x14041ca45
jb 0x14041b706
add edi, 4
add rbp, 0xb
shl eax, cl
cmp bpl, r15b
nop word cs:[rax + rax]
setne ah
movzx eax, byte [r9]
test r12b, 0xc1
cmp rsp, r15
mov byte [rbp - 9], al
mov byte [rbp - 0xa], al
clc
mov byte [rbp - 0xb], al
ror al, 0xb9
movzx eax, byte [r9 + 1]
clc
test bh, dl
mov byte [rbp - 6], al
test sp, ax
clc
mov byte [rbp - 7], al
clc
mov byte [rbp - 8], al
bts ax, si
sub ax, 0x3073
movzx eax, byte [r9 + 2]
stc
cmp r11b, r14b
mov byte [rbp - 3], al
mov byte [rbp - 4], al
mov byte [rbp - 5], al
sal ah, cl
cmovae eax, eax
movzx eax, byte [r9 + 3]
clc
stc
mov byte [rbp], al
cmp r15w, 0x3d2e
clc
mov byte [rbp - 1], al
mov byte [rbp - 2], al
add r9, 4
clc
add edi, 0xfffffffc
add rbp, 0xc
cmp edi, 3
jmp 0x14041cae0
jg 0x14041ca68
jmp 0x14041b706
mov edx, dword [rsp + 0x24]
dec ecx
cmp sp, 0x8f6
mov ecx, edx
stc
cmp r14w, 0x5c82
cmp edx, 3
jmp 0x14041cb07
jb 0x14041b706
add ecx, 4
rcl ax, 0x12
stc
rol ax, 0xfa
sub edi, edi
movzx eax, word [r9 + rdi]
jmp 0x14041cb25
movd xmm2, eax
punpcklbw xmm2, xmm1
pshuflw xmm2, xmm2, 0x40
packuswb xmm2, xmm2
movd dword [rbp + rdi*2], xmm2
movzx eax, word [r9 + rdi + 2]
jmp 0x14041cb47
movd xmm2, eax
punpcklbw xmm2, xmm1
pshuflw xmm2, xmm2, 0x40
packuswb xmm2, xmm2
movd dword [rbp + rdi*2 + 4], xmm2
movzx eax, word [r9 + rdi + 4]
jmp 0x14041cb69
movd xmm2, eax
punpcklbw xmm2, xmm1
pshuflw xmm2, xmm2, 0x40
packuswb xmm2, xmm2
movd dword [rbp + rdi*2 + 8], xmm2
movzx eax, word [r9 + rdi + 6]
jmp 0x14041cb8b
movd xmm2, eax
punpcklbw xmm2, xmm1
pshuflw xmm2, xmm2, 0x40
packuswb xmm2, xmm2
movd dword [rbp + rdi*2 + 0xc], xmm2
add ecx, 0xfffffffc
clc
jmp 0x14041cbab
add rdi, 8
jmp 0x14041cbb4
cmp ecx, 3
jmp 0x14041cbbc
jg 0x14041cb1b
jmp 0x14041b706
mov edx, dword [rsp + 0x24]
xor cx, 0x2fd1
mov cl, r11b
mov ecx, edx
cmc
jmp 0x14041cbdb
cmp edx, 7
jb 0x14041b706
add ecx, 8
sete al
cbw
sub edi, edi
sar ax, 0x1d
bswap ax
nop dword [rax + rax]
shld rax, r8, 0xcf
ror ax, 0x28
inc ax
movzx eax, byte [r9 + rdi*2]
cmc
mov byte [rbp + rdi], al
movzx eax, byte [r9 + rdi*2 + 2]
mov byte [rbp + rdi + 1], al
bts ax, bp
movzx eax, byte [r9 + rdi*2 + 4]
cmp bx, 0x316e
cmc
mov byte [rbp + rdi + 2], al
movzx eax, byte [r9 + rdi*2 + 6]
cmp rbp, rbx
cmp bh, 0xb9
clc
mov byte [rbp + rdi + 3], al
lahf
neg ax
movzx eax, byte [r9 + rdi*2 + 8]
cmc
mov byte [rbp + rdi + 4], al
adc eax, 0x388b29c5
movsx rax, r13w
test dil, 0xbb
movzx eax, byte [r9 + rdi*2 + 0xa]
mov byte [rbp + rdi + 5], al
movzx eax, bx
movzx eax, byte [r9 + rdi*2 + 0xc]
mov byte [rbp + rdi + 6], al
bt ax, 0x78
movzx eax, byte [r9 + rdi*2 + 0xe]
jmp 0x14041cc89
mov byte [rbp + rdi + 7], al
test cx, 0x83b
test sil, bpl
add ecx, 0xfffffff8
clc
test bl, spl
add rdi, 8
stc
cmp ecx, 7
jg 0x14041cc09
jmp 0x14041b706
xor ecx, ecx
stc
test r15, rdi
clc
test byte [rsp + 0xc0], 1
jmp 0x14041ccc3
je 0x14041cd07
lea rax, [rcx + rcx]
stc
or rax, 0x10
jmp 0x14041ccd7
movq xmm2, qword [r9 + rcx]
jmp 0x14041cce2
movq xmm5, qword [r9 + rcx + 8]
jmp 0x14041ccee
punpcklbw xmm2, xmm0
movdqu xmmword [rbp + rcx*2], xmm2
punpcklbw xmm5, xmm0
movdqu xmmword [rbp + rax], xmm5
shld ax, bp, 0x68
mov rax, qword [rsp + 0x60]
cmc
stc
cmp qword [rsp + 0x68], rax
jmp 0x14041cd18
je 0x14041b706
add rbp, qword [rsp + 0x80]
mov cx, 0x73c0
add r9, qword [rsp + 0x60]
xchg cx, ax
movzx rcx, ax
movsxd rcx, esp
mov ecx, dword [rsp + 0x54]
bswap rax
mov ah, 0x67
inc ecx
rcl ax, 0x6f
xchg al, ah
setp al
xor ebx, ebx
nop word [rax + rax]
movzx eax, byte [r9 + rbx]
jmp 0x14041cd5f
mov byte [rbp + rbx*2], al
mov byte [rbp + rbx*2 + 1], 0xff
jmp 0x14041cd6d
dec ecx
jmp 0x14041cd74
inc rbx
clc
test ecx, ecx
jmp 0x14041cd7f
jg 0x14041cd55
jmp 0x14041b706
mov rcx, rsi
jmp 0x14041cd92
call fcn.140234d6a
mov rax, qword [rsp + 0x78]
jmp 0x14041cda1
jmp 0x14041cdd2
mov rcx, rsi
movsx esi, r13w
xchg sil, sil
jmp 0x14041cdb5
mov rsi, rdx
call fcn.140234d6a
mov rcx, rsi
jmp 0x14041cdc5
call fcn.140234d6a
sub eax, eax
sub r12d, r11d
ror ebp, 0x24
movaps xmm6, xmmword [rsp + 0xf0]
btr si, r12w
movaps xmm7, xmmword [rsp + 0x100]
movaps xmm8, xmmword [rsp + 0x110]
add rsp, 0x128
movzx r14d, r11w
sets bh
movsx r12d, r11w
pop rbx
pop rbp
setae dil
mov rdi, 0x4858777e
not sil
pop rdi
movzx r12d, cx
movzx r12w, bpl
bswap esi
pop rsi
movzx r15, si
pop r12
not r15b
movzx r15, r11w
jmp 0x14041ce31
pop r13
pop r14
mov r15b, 0xb2
jmp 0x14041ce40
pop r15
jmp 0x14041ce47
ret