Function at 0x1400090f0
Capabilities:
Encrypt data using speck
Inspect section memory permissions
Resolve function by parsing pe exports

Disassembly:
mov qword [rsp + 0x18], r8
mov qword [rsp + 0x10], rdx
mov qword [rsp + 8], rcx
push rdi
sub rsp, 0xb0
mov rdi, rsp
mov ecx, 0x2c
mov eax, 0xcccccccc
rep stosd dword [rdi], eax
mov rcx, qword [rsp + 0xc0]
cmp qword [rsp + 0xc0], 0
jne 0x140009144
mov r8d, 0x6e1
lea rdx, [0x140061f80]
lea rcx, [0x14005d818]
call sub.api_ms_win_crt_runtime_l1_1_0.dll__wassert
xor eax, eax
cmp qword [rsp + 0xc8], 0
jne 0x14000916a
mov r8d, 0x6e2
lea rdx, [0x140062000]
lea rcx, [0x14005d828]
call sub.api_ms_win_crt_runtime_l1_1_0.dll__wassert
xor eax, eax
cmp qword [rsp + 0xd0], 0
jne 0x140009190
mov r8d, 0x6e3
lea rdx, [0x140062080]
lea rcx, [0x14005d8b8]
call sub.api_ms_win_crt_runtime_l1_1_0.dll__wassert
xor eax, eax
mov byte [rsp + 0x20], 0
lea rdx, [rsp + 0x38]
mov rcx, qword [rsp + 0xd0]
call fcn.1400125f0
mov rcx, qword [rsp + 0xc8]
mov byte [rcx + 0x18], al
mov rax, qword [rsp + 0xc8]
movzx eax, byte [rax + 0x18]
cmp rax, 0xa
jbe 0x1400091df
mov r8d, 0x6e9
lea rdx, [0x140062100]
lea rcx, str.instruction__operand_count____sizeof_instruction__operands____sizeof__instruction__operands__0___
call sub.api_ms_win_crt_runtime_l1_1_0.dll__wassert
xor eax, eax
mov byte [rsp + 0x44], 0
jmp 0x1400091f1
movzx eax, byte [rsp + 0x44]
inc al
mov byte [rsp + 0x44], al
movzx eax, byte [rsp + 0x44]
mov rcx, qword [rsp + 0xc8]
movzx ecx, byte [rcx + 0x18]
cmp eax, ecx
jge 0x14000a4ee
mov dword [rsp + 0x48], 0
movzx eax, byte [rsp + 0x44]
imul rax, rax, 0x68
mov rcx, qword [rsp + 0xc8]
movzx edx, byte [rsp + 0x44]
mov byte [rcx + rax + 0x20], dl
mov rax, qword [rsp + 0x38]
movzx eax, byte [rax]
shr al, 5
and al, 3
movzx ecx, byte [rsp + 0x44]
imul rcx, rcx, 0x68
movzx eax, al
mov rdx, qword [rsp + 0xc8]
mov dword [rdx + rcx + 0x28], eax
mov rax, qword [rsp + 0x38]
movzx eax, byte [rax + 1]
and al, 0xf
movzx ecx, byte [rsp + 0x44]
imul rcx, rcx, 0x68
mov rdx, qword [rsp + 0xc8]
mov byte [rdx + rcx + 0x2c], al
mov rax, qword [rsp + 0x38]
movzx eax, byte [rax + 1]
and al, 0xf
movzx eax, al
and eax, 1
and eax, 4
test eax, eax
je 0x1400092cd
mov rax, qword [rsp + 0x38]
movzx eax, byte [rax + 1]
and al, 0xf
movzx eax, al
and eax, 1
mov rcx, qword [rsp + 0x38]
movzx ecx, byte [rcx + 1]
and cl, 0xf
movzx ecx, cl
and ecx, 4
xor eax, ecx
test eax, eax
jne 0x1400092cd
mov r8d, 0x6f5
lea rdx, [0x140062250]
lea rcx, str.__operand__actions__ZYDIS_OPERAND_ACTION_READ__ZYDIS_OPERAND_ACTION_CONDREAD____operand__actions__ZYDIS_OPERAND_ACTION_READ____operand__actions__ZYDIS_OPERAND_ACTION_CONDREAD_
call sub.api_ms_win_crt_runtime_l1_1_0.dll__wassert
xor eax, eax
mov rax, qword [rsp + 0x38]
movzx eax, byte [rax + 1]
and al, 0xf
movzx eax, al
and eax, 2
and eax, 8
test eax, eax
je 0x140009329
mov rax, qword [rsp + 0x38]
movzx eax, byte [rax + 1]
and al, 0xf
movzx eax, al
and eax, 2
mov rcx, qword [rsp + 0x38]
movzx ecx, byte [rcx + 1]
and cl, 0xf
movzx ecx, cl
and ecx, 8
xor eax, ecx
test eax, eax
jne 0x140009329
mov r8d, 0x6f9
lea rdx, [0x140062440]
lea rcx, str.__operand__actions__ZYDIS_OPERAND_ACTION_WRITE__ZYDIS_OPERAND_ACTION_CONDWRITE____operand__actions__ZYDIS_OPERAND_ACTION_WRITE____operand__actions__ZYDIS_OPERAND_ACTION_CONDWRITE_
call sub.api_ms_win_crt_runtime_l1_1_0.dll__wassert
xor eax, eax
mov rax, qword [rsp + 0x38]
movzx eax, byte [rax]
and al, 0x1f
mov byte [rsp + 0x7c], al
cmp byte [rsp + 0x7c], 1
je 0x140009351
cmp byte [rsp + 0x7c], 2
je 0x140009389
cmp byte [rsp + 0x7c], 3
je 0x1400093c1
jmp 0x14000943e
movzx eax, byte [rsp + 0x44]
imul rax, rax, 0x68
mov rcx, qword [rsp + 0xc8]
lea rax, [rcx + rax + 0x20]
mov r9, qword [rsp + 0x38]
mov r8, rax
mov rdx, qword [rsp + 0xc8]
mov rcx, qword [rsp + 0xc0]
call fcn.140008a00
jmp 0x14000943e
lfence
movzx eax, byte [rsp + 0x44]
imul rax, rax, 0x68
mov rcx, qword [rsp + 0xc8]
lea rax, [rcx + rax + 0x20]
mov r9, qword [rsp + 0x38]
mov r8, rax
mov rdx, qword [rsp + 0xc8]
mov rcx, qword [rsp + 0xc0]
call fcn.140008d90
jmp 0x14000943e
movzx eax, byte [rsp + 0x44]
imul rax, rax, 0x68
mov rcx, qword [rsp + 0xc8]
mov dword [rcx + rax + 0x24], 4
movzx eax, byte [rsp + 0x44]
imul rax, rax, 0x68
mov ecx, 8
mov rdx, qword [rsp + 0xc8]
mov word [rdx + rax + 0x34], cx
movzx eax, byte [rsp + 0x44]
imul rax, rax, 0x68
mov rcx, qword [rsp + 0xc8]
mov qword [rcx + rax + 0x80], 1
movzx eax, byte [rsp + 0x44]
imul rax, rax, 0x68
mov rcx, qword [rsp + 0xc8]
mov byte [rcx + rax + 0x78], 0
movzx eax, byte [rsp + 0x44]
imul rax, rax, 0x68
mov rcx, qword [rsp + 0xc8]
mov byte [rcx + rax + 0x79], 0
movzx eax, byte [rsp + 0x44]
imul rax, rax, 0x68
mov rcx, qword [rsp + 0xc8]
cmp dword [rcx + rax + 0x24], 0
je 0x14000945b
jmp 0x14000a24c
mov rax, qword [rsp + 0x38]
movzx eax, byte [rax + 9]
and al, 0x3f
movzx ecx, byte [rsp + 0x44]
imul rcx, rcx, 0x68
movzx eax, al
mov rdx, qword [rsp + 0xc8]
mov dword [rdx + rcx + 0x30], eax
mov rax, qword [rsp + 0x38]
movzx eax, byte [rax]
and al, 0x1f
movzx eax, al
mov dword [rsp + 0x80], eax
mov eax, dword [rsp + 0x80]
sub eax, 4
mov dword [rsp + 0x80], eax
cmp dword [rsp + 0x80], 0x11
ja case.default.0x1400094ca
movsxd rax, dword [rsp + 0x80]
lea rcx, [0x140000000]
mov eax, dword [rcx + rax*4 + 0xa5e4]
add rax, rcx
jmp rax
mov dword [rsp + 0x48], 1
jmp case.default.0x1400094ca
mov dword [rsp + 0x48], 2
jmp case.default.0x1400094ca
mov dword [rsp + 0x48], 3
jmp case.default.0x1400094ca
mov dword [rsp + 0x48], 4
jmp case.default.0x1400094ca
mov rax, qword [rsp + 0xc8]
movzx eax, byte [rax + 0x16]
cmp eax, 0x10
je 0x14000954e
mov rax, qword [rsp + 0xc8]
movzx eax, byte [rax + 0x16]
cmp eax, 0x20
je 0x14000954e
mov rax, qword [rsp + 0xc8]
movzx eax, byte [rax + 0x16]
cmp eax, 0x40
je 0x14000954e
mov r8d, 0x728
lea rdx, [0x140062640]
lea rcx, [0x1400626c0]
call sub.api_ms_win_crt_runtime_l1_1_0.dll__wassert
xor eax, eax
mov rax, qword [rsp + 0xc8]
movzx eax, byte [rax + 0x16]
cmp eax, 0x10
jne 0x14000956c
mov dword [rsp + 0x84], 2
jmp 0x1400095a3
mov rax, qword [rsp + 0xc8]
movzx eax, byte [rax + 0x16]
cmp eax, 0x20
jne 0x14000958a
mov dword [rsp + 0x88], 3
jmp 0x140009595
mov dword [rsp + 0x88], 4
mov eax, dword [rsp + 0x88]
mov dword [rsp + 0x84], eax
mov eax, dword [rsp + 0x84]
mov dword [rsp + 0x48], eax
jmp case.default.0x1400094ca
mov rax, qword [rsp + 0xc8]
movzx eax, byte [rax + 0x16]
cmp eax, 0x10
je 0x140009601
mov rax, qword [rsp + 0xc8]
movzx eax, byte [rax + 0x16]
cmp eax, 0x20
je 0x140009601
mov rax, qword [rsp + 0xc8]
movzx eax, byte [rax + 0x16]
cmp eax, 0x40
je 0x140009601
mov r8d, 0x72f
lea rdx, [0x1400627a0]
lea rcx, [0x140062820]
call sub.api_ms_win_crt_runtime_l1_1_0.dll__wassert
xor eax, eax
mov rax, qword [rsp + 0xc8]
movzx eax, byte [rax + 0x16]
cmp eax, 0x10
jne 0x14000961f
mov dword [rsp + 0x8c], 3
jmp 0x140009656
mov rax, qword [rsp + 0xc8]
movzx eax, byte [rax + 0x16]
cmp eax, 0x20
jne 0x14000963d
mov dword [rsp + 0x90], 3
jmp 0x140009648
mov dword [rsp + 0x90], 4
mov eax, dword [rsp + 0x90]
mov dword [rsp + 0x8c], eax
mov eax, dword [rsp + 0x8c]
mov dword [rsp + 0x48], eax
jmp case.default.0x1400094ca
mov rax, qword [rsp + 0xc8]
movzx eax, byte [rax + 0x16]
cmp eax, 0x10
je 0x1400096b4
mov rax, qword [rsp + 0xc8]
movzx eax, byte [rax + 0x16]
cmp eax, 0x20
je 0x1400096b4
mov rax, qword [rsp + 0xc8]
movzx eax, byte [rax + 0x16]
cmp eax, 0x40
je 0x1400096b4
mov r8d, 0x736
lea rdx, [0x140062900]
lea rcx, str._instruction__operand_width__16____instruction__operand_width__32____instruction__operand_width__64_
call sub.api_ms_win_crt_runtime_l1_1_0.dll__wassert
xor eax, eax
mov rax, qword [rsp + 0xc8]
movzx eax, byte [rax + 0x16]
cmp eax, 0x10
jne 0x1400096d2
mov dword [rsp + 0x94], 2
jmp 0x1400096dd
mov dword [rsp + 0x94], 3
mov eax, dword [rsp + 0x94]
mov dword [rsp + 0x48], eax
jmp case.default.0x1400094ca
mov rax, qword [rsp + 0xc8]
movzx eax, byte [rax + 0x17]
cmp eax, 0x10
je 0x14000973b
mov rax, qword [rsp + 0xc8]
movzx eax, byte [rax + 0x17]
cmp eax, 0x20
je 0x14000973b
mov rax, qword [rsp + 0xc8]
movzx eax, byte [rax + 0x17]
cmp eax, 0x40
je 0x14000973b
mov r8d, 0x73c
lea rdx, [0x140062a60]
lea rcx, str._instruction__address_width__16____instruction__address_width__32____instruction__address_width__64_
call sub.api_ms_win_crt_runtime_l1_1_0.dll__wassert
xor eax, eax
mov rax, qword [rsp + 0xc8]
movzx eax, byte [rax + 0x17]
cmp eax, 0x10
jne 0x140009759
mov dword [rsp + 0x98], 2
jmp 0x140009790
mov rax, qword [rsp + 0xc8]
movzx eax, byte [rax + 0x17]
cmp eax, 0x20
jne 0x140009777
mov dword [rsp + 0x9c], 3
jmp 0x140009782
mov dword [rsp + 0x9c], 4
mov eax, dword [rsp + 0x9c]
mov dword [rsp + 0x98], eax
mov eax, dword [rsp + 0x98]
mov dword [rsp + 0x48], eax
jmp case.default.0x1400094ca
mov dword [rsp + 0x48], 5
jmp case.default.0x1400094ca
mov dword [rsp + 0x48], 6
jmp case.default.0x1400094ca
mov dword [rsp + 0x48], 7
jmp case.default.0x1400094ca
mov dword [rsp + 0x48], 8
jmp case.default.0x1400094ca
mov dword [rsp + 0x48], 9
jmp case.default.0x1400094ca
mov dword [rsp + 0x48], 0x11
jmp case.default.0x1400094ca
mov dword [rsp + 0x48], 0xc
jmp case.default.0x1400094ca
mov dword [rsp + 0x48], 0xe
jmp case.default.0x1400094ca
mov dword [rsp + 0x48], 0xf
jmp case.default.0x1400094ca
mov dword [rsp + 0x48], 0x10
cmp dword [rsp + 0x48], 0
je 0x140009b38
mov rax, qword [rsp + 0x38]
movzx eax, byte [rax + 9]
and al, 0x3f
movzx eax, al
mov dword [rsp + 0xa0], eax
mov eax, dword [rsp + 0xa0]
dec eax
mov dword [rsp + 0xa0], eax
cmp dword [rsp + 0xa0], 5
ja case.default.0x140009856
movsxd rax, dword [rsp + 0xa0]
lea rcx, [0x140000000]
mov eax, dword [rcx + rax*4 + 0xa62c]
add rax, rcx
jmp rax
mov r9d, dword [rsp + 0x48]
mov r8d, 2
mov rdx, qword [rsp + 0xc8]
mov rcx, qword [rsp + 0xc0]
call fcn.140006c60
movzx ecx, byte [rsp + 0x44]
imul rcx, rcx, 0x68
mov rdx, qword [rsp + 0xc8]
lea rcx, [rdx + rcx + 0x20]
movzx r9d, al
mov r8d, dword [rsp + 0x48]
mov rdx, rcx
mov rcx, qword [rsp + 0xc8]
call fcn.1400080f0
mov dword [rsp + 0x4c], eax
mov eax, dword [rsp + 0x4c]
and eax, 0x80000000
test eax, eax
je 0x1400098c1
mov eax, dword [rsp + 0x4c]
jmp 0x14000a5c5
xor eax, eax
test eax, eax
jne case.0x140009856.1
jmp 0x140009b33
mov r9d, dword [rsp + 0x48]
mov r8d, 4
mov rdx, qword [rsp + 0xc8]
mov rcx, qword [rsp + 0xc0]
call fcn.140006c60
movzx ecx, byte [rsp + 0x44]
imul rcx, rcx, 0x68
mov rdx, qword [rsp + 0xc8]
lea rcx, [rdx + rcx + 0x20]
movzx r9d, al
mov r8d, dword [rsp + 0x48]
mov rdx, rcx
mov rcx, qword [rsp + 0xc8]
call fcn.1400080f0
mov dword [rsp + 0x50], eax
mov eax, dword [rsp + 0x50]
and eax, 0x80000000
test eax, eax
je 0x140009935
mov eax, dword [rsp + 0x50]
jmp 0x14000a5c5
xor eax, eax
test eax, eax
jne case.0x140009856.2
jmp 0x140009b33
mov r9d, dword [rsp + 0x48]
mov r8d, 1
mov rdx, qword [rsp + 0xc8]
mov rcx, qword [rsp + 0xc0]
call fcn.140006c60
movzx ecx, byte [rsp + 0x44]
imul rcx, rcx, 0x68
mov rdx, qword [rsp + 0xc8]
lea rcx, [rdx + rcx + 0x20]
movzx r9d, al
mov r8d, dword [rsp + 0x48]
mov rdx, rcx
mov rcx, qword [rsp + 0xc8]
call fcn.1400080f0
mov dword [rsp + 0x54], eax
mov eax, dword [rsp + 0x54]
and eax, 0x80000000
test eax, eax
je 0x1400099a9
mov eax, dword [rsp + 0x54]
jmp 0x14000a5c5
xor eax, eax
test eax, eax
jne case.0x140009856.3
jmp 0x140009b33
mov r9d, dword [rsp + 0x48]
mov r8d, 3
mov rdx, qword [rsp + 0xc8]
mov rcx, qword [rsp + 0xc0]
call fcn.140006c60
movzx ecx, byte [rsp + 0x44]
imul rcx, rcx, 0x68
mov rdx, qword [rsp + 0xc8]
lea rcx, [rdx + rcx + 0x20]
movzx r9d, al
mov r8d, dword [rsp + 0x48]
mov rdx, rcx
mov rcx, qword [rsp + 0xc8]
call fcn.1400080f0
mov dword [rsp + 0x58], eax
mov eax, dword [rsp + 0x58]
and eax, 0x80000000
test eax, eax
je 0x140009a1d
mov eax, dword [rsp + 0x58]
jmp 0x14000a5c5
xor eax, eax
test eax, eax
jne case.0x140009856.4
jmp 0x140009b33
mov r9d, dword [rsp + 0x48]
mov r8d, 9
mov rdx, qword [rsp + 0xc8]
mov rcx, qword [rsp + 0xc0]
call fcn.140006c60
movzx ecx, byte [rsp + 0x44]
imul rcx, rcx, 0x68
mov rdx, qword [rsp + 0xc8]
lea rcx, [rdx + rcx + 0x20]
movzx r9d, al
mov r8d, dword [rsp + 0x48]
mov rdx, rcx
mov rcx, qword [rsp + 0xc8]
call fcn.1400080f0
mov dword [rsp + 0x5c], eax
mov eax, dword [rsp + 0x5c]
and eax, 0x80000000
test eax, eax
je 0x140009a91
mov eax, dword [rsp + 0x5c]
jmp 0x14000a5c5
xor eax, eax
test eax, eax
jne case.0x140009856.6
jmp 0x140009b33
mov r9d, dword [rsp + 0x48]
mov r8d, 8
mov rdx, qword [rsp + 0xc8]
mov rcx, qword [rsp + 0xc0]
call fcn.140006c60
movzx ecx, byte [rsp + 0x44]
imul rcx, rcx, 0x68
mov rdx, qword [rsp + 0xc8]
lea rcx, [rdx + rcx + 0x20]
movzx r9d, al
mov r8d, dword [rsp + 0x48]
mov rdx, rcx
mov rcx, qword [rsp + 0xc8]
call fcn.1400080f0
mov dword [rsp + 0x60], eax
mov eax, dword [rsp + 0x60]
and eax, 0x80000000
test eax, eax
je 0x140009b05
mov eax, dword [rsp + 0x60]
jmp 0x14000a5c5
xor eax, eax
test eax, eax
jne case.0x140009856.5
jmp 0x140009b33
xor eax, eax
test eax, eax
jne 0x140009b2e
mov r8d, 0x791
lea rdx, [0x140062bc0]
lea rcx, [0x14005d9a4]
call sub.api_ms_win_crt_runtime_l1_1_0.dll__wassert
xor eax, eax
call sub.api_ms_win_crt_runtime_l1_1_0.dll_abort
jmp 0x14000a24c
mov rax, qword [rsp + 0x38]
movzx eax, byte [rax]
and al, 0x1f
movzx eax, al
mov dword [rsp + 0xa4], eax
mov eax, dword [rsp + 0xa4]
sub eax, 0x16
mov dword [rsp + 0xa4], eax
cmp dword [rsp + 0xa4], 9
ja case.0x140009b84.26
movsxd rax, dword [rsp + 0xa4]
lea rcx, [0x140000000]
mov eax, dword [rcx + rax*4 + 0xa644]
add rax, rcx
jmp rax
movzx eax, byte [rsp + 0x44]
imul rax, rax, 0x68
mov rcx, qword [rsp + 0xc8]
lea rax, [rcx + rax + 0x20]
xor r9d, r9d
mov r8, rax
mov rdx, qword [rsp + 0xc8]
mov rcx, qword [rsp + 0xc0]
call fcn.140008210
mov dword [rsp + 0x64], eax
mov eax, dword [rsp + 0x64]
and eax, 0x80000000
test eax, eax
je 0x140009bd1
mov eax, dword [rsp + 0x64]
jmp 0x14000a5c5
xor eax, eax
test eax, eax
jne case.0x140009b84.22
jmp case.0x140009b84.26
movzx eax, byte [rsp + 0x44]
imul rax, rax, 0x68
mov rcx, qword [rsp + 0xc8]
lea rax, [rcx + rax + 0x20]
mov r9d, 7
mov r8, rax
mov rdx, qword [rsp + 0xc8]
mov rcx, qword [rsp + 0xc0]
call fcn.140008210
mov dword [rsp + 0x68], eax
mov eax, dword [rsp + 0x68]
and eax, 0x80000000
test eax, eax
je 0x140009c2a
mov eax, dword [rsp + 0x68]
jmp 0x14000a5c5
xor eax, eax
test eax, eax
jne case.0x140009b84.23
jmp case.0x140009b84.26
movzx eax, byte [rsp + 0x44]
imul rax, rax, 0x68
mov rcx, qword [rsp + 0xc8]
lea rax, [rcx + rax + 0x20]
mov r9d, 8
mov r8, rax
mov rdx, qword [rsp + 0xc8]
mov rcx, qword [rsp + 0xc0]
call fcn.140008210
mov dword [rsp + 0x6c], eax
mov eax, dword [rsp + 0x6c]
and eax, 0x80000000
test eax, eax
je 0x140009c83
mov eax, dword [rsp + 0x6c]
jmp 0x14000a5c5
xor eax, eax
test eax, eax
jne case.0x140009b84.24
jmp case.0x140009b84.26
movzx eax, byte [rsp + 0x44]
imul rax, rax, 0x68
mov rcx, qword [rsp + 0xc8]
lea rax, [rcx + rax + 0x20]
mov r9d, 9
mov r8, rax
mov rdx, qword [rsp + 0xc8]
mov rcx, qword [rsp + 0xc0]
call fcn.140008210
mov dword [rsp + 0x70], eax
mov eax, dword [rsp + 0x70]
and eax, 0x80000000
test eax, eax
je 0x140009cdc
mov eax, dword [rsp + 0x70]
jmp 0x14000a5c5
xor eax, eax
test eax, eax
jne case.0x140009b84.25
jmp case.0x140009b84.26
mov eax, 0x18
imul rax, rax, 0
mov rcx, qword [rsp + 0xc8]
movzx eax, byte [rcx + rax + 0x5a0]
cmp eax, 0x10
je 0x140009d3e
mov eax, 0x18
imul rax, rax, 0
mov rcx, qword [rsp + 0xc8]
movzx eax, byte [rcx + rax + 0x5a0]
cmp eax, 0x20
je 0x140009d3e
mov r8d, 0x7b0
lea rdx, [0x140062c40]
lea rcx, str._instruction__raw.imm_0_.size__16____instruction__raw.imm_0_.size__32_
call sub.api_ms_win_crt_runtime_l1_1_0.dll__wassert
xor eax, eax
mov eax, 0x18
imul rax, rax, 1
mov rcx, qword [rsp + 0xc8]
movzx eax, byte [rcx + rax + 0x5a0]
cmp eax, 0x10
je 0x140009d77
mov r8d, 0x7b1
lea rdx, [0x140062d60]
lea rcx, str.instruction__raw.imm_1_.size__16
call sub.api_ms_win_crt_runtime_l1_1_0.dll__wassert
xor eax, eax
movzx eax, byte [rsp + 0x44]
imul rax, rax, 0x68
mov rcx, qword [rsp + 0xc8]
mov dword [rcx + rax + 0x24], 3
mov eax, 0x18
imul rax, rax, 0
movzx ecx, byte [rsp + 0x44]
imul rcx, rcx, 0x68
mov rdx, qword [rsp + 0xc8]
mov r8, qword [rsp + 0xc8]
mov eax, dword [r8 + rax + 0x598]
mov dword [rdx + rcx + 0x74], eax
mov eax, 0x18
imul rax, rax, 1
movzx ecx, byte [rsp + 0x44]
imul rcx, rcx, 0x68
mov rdx, qword [rsp + 0xc8]
mov r8, qword [rsp + 0xc8]
movzx eax, word [r8 + rax + 0x598]
mov word [rdx + rcx + 0x70], ax
jmp case.0x140009b84.26
movzx eax, byte [rsp + 0x44]
imul rax, rax, 0x68
mov rcx, qword [rsp + 0xc8]
mov byte [rcx + rax + 0x2c], 0
movzx eax, byte [rsp + 0x44]
imul rax, rax, 0x68
mov rcx, qword [rsp + 0xc8]
lea rax, [rcx + rax + 0x20]
xor r9d, r9d
mov r8, rax
mov rdx, qword [rsp + 0xc8]
mov rcx, qword [rsp + 0xc0]
call fcn.140008210
mov dword [rsp + 0x74], eax
mov eax, dword [rsp + 0x74]
and eax, 0x80000000
test eax, eax
je 0x140009e54
mov eax, dword [rsp + 0x74]
jmp 0x14000a5c5
xor eax, eax
test eax, eax
jne 0x140009e09
movzx eax, byte [rsp + 0x44]
imul rax, rax, 0x68
mov rcx, qword [rsp + 0xc8]
mov dword [rcx + rax + 0x48], 2
jmp case.0x140009b84.26
mov rax, qword [rsp + 0xc8]
movzx eax, byte [rax + 0x588]
test eax, eax
jne 0x140009ea6
mov r8d, 0x7be
lea rdx, [0x140062e30]
lea rcx, [0x14005d9a8]
call sub.api_ms_win_crt_runtime_l1_1_0.dll__wassert
xor eax, eax
movzx eax, byte [rsp + 0x44]
imul rax, rax, 0x68
mov rcx, qword [rsp + 0xc8]
mov dword [rcx + rax + 0x24], 2
movzx eax, byte [rsp + 0x44]
imul rax, rax, 0x68
mov rcx, qword [rsp + 0xc8]
mov dword [rcx + rax + 0x48], 1
movzx eax, byte [rsp + 0x44]
imul rax, rax, 0x68
mov rcx, qword [rsp + 0xc8]
mov byte [rcx + rax + 0x60], 1
movzx eax, byte [rsp + 0x44]
imul rax, rax, 0x68
mov rcx, qword [rsp + 0xc8]
mov rdx, qword [rsp + 0xc8]
mov rdx, qword [rdx + 0x580]
mov qword [rcx + rax + 0x68], rdx
jmp case.0x140009b84.26
movzx eax, byte [rsp + 0x44]
imul rax, rax, 0x68
mov rcx, qword [rsp + 0xc8]
mov byte [rcx + rax + 0x2c], 0
movzx eax, byte [rsp + 0x44]
imul rax, rax, 0x68
mov rcx, qword [rsp + 0xc8]
lea rax, [rcx + rax + 0x20]
xor r9d, r9d
mov r8, rax
mov rdx, qword [rsp + 0xc8]
mov rcx, qword [rsp + 0xc0]
call fcn.140008210
mov dword [rsp + 0x78], eax
mov eax, dword [rsp + 0x78]
and eax, 0x80000000
test eax, eax
je 0x140009f79
mov eax, dword [rsp + 0x78]
jmp 0x14000a5c5
xor eax, eax
test eax, eax
jne 0x140009f2e
movzx eax, byte [rsp + 0x44]
imul rax, rax, 0x68
mov rcx, qword [rsp + 0xc8]
mov dword [rcx + rax + 0x48], 3
movzx eax, byte [rsp + 0x44]
imul rax, rax, 0x68
mov rcx, qword [rsp + 0xc8]
cmp dword [rcx + rax + 0x24], 0
je 0x14000a021
mov rax, qword [rsp + 0xc8]
cmp dword [rax + 0xc], 4
je 0x140009fcc
mov rax, qword [rsp + 0xc8]
cmp dword [rax + 0xc], 5
jne 0x14000a01c
mov rax, qword [rsp + 0xc8]
movzx eax, byte [rax + 0x588]
cmp eax, 8
jne 0x14000a01c
movzx eax, byte [rsp + 0x44]
imul rax, rax, 0x68
mov rcx, qword [rsp + 0xc0]
movzx ecx, byte [rcx + 0x3c]
mov rdx, qword [rsp + 0xc8]
mov rax, qword [rdx + rax + 0x68]
imul rax, rcx
movzx ecx, byte [rsp + 0x44]
imul rcx, rcx, 0x68
mov rdx, qword [rsp + 0xc8]
mov qword [rdx + rcx + 0x68], rax
jmp 0x14000a24c
mov rax, qword [rsp + 0x38]
movzx eax, byte [rax]
and al, 0x1f
mov byte [rsp + 0xa8], al
cmp byte [rsp + 0xa8], 0x1a
je 0x14000a083
cmp byte [rsp + 0xa8], 0x1b
je 0x14000a04b
jmp 0x14000a219
movzx eax, byte [rsp + 0x20]
imul rax, rax, 0x18
mov rcx, qword [rsp + 0xc8]
movzx eax, byte [rcx + rax + 0x591]
test eax, eax
jne 0x14000a083
mov r8d, 0x7e1
lea rdx, [0x140062eb0]
lea rcx, str.instruction__raw.imm_imm_id_.is_relative
call sub.api_ms_win_crt_runtime_l1_1_0.dll__wassert
xor eax, eax
movzx eax, byte [rsp + 0x20]
test eax, eax
je 0x14000a0b1
movzx eax, byte [rsp + 0x20]
cmp eax, 1
je 0x14000a0b1
mov r8d, 0x7e3
lea rdx, [0x140062f90]
lea rcx, str._imm_id__0____imm_id__1_
call sub.api_ms_win_crt_runtime_l1_1_0.dll__wassert
xor eax, eax
movzx eax, byte [rsp + 0x44]
imul rax, rax, 0x68
mov rcx, qword [rsp + 0xc8]
mov dword [rcx + rax + 0x24], 4
mov rax, qword [rsp + 0xc0]
movzx eax, byte [rax + 0x24]
mov rcx, qword [rsp + 0x38]
movzx eax, word [rcx + rax*2 + 2]
shl eax, 3
movzx ecx, byte [rsp + 0x44]
imul rcx, rcx, 0x68
mov rdx, qword [rsp + 0xc8]
mov word [rdx + rcx + 0x34], ax
mov rax, qword [rsp + 0x38]
movzx eax, byte [rax + 9]
and al, 0x3f
movzx eax, al
cmp eax, 5
jne 0x14000a17e
movzx eax, byte [rsp + 0x20]
imul rax, rax, 0x18
mov rcx, qword [rsp + 0xc8]
movzx eax, byte [rcx + rax + 0x5a0]
cmp eax, 8
je 0x14000a145
mov r8d, 0x7e9
lea rdx, [0x140063010]
lea rcx, str.instruction__raw.imm_imm_id_.size__8
call sub.api_ms_win_crt_runtime_l1_1_0.dll__wassert
xor eax, eax
movzx eax, byte [rsp + 0x20]
imul rax, rax, 0x18
mov rcx, qword [rsp + 0xc8]
movzx eax, byte [rcx + rax + 0x598]
and eax, 0xf
movzx ecx, byte [rsp + 0x44]
imul rcx, rcx, 0x68
cdqe
mov rdx, qword [rsp + 0xc8]
mov qword [rdx + rcx + 0x80], rax
jmp 0x14000a1b0
movzx eax, byte [rsp + 0x20]
imul rax, rax, 0x18
movzx ecx, byte [rsp + 0x44]
imul rcx, rcx, 0x68
mov rdx, qword [rsp + 0xc8]
mov r8, qword [rsp + 0xc8]
mov rax, qword [r8 + rax + 0x598]
mov qword [rdx + rcx + 0x80], rax
movzx eax, byte [rsp + 0x20]
imul rax, rax, 0x18
movzx ecx, byte [rsp + 0x44]
imul rcx, rcx, 0x68
mov rdx, qword [rsp + 0xc8]
mov r8, qword [rsp + 0xc8]
movzx eax, byte [r8 + rax + 0x590]
mov byte [rdx + rcx + 0x78], al
movzx eax, byte [rsp + 0x20]
imul rax, rax, 0x18
movzx ecx, byte [rsp + 0x44]
imul rcx, rcx, 0x68
mov rdx, qword [rsp + 0xc8]
mov r8, qword [rsp + 0xc8]
movzx eax, byte [r8 + rax + 0x591]
mov byte [rdx + rcx + 0x79], al
movzx eax, byte [rsp + 0x20]
inc al
mov byte [rsp + 0x20], al
movzx eax, byte [rsp + 0x44]
imul rax, rax, 0x68
mov rcx, qword [rsp + 0xc8]
cmp dword [rcx + rax + 0x24], 4
je 0x14000a24c
mov r8d, 0x7f7
lea rdx, [0x1400630e0]
lea rcx, str.instruction__operands_i_.type__ZYDIS_OPERAND_TYPE_IMMEDIATE
call sub.api_ms_win_crt_runtime_l1_1_0.dll__wassert
xor eax, eax
movzx eax, byte [rsp + 0x44]
imul rax, rax, 0x68
mov rcx, qword [rsp + 0xc8]
cmp dword [rcx + rax + 0x24], 2
jne 0x14000a4a8
mov rax, qword [rsp + 0xc8]
mov rax, qword [rax + 0x430]
and rax, 0x10000000
test rax, rax
je 0x14000a2a0
movzx eax, byte [rsp + 0x44]
imul rax, rax, 0x68
mov rcx, qword [rsp + 0xc8]
mov dword [rcx + rax + 0x4c], 0xbf
jmp 0x14000a4a8
mov rax, qword [rsp + 0xc8]
mov rax, qword [rax + 0x430]
and rax, 0x20000000
test rax, rax
je 0x14000a2d8
movzx eax, byte [rsp + 0x44]
imul rax, rax, 0x68
mov rcx, qword [rsp + 0xc8]
mov dword [rcx + rax + 0x4c], 0xc0
jmp 0x14000a4a8
mov rax, qword [rsp + 0xc8]
mov rax, qword [rax + 0x430]
and rax, 0x40000000
test rax, rax
je 0x14000a310
movzx eax, byte [rsp + 0x44]
imul rax, rax, 0x68
mov rcx, qword [rsp + 0xc8]
mov dword [rcx + rax + 0x4c], 0xc1
jmp 0x14000a4a8
mov rax, qword [rsp + 0xc8]
mov ecx, 0x80000000
mov rax, qword [rax + 0x430]
and rax, rcx
test rax, rax
je 0x14000a34a
movzx eax, byte [rsp + 0x44]
imul rax, rax, 0x68
mov rcx, qword [rsp + 0xc8]
mov dword [rcx + rax + 0x4c], 0xbe
jmp 0x14000a4a8
mov rax, qword [rsp + 0xc8]
movabs rcx, 0x100000000
mov rax, qword [rax + 0x430]
and rax, rcx
test rax, rax
je 0x14000a389
movzx eax, byte [rsp + 0x44]
imul rax, rax, 0x68
mov rcx, qword [rsp + 0xc8]
mov dword [rcx + rax + 0x4c], 0xc2
jmp 0x14000a4a8
mov rax, qword [rsp + 0xc8]
movabs rcx, 0x200000000
mov rax, qword [rax + 0x430]
and rax, rcx
test rax, rax
je 0x14000a3c8
movzx eax, byte [rsp + 0x44]
imul rax, rax, 0x68
mov rcx, qword [rsp + 0xc8]
mov dword [rcx + rax + 0x4c], 0xc3
jmp 0x14000a4a8
movzx eax, byte [rsp + 0x44]
imul rax, rax, 0x68
mov rcx, qword [rsp + 0xc8]
cmp dword [rcx + rax + 0x4c], 0
jne 0x14000a4a8
movzx eax, byte [rsp + 0x44]
imul rax, rax, 0x68
mov rcx, qword [rsp + 0xc8]
cmp dword [rcx + rax + 0x50], 0x39
je 0x14000a474
movzx eax, byte [rsp + 0x44]
imul rax, rax, 0x68
mov rcx, qword [rsp + 0xc8]
cmp dword [rcx + rax + 0x50], 0x3a
je 0x14000a474
movzx eax, byte [rsp + 0x44]
imul rax, rax, 0x68
mov rcx, qword [rsp + 0xc8]
cmp dword [rcx + rax + 0x50], 0x29
je 0x14000a474
movzx eax, byte [rsp + 0x44]
imul rax, rax, 0x68
mov rcx, qword [rsp + 0xc8]
cmp dword [rcx + rax + 0x50], 0x2a
je 0x14000a474
movzx eax, byte [rsp + 0x44]
imul rax, rax, 0x68
mov rcx, qword [rsp + 0xc8]
cmp dword [rcx + rax + 0x50], 0x19
je 0x14000a474
movzx eax, byte [rsp + 0x44]
imul rax, rax, 0x68
mov rcx, qword [rsp + 0xc8]
cmp dword [rcx + rax + 0x50], 0x1a
jne 0x14000a48f
movzx eax, byte [rsp + 0x44]
imul rax, rax, 0x68
mov rcx, qword [rsp + 0xc8]
mov dword [rcx + rax + 0x4c], 0xc0
jmp 0x14000a4a8
movzx eax, byte [rsp + 0x44]
imul rax, rax, 0x68
mov rcx, qword [rsp + 0xc8]
mov dword [rcx + rax + 0x4c], 0xc1
movzx eax, byte [rsp + 0x44]
imul rax, rax, 0x68
mov rcx, qword [rsp + 0xc8]
lea rax, [rcx + rax + 0x20]
mov r9, qword [rsp + 0x38]
mov r8, rax
mov rdx, qword [rsp + 0xc8]
mov rcx, qword [rsp + 0xc0]
call fcn.140007720
mov rax, qword [rsp + 0x38]
add rax, 0xc
mov qword [rsp + 0x38], rax
jmp 0x1400091e6
mov rax, qword [rsp + 0xc8]
cmp dword [rax + 0x490], 2
jne 0x14000a5c0
mov rax, qword [rsp + 0xc8]
movzx eax, byte [rax + 0x18]
cmp eax, 1
jge 0x14000a52f
mov r8d, 0x830
lea rdx, [0x1400631e0]
lea rcx, str.instruction__operand_count___1
call sub.api_ms_win_crt_runtime_l1_1_0.dll__wassert
xor eax, eax
mov eax, 0x68
imul rax, rax, 0
mov rcx, qword [rsp + 0xc8]
movzx eax, byte [rcx + rax + 0x2c]
mov byte [rsp + 0xac], al
cmp byte [rsp + 0xac], 2
je 0x14000a562
cmp byte [rsp + 0xac], 3
je 0x14000a5aa
jmp 0x14000a5c0
mov eax, 0x68
imul rax, rax, 0
mov rcx, qword [rsp + 0xc8]
cmp dword [rcx + rax + 0x24], 2
jne 0x14000a592
mov eax, 0x68
imul rax, rax, 0
mov rcx, qword [rsp + 0xc8]
mov byte [rcx + rax + 0x2c], 8
jmp 0x14000a5a8
mov eax, 0x68
imul rax, rax, 0
mov rcx, qword [rsp + 0xc8]
mov byte [rcx + rax + 0x2c], 9
jmp 0x14000a5c0
mov eax, 0x68
imul rax, rax, 0
mov rcx, qword [rsp + 0xc8]
mov byte [rcx + rax + 0x2c], 9
mov eax, 0x100000
mov rdi, rax
mov rcx, rsp
lea rdx, [0x1400146d0]
call fcn.140003544
mov rax, rdi
add rsp, 0xb0
pop rdi
ret