Function at 0x14041731f
Capabilities:
Encrypt data using speck

Disassembly:
push r15
mov r15b, 0xfc
push r14
bt r15d, esp
sar r15b, 0x9d
push r13
sal r14d, cl
push r12
movsx r13w, bl
push rsi
stc
push rdi
push rbp
cmp r14b, 0x17
push rbx
or sil, 0xe0
test r9, 0x37c26ab
ror r15b, cl
sub rsp, 0x508
mov r14, r9
movsx rdi, r9w
movzx r13, r14w
mov r13, r8
movzx r15w, dil
mov r15, rdx
mov rsi, rcx
lea rdi, [rsp + 0x100]
movsx dx, bh
movsx edx, r9w
mov rdx, rdi
jmp 0x140417389
call fcn.140432517
movabs rax, 0xc71db68d14c0d1ae
mov qword [rsp + 0x60], rax
mov r12b, 0x48
xchg al, bpl
movabs rax, 0x7948a97c69c4e309
not bx
xchg r12w, bp
mov qword [rsp + 0x68], rax
movabs rbx, 0x895cffc95592ee8d
xchg r12b, al
mov qword [rsp + 0x90], rbx
movabs rbp, 0x7948a97c69c4a64a
mov qword [rsp + 0x98], rbp
mov r12b, r12b
movsxd rax, ebx
lea r12, [rsp + 0x90]
movsx ax, r15b
movsxd rax, ebx
seto ah
mov rax, r12
jmp 0x140417401
movaps xmm0, xmmword [rsp + 0x60]
xorps xmm0, xmmword [rax]
movaps xmmword [rsp + 0x60], xmm0
movzx ecx, r15w
cdq
lea rdx, [rsp + 0x60]
movzx rcx, bp
xchg cl, cl
movsx ecx, r14w
mov rcx, rdi
jmp 0x14041742a
call fcn.1404b7b25
test eax, eax
jmp 0x140417436
je 0x1404174d0
movabs rax, 0x895cba8b12c0d1ae
mov qword [rsp + 0xc0], rax
cbw
movzx rax, sp
sete al
mov qword [rsp + 0xc8], rbp
bswap eax
not al
lahf
mov qword [rsp + 0x90], rbx
mov qword [rsp + 0x98], rbp
movsx ax, dil
jmp 0x14041747e
mov rax, r12
jmp 0x140417486
movaps xmm0, xmmword [rsp + 0xc0]
jmp 0x140417493
xorps xmm0, xmmword [rax]
movaps xmmword [rsp + 0xc0], xmm0
mov rcx, rbp
lea rcx, [rsp + 0x100]
not dx
cmovne dx, r11w
lea rdx, [rsp + 0xc0]
jmp 0x1404174be
call fcn.1404b7b25
test eax, eax
jmp 0x1404174ca
jne 0x1404177ae
mov qword [rsp + 0x38], rbp
lea rdx, [rsp + 0x100]
mov rcx, rsi
jmp 0x1404174e5
call fcn.140432517
xor edi, edi
test dl, 0x5b
cmp byte [rsp + 0x100], 0
jmp 0x1404174fc
je 0x1404177bb
mov qword [rsp + 0x88], r15
mov qword [rsp + 0x30], r13
bt ebp, 0x21
cmovle eax, edi
mov qword [rsp + 0x58], r14
not r13b
stc
or dil, 0x7d
movabs rax, 0xba61ab8818c0a1cb
mov qword [rsp + 0x50], rax
and r14, 0x17335689
and r14b, r9b
mov qword [rsp + 0xb8], rsi
rcl si, cl
shr r13b, cl
movabs rax, 0x153af60800a68b78
mov qword [rsp + 0x40], rax
neg r14d
movabs rdi, 0xa046b1f128fb83ba
movabs rbp, 0x732e7f26e9ca6e1c
adc si, r8w
cdqe
sub r15d, r15d
not rax
cbw
mov r14, rbx
movzx eax, r11w
cdqe
movabs r13, 0xa046d4934f89dcdf
cmovns si, ax
movsxd rbx, esi
lea rbx, [rsp + 0x100]
cwde
mov rsi, qword [rsp + 0x38]
movsxd rax, ecx
movsx ax, r12b
cwde
nop word cs:[rax + rax]
movsx rax, r14w
cbw
movzx ax, r12b
mov rax, qword [rsp + 0x50]
mov qword [rsp + 0x60], rax
mov rax, qword [rsp + 0x40]
jmp 0x1404175d9
mov qword [rsp + 0x68], rax
mov qword [rsp + 0x70], rdi
jmp 0x1404175e8
mov qword [rsp + 0x78], rbp
mov qword [rsp + 0x90], r14
jmp 0x1404175fa
mov qword [rsp + 0x98], rsi
jmp 0x140417607
mov qword [rsp + 0xa0], r13
jmp 0x140417614
mov qword [rsp + 0xa8], rbp
jmp 0x140417621
movaps xmm0, xmmword [rsp + 0x60]
jmp 0x14041762b
xorps xmm0, xmmword [r12]
movaps xmmword [rsp + 0x60], xmm0
movaps xmm0, xmmword [rsp + 0x70]
jmp 0x14041763f
xorps xmm0, xmmword [r12 + 0x10]
movaps xmmword [rsp + 0x70], xmm0
mov rcx, rbx
movzx dx, spl
cqo
lea rdx, [rsp + 0x60]
call fcn.1404b7b25
test eax, eax
mov eax, 1
movzx ecx, cx
movsx edx, r8w
movsx rdx, r13w
cmove r15d, eax
mov rcx, qword [rsp + 0xb8]
not rdx
mov rdx, rbx
call fcn.140432517
cmp byte [rsp + 0x100], 0
jmp 0x140417694
jne 0x1404175c5
mov r14, qword [rsp + 0xb8]
test r15d, r15d
jmp 0x1404176aa
je 0x1404177ae
lea rdx, [rsp + 0x100]
mov rsi, r14
cmovs ecx, esp
movzx rcx, r14w
mov rcx, r14
jmp 0x1404176ca
call fcn.140432517
mov eax, 0x592d
setne ch
ror ecx, cl
xor eax, dword [rsp + 0x100]
bt cx, cx
neg cl
movzx ecx, byte [rsp + 0x102]
test rbp, r13
stc
xor ecx, 0x20
jmp 0x1404176fe
or cx, ax
jmp 0x140417706
jne 0x1404177ae
lea rcx, [rsp + 0x103]
movzx r8, bp
mov qword [rsp + 0x90], rcx
jmp 0x140417725
lea rdx, [rsp + 0x90]
mov r8d, 0xa
jmp 0x140417738
call fcn.1404bf755
mov ebx, eax
dec bpl
movzx rbp, r12w
setne bpl
mov rbp, qword [rsp + 0x90]
dec rbp
jmp 0x14041775c
nop word cs:[rax + rax]
cmp byte [rbp + 1], 0x20
lea rbp, [rbp + 1]
jmp 0x140417776
je 0x140417769
lea rdx, [0x1400ceb07]
movsx r8d, r9w
movzx cx, r11b
mov r8d, 3
movsx rcx, r9w
bswap cx
mov rcx, rbp
jmp 0x1404177a1
call fcn.1404b846d
test eax, eax
je 0x14041780e
sub edi, edi
sal bpl, 0xfa
setns al
movsx r13d, r13w
mov rax, rdi
btr ebx, r13d
add rsp, 0x508
not r13b
movsx si, r11b
pop rbx
pop rbp
pop rdi
movzx r12, di
not rsi
movsxd r12, ebp
pop rsi
cmovp r15, r15
pop r12
movzx r15d, r12w
jmp 0x1404177f2
pop r13
movzx r14, si
mov r15w, 0x22e8
movsx r14d, r14w
pop r14
bswap r15
pop r15
jmp 0x14041780d
ret
add rbp, 3
mov qword [rsp + 0x90], rbp
btr r8, 0x7a
sub edi, edi
btc r8w, 0x1a
xor r8w, cx
bts cx, r8w
mov rcx, rbp
rcr r8w, 0x6e
test bh, 0xf9
rcr r8b, cl
xor edx, edx
cmovbe r8, rbp
mov r8d, 0xa
jmp 0x14041784f
call fcn.1404bf755
cmp ebx, 0x1000000
jmp 0x14041785f
jg 0x1404177bb
mov ebp, eax
cmp eax, 0x1000000
jmp 0x140417871
jg 0x1404177bb
mov rax, qword [rsp + 0x88]
clc
cmp r15, r10
mov dword [rax], ebp
bts rax, r8
mov rax, qword [rsp + 0x30]
mov dword [rax], ebx
mov rax, qword [rsp + 0x58]
test r15, 0x13ab25b3
test cx, sp
test rax, rax
jmp 0x1404178a7
je 0x1404178ba
mov dword [rax], 3
rcr eax, cl
or cx, 0x9c8
mov ecx, dword [rsp + 0x570]
test ecx, ecx
movsxd rax, ebx
mov ax, 0x4bfc
cmova ax, r13w
mov eax, 3
cmovne eax, ecx
test r13d, ebx
test bp, 0xf2
cmc
mov dword [rsp + 0x40], eax
adc ax, 0x7946
ror ah, 0xea
mov eax, ebp
cmc
test r15b, 0xbc
cmp r9b, r14b
or eax, ebx
jmp 0x1404178fc
js 0x1404177ae
test ebx, ebx
jmp 0x140417909
je 0x140417938
xor edi, edi
cdqe
rcr al, 0xa1
mov eax, 0x7fffffff
jmp 0x140417922
sub edx, edx
idiv ebx
cmc
cmp r9w, bp
cmp eax, ebp
jmp 0x140417932
jl 0x1404177bb
mov ecx, ebp
btc ax, dx
imul ecx, ebx
mov eax, ecx
movsx r8, dx
mov r8d, dword [rsp + 0x40]
cmp bpl, 0x53
sub edi, edi
or eax, r8d
jmp 0x14041795a
js 0x1404177bb
mov eax, 0x7fffffff
stc
sub edx, edx
cmc
idiv r8d
clc
cmp r13d, ebx
cmp eax, ecx
jl 0x1404177bb
imul ecx, r8d
cmp ecx, 0x1fffffff
ja 0x1404177bb
mov ecx, ebp
sets r9b
mov edx, ebx
mov r9d, 4
call fcn.14027bfea
xor r15d, r15d
jmp 0x1404179a6
test rax, rax
jmp 0x1404179ae
je 0x1404177ae
mov rdi, rax
movsxd rax, ebp
sar al, 0xc0
mov dword [rsp + 0x58], ebx
sal bx, cl
btr bx, 0x79
setg bh
lea eax, [rbp - 0x8000]
movzx bx, spl
test dl, r10b
cmp eax, 0xffff8008
mov qword [rsp + 0x50], rbp
mov bx, bp
mov ebx, dword [rsp + 0x40]
jmp 0x1404179f0
jb 0x1404186f1
mov eax, dword [rsp + 0x58]
cmc
test eax, eax
jmp 0x140417a02
jle 0x1404177bb
lea r12, [rsi + 0x38]
stc
lea rcx, [rsi + 0x39]
cmp r12b, 0xa6
clc
stc
mov qword [rsp + 0x30], rcx
and ch, 0xa5
lea ecx, [rbp*4]
mov qword [rsp + 0xf8], rcx
rcr cl, 0x6f
rol ch, cl
movsxd rcx, ebx
jmp 0x140417a3b
mov ebp, ebp
cmp bp, 0x4136
stc
cmp al, dh
mov eax, eax
jmp 0x140417a50
mov qword [rsp + 0xd8], rax
shl eax, cl
bts eax, r10d
bts rax, rbp
mov rax, rcx
cmp sil, 0x19
imul rax, rbp
stc
jmp 0x140417a73
shl rax, 2
cmp r15b, r10b
test r8b, spl
jmp 0x140417a82
mov qword [rsp + 0xd0], rax
shl rcx, 2
mov qword [rsp + 0xe8], rcx
shl rbp, 2
xor edx, edx
sbb al, dh
mov qword [rsp + 0x48], rdi
btc cx, 0x14
test r12d, r12d
sbb cl, spl
mov qword [rsp + 0x80], rdi
xor cl, spl
sub r13d, r13d
mov qword [rsp + 0xe0], rbp
movsxd rcx, edi
shr ah, cl
movsx rax, r9w
mov rcx, qword [rsi + 0xc0]
adc al, r13b
xadd ah, al
rcl ah, cl
mov rax, qword [rsi + 0xc8]
stc
test r8b, r14b
cmp rcx, rax
jmp 0x140417aef
mov qword [rsp + 0xf0], rdx
jae 0x140417b32
lea rdx, [rcx + 1]
mov bl, pe_nt_image_headers64
movsx rbx, r8w
movzx bx, spl
mov qword [rsi + 0xc0], rdx
movzx ebx, byte [rcx]
mov edi, 0x31f34b58
mov rcx, rdx
jmp 0x140417b23
mov rdi, qword [rsp + 0x30]
jmp 0x140417b2d
jmp 0x140417bf9
cmp dword [rsi + 0x30], 0
mov dil, r14b
mov rdi, qword [rsp + 0x30]
jmp 0x140417b43
je 0x140417baf
mov r8d, dword [rsi + 0x34]
movzx edx, r12w
mov rcx, qword [rsi + 0x28]
bswap edx
mov rdx, r12
jmp 0x140417b5f
call qword [rsi + 0x10]
mov ecx, dword [rsi + 0xc0]
test r10b, r14b
stc
test rdx, 0x7879116f
sub ecx, dword [rsi + 0xd0]
add dword [rsi + 0xb8], ecx
test dx, ax
test dx, 0x1312
test eax, eax
je 0x140417bb6
cdqe
or rbx, 0x53b02ff7
add rbx, 0x5d450cca
add rax, r12
bswap bx
movzx ebx, byte [r12]
jmp 0x140417be0
sub ebx, ebx
jmp 0x140417bf9
mov dword [rsi + 0x30], 0
test r15, rax
sar ax, 0x48
mov byte [rsi + 0x38], 0
xor ebx, ebx
test r11w, 0x963
bsf cx, sp
inc cl
mov rax, rdi
bts cx, ax
sal ecx, 0x93
mov qword [rsi + 0xc8], rax
bsr ecx, r15d
mov qword [rsi + 0xc0], rdi
mov rcx, rdi
stc
cmp r14d, r15d
cmp rcx, rax
jmp 0x140417c01
jae 0x140417c3a
lea rdx, [rcx + 1]
setae bpl
movsx rbp, cx
movzx rbp, si
mov qword [rsi + 0xc0], rdx
movzx ebp, byte [rcx]
movzx cx, spl
movzx rcx, cx
movsx ecx, dx
mov rcx, rdx
jmp 0x140417c35
jmp 0x140417cee
cmp dword [rsi + 0x30], 0
jmp 0x140417c43
je 0x140417c9f
mov r8d, dword [rsi + 0x34]
not dh
bswap dx
movsx ecx, bp
mov rcx, qword [rsi + 0x28]
mov rdx, r12
jmp 0x140417c61
call qword [rsi + 0x10]
mov ecx, dword [rsi + 0xc0]
sub ecx, dword [rsi + 0xd0]
cmp r10b, 0xe1
add dword [rsi + 0xb8], ecx
cmc
stc
test eax, eax
jmp 0x140417c83
je 0x140417cab
cdqe
add rax, r12
not ebp
movzx ebp, byte [r12]
jmp 0x140417c9a
jmp 0x140417cca
sub ebp, ebp
jmp 0x140417ca6
jmp 0x140417cee
mov dword [rsi + 0x30], 0
clc
neg rcx
mov byte [rsi + 0x38], 0
xor ebp, ebp
cmovp rax, rbx
mov rax, rdi
and cl, 0x63
inc cl
xchg ecx, ecx
mov qword [rsi + 0xc8], rax
rol cl, cl
stc
rcr cx, 0x7d
mov qword [rsi + 0xc0], rdi
inc cx
bswap cx
movsx cx, r11b
mov rcx, rdi
clc
cmp rcx, rax
jae 0x140417d31
lea rdi, [rcx + 1]
cdq
xchg edx, edx
jmp 0x140417d03
mov qword [rsi + 0xc0], rdi
not dl
cwd
xchg dx, dx
movzx edx, byte [rcx]
setl ch
movzx cx, dh
mov rcx, rdi
movsx di, bl
mov rdi, qword [rsp + 0x30]
jmp 0x140417d2c
jmp 0x140417ddb
cmp dword [rsi + 0x30], 0
jmp 0x140417d3a
je 0x140417d9b
mov r8d, dword [rsi + 0x34]
mov rcx, qword [rsi + 0x28]
cwd
jmp 0x140417d54
mov rdx, r12
call qword [rsi + 0x10]
mov ecx, dword [rsi + 0xc0]
sub ecx, dword [rsi + 0xd0]
add dword [rsi + 0xb8], ecx
test eax, eax
jmp 0x140417d73
je 0x140417da7
cdqe
movzx rdx, di
btc rdx, 0x57
bsf dx, r13w
add rax, r12
movsx dx, r15b
movzx edx, byte [r12]
jmp 0x140417dc2
sub edx, edx
jmp 0x140417da2
jmp 0x140417ddb
mov dword [rsi + 0x30], 0
jmp 0x140417db5
mov byte [rsi + 0x38], 0
clc
xor edx, edx
mov rax, rdi
cmp r14, r10
mov qword [rsi + 0xc8], rax
bswap ecx
sal cl, 0xe8
mov qword [rsi + 0xc0], rdi
mov rcx, rdi
cmp bx, ax
cmp bl, 2
jmp 0x140417de3
jne 0x140418546
cmp bpl, 2
jmp 0x140417df2
jne 0x140418546
test dl, dl
jmp 0x140417dff
js 0x140418546
movzx ebx, dl
cmp r11, 0x1def78a1
clc
shl ebx, 8
cmp rcx, rax
jmp 0x140417e1b
jae 0x140417e3e
lea rax, [rcx + 1]
jmp 0x140417e2a
mov qword [rsi + 0xc0], rax
jmp 0x140417e36
movzx eax, byte [rcx]
jmp 0x140417ef6
cmp dword [rsi + 0x30], 0
jmp 0x140417e47
je 0x140417eb9
mov r8d, dword [rsi + 0x34]
cqo
cdq
movzx cx, r14b
mov rcx, qword [rsi + 0x28]
jmp 0x140417e64
mov rdx, r12
jmp 0x140417e6c
call qword [rsi + 0x10]
mov ecx, dword [rsi + 0xc0]
sub ecx, dword [rsi + 0xd0]
stc
test dl, r9b
add dword [rsi + 0xb8], ecx
cmp cl, 0x33
clc
test eax, eax
jmp 0x140417e90
je 0x140417ec5
movsxd rcx, eax
and eax, 0x34c94958
neg ax
add rcx, r12
movzx ax, spl
lahf
cmovbe ax, r9w
movzx eax, byte [r12]
jmp 0x140417ee8
sub eax, eax
jmp 0x140417ec0
jmp 0x140417ef6
mov dword [rsi + 0x30], 0
inc cx
mov byte [rsi + 0x38], 0
rcr ecx, cl
cmc
sub eax, eax
cmc
shl ecx, 0x8e
or ch, 0x10
mov rcx, rdi
cmp esi, 0x23a94424
mov qword [rsi + 0xc8], rcx
mov qword [rsi + 0xc0], rdi
movzx eax, al
or ebx, eax
cmp ebx, dword [rsp + 0x50]
jmp 0x140417f04
jne 0x140418525
test r13, r13
jne 0x140417f32
mov rcx, qword [rsp + 0xf8]
call fcn.14027533b
mov r13, rax
stc
test rax, rax
jmp 0x140417f2c
je 0x140418600
sub r15d, r15d
jmp 0x140417f3a
jmp 0x140417f5a
inc r15d
cmp r9w, dx
cmp cx, 0x3bf2
cmp r15d, 4
jmp 0x140417f54
je 0x140418440
mov rax, qword [rsp + 0x50]
mov ebp, eax
cmc
cmp r14b, r12b
sub r9d, r9d
jmp 0x140417f6d
mov qword [rsp + 0x88], r15
jmp 0x140417fae
mov r9, qword [rsp + 0x38]
sub r9d, r15d
mov r15, qword [rsp + 0x88]
mov rax, qword [rsp + 0x50]
xchg rbp, rbp
mov ebp, eax
cmp r11w, 0x2f15
test cx, 0x7435
clc
sub ebp, r9d
jmp 0x140417fa8
jle 0x140417f3f
mov rdx, qword [rsi + 0xc0]
bsr ax, r12w
shld eax, eax, 9
xor ax, r10w
mov rax, qword [rsi + 0xc8]
test si, r15w
cmp rsp, rbx
cmp rdx, rax
jmp 0x140417fd8
jae 0x140418017
mov qword [rsp + 0x38], r9
sets bl
movzx rcx, r10w
lea rcx, [rdx + 1]
movzx bx, r13b
movsxd rbx, eax
movzx rbx, r10w
mov qword [rsi + 0xc0], rcx
movzx bx, ah
jmp 0x14041800a
movzx ebx, byte [rdx]
jmp 0x140418012
jmp 0x1404180c7
cmp dword [rsi + 0x30], 0
jmp 0x140418020
je 0x140417f8a
mov qword [rsp + 0x38], r9
movzx cx, bl
cmovb r8w, r10w
movzx r8, r15w
mov r8d, dword [rsi + 0x34]
movsxd rdx, r8d
bswap rdx
cwd
mov rcx, qword [rsi + 0x28]
jmp 0x140418051
mov rdx, r12
jmp 0x140418059
call qword [rsi + 0x10]
mov ecx, dword [rsi + 0xc0]
cmp eax, 0x403f049c
sub ecx, dword [rsi + 0xd0]
cmp bp, dx
clc
add dword [rsi + 0xb8], ecx
test r11b, 0xdc
test eax, eax
jmp 0x140418082
je 0x14041809f
cdqe
add rax, r12
xchg bx, bx
movzx ebx, byte [r12]
jmp 0x14041809a
jmp 0x1404180b1
mov dword [rsi + 0x30], 0
mov byte [rsi + 0x38], 0
sub ebx, ebx
sar ch, cl
mov rax, rdi
mov qword [rsi + 0xc8], rax
mov qword [rsi + 0xc0], rdi
neg cx
sar ch, cl
mov rcx, rdi
cmp bl, 0x81
jb 0x1404180fd
cmp rcx, rax
jmp 0x1404180d8
jae 0x14041826b
lea rax, [rcx + 1]
jmp 0x1404180e7
mov qword [rsi + 0xc0], rax
nop
movzx eax, byte [rcx]
jmp 0x1404180f8
jmp 0x140418325
movzx ebx, bl
cmp r15b, sil
test spl, r15b
cmp ebp, ebx
jb 0x140418525
test ebx, ebx
jmp 0x140418115
je 0x1404182de
mov rax, qword [rsp + 0x38]
movsx bp, bpl
lea ebp, [r15 + rax*4]
neg ebx
sub r15d, r15d
jmp 0x140418133
jmp 0x140418190
lea rcx, [rax + 1]
test sil, dl
mov qword [rsi + 0xc0], rcx
jmp 0x140418153
movzx eax, byte [rax]
test r11b, 0xee
movsxd rbp, ebp
test r9d, 0x2cce30f2
jmp 0x140418169
mov byte [r13 + rbp], al
cmp r8b, 0xa1
stc
test sil, 0xd5
add ebp, 4
jmp 0x14041817f
dec r15d
cmp ebx, r15d
jmp 0x14041818a
je 0x140417f7a
mov rax, qword [rsi + 0xc0]
stc
test r10w, 0x68e7
cmp rax, qword [rsi + 0xc8]
jmp 0x1404181aa
jb 0x140418138
cmp dword [rsi + 0x30], 0
je 0x140418226
mov r8d, dword [rsi + 0x34]
cqo
movzx rdx, r11w
mov cx, r11w
mov rcx, qword [rsi + 0x28]
mov dl, 0xfd
mov rdx, r12
jmp 0x1404181d6
call qword [rsi + 0x10]
mov ecx, dword [rsi + 0xc0]
test r10w, 0x7bb8
sub ecx, dword [rsi + 0xd0]
cmc
jmp 0x1404181f1
add dword [rsi + 0xb8], ecx
test ax, bx
test r15b, 0x1a
test eax, eax
je 0x140418232
movsxd rcx, eax
btc ax, r14w
cmc
add rcx, r12
movsx ax, sil
movzx eax, byte [r12]
jmp 0x140418221
jmp 0x14041824e
xor eax, eax
jmp 0x14041822d
jmp 0x14041815a
mov dword [rsi + 0x30], 0
mov byte [rsi + 0x38], 0
bt rcx, rdx
sub eax, eax
movsx cx, dil
cmovo ecx, eax
mov rcx, rdi
mov qword [rsi + 0xc8], rcx
jmp 0x14041825a
mov qword [rsi + 0xc0], rdi
jmp 0x140418266
jmp 0x14041815a
cmp dword [rsi + 0x30], 0
je 0x1404182ed
mov r8d, dword [rsi + 0x34]
movsx ecx, cx
bswap cx
mov cx, r9w
mov rcx, qword [rsi + 0x28]
movsx rdx, r15w
mov rdx, r12
jmp 0x140418293
call qword [rsi + 0x10]
mov ecx, dword [rsi + 0xc0]
jmp 0x1404182a6
sub ecx, dword [rsi + 0xd0]
add dword [rsi + 0xb8], ecx
test eax, eax
je 0x1404182f9
movsxd rcx, eax
bsf ax, r11w
and al, r12b
add rcx, r12
movzx ax, spl
not ah
movzx eax, byte [r12]
jmp 0x1404182d9
jmp 0x14041830e
mov r9, qword [rsp + 0x38]
jmp 0x1404182e8
jmp 0x140417f8a
xor eax, eax
jmp 0x1404182f4
jmp 0x140418325
mov dword [rsi + 0x30], 0
mov byte [rsi + 0x38], 0
shl cx, cl
neg cl
sub eax, eax
mov rcx, rdi
mov qword [rsi + 0xc8], rcx
jmp 0x14041831a
mov qword [rsi + 0xc0], rdi
cmc
neg rdi
add bl, 0x80
bsf di, ax
sar dil, 0xf8
bt di, 0x75
movzx edi, bl
cmp ebp, edi
jmp 0x14041833f
jb 0x140418525
test edi, edi
je 0x140418377
mov rcx, qword [rsp + 0x38]
btc r8d, 0xb8
sub r8, rsi
xchg r8b, r8b
mov r8d, ecx
stc
cmp bl, 1
jne 0x140418392
mov r9, rcx
jmp 0x140418372
jmp 0x140418408
mov rdi, qword [rsp + 0x30]
movsx r9, dx
bswap r9
mov r9, qword [rsp + 0x38]
jmp 0x14041838d
jmp 0x140417f8a
mov r9, rcx
lea ebp, [r15 + rcx*4]
cmp di, 0x6beb
mov ecx, edi
neg edx
bts rdx, rsi
and ecx, 0xfffffffe
btr dx, 1
add edx, 0x782a45e8
neg ecx
dec dx
rcr dx, 0x7e
mov edx, 0x7e0d1de2
sub esi, esi
shr dl, cl
bts dx, bx
movsxd rbp, ebp
btr dx, 0xb0
mov byte [r13 + rbp], al
lea edx, [rbp + 4]
cmp r12b, r12b
movsxd rdx, edx
mov byte [r13 + rdx], al
cmp esp, r14d
clc
cmp spl, 0x8d
add ebp, 8
clc
add rsi, 0xfffffffffffffffe
cmp ecx, esi
jmp 0x1404183fc
jne 0x1404183ca
sub r8, rsi
mov rsi, r14
test bl, 1
jmp 0x140418410
je 0x14041842e
lea ecx, [r15 + r8*4]
movsxd rcx, ecx
stc
test r13, r13
cmp r12b, bpl
mov byte [r13 + rcx], al
jmp 0x14041842e
add r9d, edi
mov rdi, qword [rsp + 0x30]
jmp 0x14041843b
jmp 0x140417f8a
sub esi, esi
mov dl, sil
mov rdi, qword [rsp + 0x80]
cwd
movsx r15d, r11w
cmovno bp, r14w
mov r15d, dword [rsp + 0x40]
cmovno ebp, esp
mov rbx, qword [rsp + 0xe8]
mov rbp, qword [rsp + 0xe0]
mov edx, r12d
movsx r8w, r15b
lea rdx, [rsi + r13]
movsx ecx, ax
mov rcx, rdi
movzx r8d, bx
mov r8d, r15d
jmp 0x14041848e
call fcn.140432a1b
add rdi, rbx
add rsi, 4
jmp 0x14041849f
cmp rbp, rsi
jmp 0x1404184a7
jne 0x140418478
mov rdx, qword [rsp + 0xf0]
inc rdx
clc
cdqe
bt si, r15w
mov rax, qword [rsp + 0x80]
or sil, 0xef
add rax, qword [rsp + 0xd0]
movzx esi, bp
mov sil, r14b
cmp al, 0xaa
mov qword [rsp + 0x80], rax
cmp sil, 0xa8
ror rsi, 0x2c
cmp rdx, qword [rsp + 0xd8]
movsxd rsi, r10d
mov rsi, r14
jmp 0x1404184ff
jne 0x140417acd
test r13, r13
je 0x14041851b
mov rcx, r13
jmp 0x140418516
call fcn.14022bf8c
mov rdi, qword [rsp + 0x48]
jmp 0x1404177bb
mov rcx, qword [rsp + 0x48]
jmp 0x14041852f
call fcn.14022bf8c
mov rcx, r13
jmp 0x14041853c
call fcn.14022bf8c
jmp 0x1404177ae
mov byte [rsp + 0x60], bl
jmp 0x14041854f
mov byte [rsp + 0x61], bpl
mov byte [rsp + 0x62], dl
clc
cmp rsi, 0x469a79f1
cmp rcx, rax
jae 0x140418591
lea rax, [rcx + 1]
jmp 0x140418572
mov qword [r14 + 0xc0], rax
bswap rax
setno al
movsx ax, r13b
movzx eax, byte [rcx]
jmp 0x14041858c
jmp 0x140418669
cmp dword [r14 + 0x30], 0
je 0x14041860f
mov rsi, r14
mov ch, 0xcf
mov r8d, dword [r14 + 0x34]
mov rcx, qword [r14 + 0x28]
movzx edx, r10w
movsxd rdx, edi
mov rdx, r12
call qword [r14 + 0x10]
mov ecx, dword [r14 + 0xc0]
clc
sub ecx, dword [r14 + 0xd0]
test r14w, 0x5d8b
add dword [r14 + 0xb8], ecx
test eax, eax
jmp 0x1404185db
je 0x140418616
movsxd rcx, eax
rol al, cl
lahf
cbw
add rcx, r12
xchg al, al
movzx eax, dx
movzx eax, byte [r12]
jmp 0x1404185fb
jmp 0x14041863a
mov rcx, qword [rsp + 0x48]
jmp 0x14041860a
jmp 0x14041853c
sub eax, eax
jmp 0x140418669
mov rax, r14
cdq
movsx edi, r12w
mov dword [r14 + 0x30], 0
movzx cx, bpl
mov byte [r14 + 0x38], 0
sub di, dx
xor eax, eax
mov rcx, qword [rsp + 0x30]
mov rdx, r14
movsx dx, r13b
mov qword [r14 + 0xc8], rcx
movsx rdx, cx
mov rcx, qword [rsp + 0x30]
cwd
setge dil
mov qword [r14 + 0xc0], rcx
movzx edi, si
movsxd rdx, esp
bswap r8w
mov byte [rsp + 0x63], al
xchg bl, r8b
cwd
cdq
lea rdx, [rsp + 0x60]
movzx cx, r15b
mov rdi, qword [rsp + 0x48]
cmovns rcx, r12
movzx ebx, bx
mov rcx, rdi
movzx r8w, bl
movsxd rbx, r13d
xchg r8b, r8b
mov ebx, dword [rsp + 0x40]
movzx r8w, sil
bswap r8d
movsx r8w, r8b
mov r8d, ebx
jmp 0x1404186b0
call fcn.140432a1b
mov rcx, r13
jmp 0x1404186bd
call fcn.14022bf8c
mov r13d, 1
and bp, 0x6521
sub r15d, r15d
mov rsi, r14
mov rbp, rsp
xchg ebp, ebp
bswap bp
mov rbp, qword [rsp + 0x50]
jmp 0x1404186e5
jmp 0x14041871a
inc r15d
clc
test r14b, cl
sub r13d, r13d
cmc
test r12w, dx
cmp bl, r9b
cmp r15d, dword [rsp + 0x58]
jmp 0x140418706
jge 0x1404177bb
cmp r13d, ebp
jmp 0x140418714
jge 0x1404186ea
mov r14, qword [rsi + 0x10]
test r14, r14
jmp 0x140418726
je 0x1404187d8
mov rdx, qword [rsi + 0xc0]
or bh, 0x6d
rcl ax, cl
mov rax, qword [rsi + 0xc8]
add bx, 0x1a97
adc bh, 0x8c
mov rbx, rax
cmp sp, bp
test rbx, r8
cmc
sub rbx, rdx
cmp r8b, 0x1b
clc
stc
cmp ebx, 3
jmp 0x140418763
jg 0x1404187f1
movsxd r12, ebx
movzx r8, r11w
movsx r8d, sp
lea rcx, [rsp + 0x2c]
mov r8, r12
jmp 0x140418781
call fcn.1404a26e1
mov r8d, 4
sub r8d, ebx
bt dx, 0x79
rcl dh, 0xdd
movzx ecx, bx
lea rdx, [rsp + r12]
add rdx, 0x2c
movzx rcx, r14w
mov cl, 0xf9
movsx cx, r14b
mov rcx, qword [rsi + 0x28]
jmp 0x1404187b6
call r14
mov rax, qword [rsi + 0xc8]
mov qword [rsi + 0xc0], rax
jmp 0x1404187cf
mov ebx, dword [rsp + 0x40]
jmp 0x140418828
mov rdx, qword [rsi + 0xc0]
mov eax, 0xe223bc6
cwde
mov rax, qword [rsi + 0xc8]
jmp 0x1404187f8
mov ebx, dword [rsp + 0x40]
mov rcx, rdi
lea rcx, [rdx + 4]
cmp r13, r11
test r12b, 0x88
cmp rcx, rax
ja 0x140418828
mov eax, dword [rdx]
movsx r12, r8w
mov dword [rsp + 0x2c], eax
bt r12d, 0xf1
rcl dx, cl
or dl, dil
mov qword [rsi + 0xc0], rcx
mov eax, ebp
btc r12w, 0xf1
sub ebp, 0x6a5f21f9
xadd dh, dl
imul eax, ebx
imul eax, r15d
bsr r12, rdi
shrd rbp, rbx, 0xd3
sbb dl, dil
cdqe
shr bpl, 0xae
bswap bp
lea r12, [rdi + rax*4]
and dx, bx
cqo
bt bp, 0xbc
mov eax, r13d
imul eax, ebx
or dx, di
movsxd rbp, eax
movzx dx, dh
movzx edx, byte [rsp + 0x2f]
test edx, edx
jmp 0x14041887f
je 0x1404188f1
add edx, 0xffffff78
jmp 0x140418890
movsd xmm0, qword [0x1400bf4d0]
jmp 0x14041889d
call fcn.1404b7064
cvtsd2ss xmm0, xmm0
movzx eax, byte [rsp + 0x2c]
cmp ebx, 2
jmp 0x1404188b3
jg 0x140418931
movzx ecx, byte [rsp + 0x2d]
stc
cmc
add ecx, eax
movzx eax, byte [rsp + 0x2e]
add eax, ecx
jmp 0x1404188ce
xorps xmm1, xmm1
cvtsi2ss xmm1, eax
mulss xmm0, xmm1
divss xmm0, dword [0x1400bd564]
movss dword [r12 + rbp*4], xmm0
jmp 0x1404188ec
jmp 0x140418971
cmp ebx, 2
jmp 0x1404188f9
jg 0x1404189ae
cmp ebx, 1
jmp 0x140418907
je 0x14041891f
cmp ebx, 2
jne 0x1404189e9
mov dword [r12 + rbp*4 + 4], 0x3f800000
mov dword [r12 + rbp*4], 0
jmp 0x14041892c
jmp 0x1404189e9
movzx ecx, byte [rsp + 0x2d]
jmp 0x14041893b
movd xmm1, eax
pinsrw xmm1, ecx, 2
cvtdq2ps xmm1, xmm1
movaps xmm2, xmm0
unpcklps xmm2, xmm0
movzx eax, byte [rsp + 0x2e]
jmp 0x140418957
xorps xmm3, xmm3
cvtsi2ss xmm3, eax
mulps xmm2, xmm1
movlps qword [r12 + rbp*4], xmm2
mulss xmm3, xmm0
movss dword [r12 + rbp*4 + 8], xmm3
cmp ebx, 4
jmp 0x140418979
je 0x1404189a0
cmp ebx, 2
jmp 0x140418987
jne 0x1404189e9
mov dword [r12 + rbp*4 + 4], 0x3f800000
jmp 0x14041899b
jmp 0x1404189e9
mov dword [r12 + rbp*4 + 0xc], 0x3f800000
jmp 0x1404189e9
cmp ebx, 3
jmp 0x1404189b6
je 0x1404189d8
cmp ebx, 4
jmp 0x1404189c4
jne 0x1404189e9
mov dword [r12 + rbp*4 + 0xc], 0x3f800000
jmp 0x1404189d8
mov dword [r12 + rbp*4 + 8], 0
xorps xmm0, xmm0
movlps qword [r12 + rbp*4], xmm0
inc r13d
mov rbp, qword [rsp + 0x50]
jmp 0x14041870c