Function at 0x14001d3dc
Capabilities:
Encode data using xor
Encrypt data using speck
Resolve function by parsing pe exports

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0xd68
movaps xmmword [rsp + 0xd50], xmm6
mov rdi, r9
mov qword [rsp + 0x48], rcx
lea rsi, [rsp + 0x4e0]
mov rcx, rsi
call fcn.1400425c6
mov r12, qword [rsi + 0x30]
mov r13, qword [rsi]
mov r11, qword [rsi + 8]
mov r15, qword [rsi + 0x10]
mov rbp, qword [rsi + 0x18]
mov rsi, qword [rsi + 0x20]
cmp r12, 2
jne 0x14001d46d
mov r14, r13
mov r13, r11
mov r11, r15
mov rax, qword [rsp + 0x48]
mov byte [rax], 0x13
mov qword [rax + 8], r14
mov qword [rax + 0x10], r13
mov qword [rax + 0x18], r11
mov qword [rax + 0x20], rbp
mov qword [rax + 0x28], rsi
movaps xmm6, xmmword [rsp + 0xd50]
add rsp, 0xd68
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
mov rbx, qword [rsp + 0x508]
mov r10, qword [rsp + 0x518]
mov rax, qword [rsp + 0x520]
mov qword [rsp + 0xf0], rax
test r12, r12
jne 0x14001d4d2
mov rax, r10
shr rax, 0x20
je 0x14001d4d2
test r15, 0xfffffffffffffffd
je 0x14001d4c1
test rbp, rbp
je 0x14001d4c1
mov rcx, qword [0x1402fea40]
xor edx, edx
mov r8, rsi
mov rsi, r11
call qword [sym.imp.kernel32.dll_HeapFree]
mov r11, rsi
mov r13d, 2
mov r14d, 1
jmp 0x14001d435
mov qword [rsp + 0x80], rdi
lea rdi, [rsp + 0xb0]
mov qword [rdi - 0x28], r15
mov qword [rdi - 0x20], rbp
mov qword [rdi - 0x18], rsi
mov qword [rdi - 0x10], rbx
mov qword [rdi - 8], r12
mov qword [rdi], r10
mov rax, qword [rsp + 0xf0]
mov qword [rdi + 8], rax
mov al, byte [rdi + 0xc]
test al, al
je 0x14001d578
mov dword [rsp + 0x38], eax
mov rdi, r10
lea r14, [rsp + 0x4e0]
lea r9, [rsp + 0x88]
mov rcx, r14
mov rdx, r13
mov r8, r11
call fcn.140056ac2
mov r14, qword [r14]
cmp r14, 3
jne 0x14001d5b1
mov r11, qword [rsp + 0x4f8]
mov r13, qword [rsp + 0x500]
mov r8b, byte [rsp + 0xbd]
mov r9d, dword [rsp + 0xb8]
cmp r15, 2
je 0x14001d605
test r15, r15
mov r10, rbx
jne 0x14001d60d
xor r15d, r15d
jmp 0x14001d64f
mov rbx, r11
mov r11d, dword [rsp + 0xb8]
mov r8b, byte [rsp + 0xbd]
test r12, r12
je 0x14001d5e3
mov byte [rsp + 0x118], 8
mov qword [rsp + 0x120], r10
mov qword [rsp + 0x110], 1
jmp 0x14001d78c
mov r13, qword [rsp + 0x4e8]
mov r11, qword [rsp + 0x4f0]
mov rbp, qword [rsp + 0x4f8]
mov rsi, qword [rsp + 0x500]
test r15, 0xfffffffffffffffd
je 0x14001d435
jmp 0x14001d982
cmp r10, rbx
jbe 0x14001d69a
mov qword [rsp + 0x110], 0
mov qword [rsp + 0x118], r10
jmp 0x14001d78c
mov rdx, rdi
mov r10, rbx
jmp 0x14001d652
mov rcx, r10
mov byte [rsp + 0x40], r8b
mov qword [rsp + 0x68], r9
mov r15, r11
call fcn.140057961
mov rbp, rax
mov r14, rdx
mov rcx, rdx
mov rdx, rsi
mov r8, rbx
call sub.VCRUNTIME140.dll_memcpy
mov r11, r15
mov r10, rbx
mov r9, qword [rsp + 0x68]
mov r8b, byte [rsp + 0x40]
mov r15d, 1
mov rsi, r14
mov rdx, rdi
mov rdi, rsi
movups xmm0, xmmword [rsp + 0x88]
movdqu xmm1, xmmword [rsp + 0x98]
movdqu xmmword [rsp + 0xd2], xmm1
movups xmmword [rsp + 0xc2], xmm0
lea rax, [rsp + 0xb0]
movdqu xmm0, xmmword [rax]
movdqa xmmword [rsp + 0x50], xmm0
mov rsi, r15
mov rcx, r12
mov r15, rbp
mov rbx, r13
jmp 0x14001dc56
lea eax, [r11 - 1]
cmp eax, 0x1d
ja case.0x14001d6b5.4
lea rcx, [0x14001e828]
movsxd rax, dword [rcx + rax*4]
add rax, rcx
jmp rax
test r8b, r8b
je case.0x14001d6b5.4
mov qword [rsp + 0x110], 1
mov word [rsp + 0x118], 0x110
jmp 0x14001d78c
test r10, r10
je 0x14001d6f1
lea rax, [r10 - 1]
cmp rax, rbx
jae 0x14001d6f1
cmp byte [r13 + rax], 0x5a
je case.0x14001d6b5.4
mov qword [rsp + 0x110], 1
mov word [rsp + 0x118], 0x310
jmp 0x14001d78c
cmp r10, 1
jne 0x14001d76c
test rbx, rbx
je 0x14001e7a1
mov al, byte [r13]
dec al
cmp al, 0xfe
jae 0x14001da75
mov qword [rsp + 0x110], 1
mov word [rsp + 0x118], 0x610
jmp 0x14001d78c
test r10, r10
je 0x14001e75e
cmp r10, 1
je 0x14001da75
cmp byte [r13], 0
je 0x14001e779
mov rax, r10
shr rax, 0x20
je 0x14001da75
mov qword [rsp + 0x110], 1
mov qword [rsp + 0x118], 2
mov qword [rsp + 0x120], rbx
mov qword [rsp + 0x150], 0x1d
mov rax, qword [rsp + 0x150]
cmp rax, 0x1d
jne 0x14001d842
mov r14, qword [rsp + 0x110]
cmp r14, 1
jne 0x14001d954
cmp byte [rsp + 0x118], 5
jne 0x14001d954
mov rbp, r11
mov edi, r8d
mov qword [rsp + 0x68], r10
lea rsi, [rsp + 0x4e0]
lea r9, [rsp + 0x88]
mov rcx, rsi
mov rdx, r13
mov r8, rbx
call fcn.140056ac2
mov r14, qword [rsi]
cmp r14, 3
jne 0x14001d9b3
mov r14, qword [rsp + 0x4e8]
mov r13, qword [rsp + 0x4f0]
mov r11, qword [rsp + 0x4f8]
mov rbx, qword [rsp + 0x500]
mov rax, qword [rsp + 0x88]
cmp rax, 2
mov r8d, edi
mov r9, rbp
jne 0x14001da12
mov esi, 2
jmp 0x14001db8c
mov r14, qword [rsp + 0x110]
mov r13, qword [rsp + 0x118]
mov r11, qword [rsp + 0x120]
mov rbx, qword [rsp + 0x128]
mov rsi, qword [rsp + 0x130]
mov rcx, qword [rsp + 0x138]
mov qword [rsp + 0x40], rcx
mov r15, qword [rsp + 0x140]
mov r10, qword [rsp + 0x148]
mov rdx, qword [rsp + 0x158]
mov r9d, dword [rsp + 0x160]
mov cl, byte [rsp + 0x164]
mov dword [rsp + 0x38], ecx
mov r8b, byte [rsp + 0x165]
movzx ecx, word [rsp + 0x166]
mov word [rsp + 0x4e0], cx
movups xmm0, xmmword [rsp + 0x88]
movdqu xmm1, xmmword [rsp + 0x98]
movdqu xmmword [rsp + 0x4f2], xmm1
movups xmmword [rsp + 0x4e2], xmm0
mov r12, qword [rsp + 0xa8]
movups xmm0, xmmword [rdi]
movaps xmmword [rsp + 0x50], xmm0
movzx ecx, word [rsp + 0x4e0]
mov word [rsp + 0xc0], cx
mov rcx, qword [rsp + 0x4e2]
mov qword [rsp + 0xc2], rcx
mov ecx, dword [rsp + 0x4ea]
mov dword [rsp + 0xca], ecx
movzx ecx, word [rsp + 0x4ee]
mov word [rsp + 0xce], cx
movzx ecx, word [rsp + 0x500]
mov word [rsp + 0xe0], cx
mov rcx, r12
movdqu xmm0, xmmword [rsp + 0x4f0]
movdqa xmmword [rsp + 0xd0], xmm0
jmp 0x14001dc3e
mov r13, qword [rsp + 0x118]
mov r11, qword [rsp + 0x120]
mov rbp, qword [rsp + 0x128]
mov rsi, qword [rsp + 0x130]
test byte [rsp + 0x88], 1
je 0x14001d435
cmp qword [rsp + 0x90], 0
je 0x14001d435
mov r8, qword [rsp + 0x98]
mov rcx, qword [0x1402fea40]
xor edx, edx
mov rdi, r11
call qword [sym.imp.kernel32.dll_HeapFree]
mov r11, rdi
jmp 0x14001d435
mov r13, qword [rsp + 0x4e8]
mov r11, qword [rsp + 0x4f0]
mov rbp, qword [rsp + 0x4f8]
mov rsi, qword [rsp + 0x500]
cmp byte [rsp + 0x118], 3
jne 0x14001da05
cmp qword [rsp + 0x120], 0
je 0x14001da05
mov r8, qword [rsp + 0x128]
mov rcx, qword [0x1402fea40]
xor edx, edx
mov rdi, r11
call qword [sym.imp.kernel32.dll_HeapFree]
mov r11, rdi
mov r15, qword [rsp + 0x88]
jmp 0x14001d5d1
test rax, rax
je 0x14001db75
mov rax, qword [rsp + 0x98]
mov qword [rsp + 0x38], rax
mov qword [rsp + 0x70], rbx
mov rbx, qword [rsp + 0xa0]
mov rcx, rbx
mov rsi, r11
call fcn.140057961
mov qword [rsp + 0x40], rax
mov rcx, rdx
mov r15, rdx
mov rdx, qword [rsp + 0x38]
mov qword [rsp + 0x78], rbx
mov r8, rbx
mov rbx, qword [rsp + 0x70]
call sub.VCRUNTIME140.dll_memcpy
mov r11, rsi
mov r9, rbp
mov r8d, edi
mov esi, 1
jmp 0x14001db8c
lea r9, [rsp + 0x930]
mov byte [r9 + 0x34], 0
mov r14d, r8d
mov byte [r9 + 0x35], r8b
mov r15, r11
mov dword [r9 + 0x30], r11d
mov qword [r9 + 0x20], 0
mov rbp, r10
mov qword [r9 + 0x28], r10
mov qword [r9], 2
lea rsi, [rsp + 0x4e0]
mov rcx, rsi
mov rdx, r13
mov r8, rbx
call fcn.140056ac2
mov rax, qword [rsi]
cmp rax, 3
jne 0x14001e62c
lea rsi, [rsp + 0x4e0]
mov rax, qword [rsi + 8]
mov qword [rsp + 0x38], rax
mov rax, qword [rsi + 0x10]
mov qword [rsp + 0x40], rax
movdqu xmm0, xmmword [rsi + 0x18]
mov rax, qword [rsp + 0x960]
lea rdx, [rsp + 0x990]
mov qword [rdx + 0x40], rax
movdqu xmm1, xmmword [rsp + 0x930]
movdqu xmm2, xmmword [rsp + 0x940]
movups xmm3, xmmword [rsp + 0x950]
movups xmmword [rdx + 0x30], xmm3
movdqu xmmword [rdx + 0x20], xmm2
movdqu xmmword [rdx + 0x10], xmm1
movdqu xmmword [rdx], xmm0
mov r8d, 0x32
mov rcx, rsi
call fcn.140054fdc
cmp dword [rsi + 0x68], 2
jne 0x14001e6ae
movdqu xmm0, xmmword [rsp + 0x4e0]
movdqu xmm1, xmmword [rsp + 0x4f0]
movdqu xmmword [rsp + 0x118], xmm0
movdqu xmmword [rsp + 0x128], xmm1
mov qword [rsp + 0x110], 1
jmp 0x14001e658
mov rax, qword [rsp + 0x90]
mov qword [rsp + 0x40], rax
mov r15, qword [rsp + 0x98]
xor esi, esi
movups xmm0, xmmword [rsp + 0x88]
movdqu xmm1, xmmword [rsp + 0x98]
movdqu xmmword [rsp + 0xd2], xmm1
movups xmmword [rsp + 0xc2], xmm0
mov rcx, qword [rsp + 0xa8]
lea rax, [rsp + 0xb0]
movdqu xmm0, xmmword [rax]
movdqa xmmword [rsp + 0x50], xmm0
cmp byte [rsp + 0x118], 3
mov rdx, qword [rsp + 0x68]
jne 0x14001dc2e
cmp qword [rsp + 0x120], 0
je 0x14001dc2e
mov r8, qword [rsp + 0x128]
mov qword [rsp + 0xe8], rcx
mov rcx, qword [0x1402fea40]
mov dword [rsp + 0x38], 0
xor edx, edx
mov qword [rsp + 0x70], rbx
mov rbx, r11
call qword [sym.imp.kernel32.dll_HeapFree]
mov rcx, qword [rsp + 0xe8]
mov r11, rbx
mov rbx, qword [rsp + 0x70]
mov r9, rbp
mov r8d, edi
mov rdx, qword [rsp + 0x68]
jmp 0x14001dc36
mov dword [rsp + 0x38], 0
mov rax, r12
mov r10, qword [rsp + 0x78]
mov r12, rax
mov rbp, rbx
cmp rcx, 2
mov rdi, r15
mov r15, qword [rsp + 0x40]
je 0x14001d435
movzx eax, word [rsp + 0xe0]
mov r14, rcx
lea rcx, [rsp + 0x8b0]
mov word [rcx + 0x66], ax
movaps xmm0, xmmword [rsp + 0xc0]
movdqa xmm1, xmmword [rsp + 0xd0]
movdqu xmmword [rcx + 0x56], xmm1
movups xmmword [rcx + 0x46], xmm0
movdqa xmm0, xmmword [rsp + 0x50]
movdqu xmmword [rcx + 0x70], xmm0
mov qword [rcx], r11
mov qword [rcx + 8], rbx
mov qword [rcx + 0x10], rsi
mov qword [rcx + 0x18], r15
mov qword [rcx + 0x20], rdi
mov qword [rcx + 0x28], r10
mov qword [rcx + 0x30], r12
mov qword [rcx + 0x38], rdx
mov dword [rcx + 0x40], r9d
mov eax, dword [rsp + 0x38]
mov byte [rcx + 0x44], al
mov byte [rcx + 0x45], r8b
mov qword [rcx + 0x68], r14
lea rsi, [0x140240690]
xor edx, edx
mov r8, rsi
call fcn.140056a74
mov rcx, rax
xor edx, edx
mov r8, rsi
call fcn.140056a74
mov rcx, qword [rax + 0x30]
add rcx, 0xfffffffffffffffe
cmp rcx, 0x1b
mov edx, 0x1b
cmovb rdx, rcx
add rdx, 0xfffffffffffffff9
cmp rdx, 2
jae 0x14001e7b3
mov rsi, qword [rsp + 0xdd0]
lea rcx, [rsp + 0xc0]
mov rdx, rax
call fcn.140041a93
lea rax, [0x140234321]
mov qword [rsp + 0x110], rax
mov rcx, qword [rsp + 0x110]
mov rax, qword [0x1402f85c0]
mov rdx, rax
shr rdx, 0x1d
xor rdx, rax
imul rax, rdx, 0x727e61ac
add rax, 0x65c13cf9
rol rax, 3
movzx eax, ax
add rax, rcx
pxor xmm0, xmm0
movdqa xmmword [rsp + 0x4e0], xmm0
mov cl, 1
xor edx, edx
lea r8, [0x1402406c0]
movzx r10d, byte [rdx + r8]
mov r9, rdx
or r9, 1
movzx r9d, byte [r9 + r8]
mov r11, rdx
or r11, 2
movzx r11d, byte [r11 + r8]
mov rdi, rdx
or rdi, 3
movzx edi, byte [rdi + r8]
mov rbx, rdx
or rbx, 4
movzx ebx, byte [rbx + r8]
mov r14, rdx
or r14, 5
movzx r14d, byte [r14 + r8]
mov r15, rdx
or r15, 6
mov r12, rdx
or r12, 7
movzx r15d, byte [r15 + r8]
movzx r12d, byte [r12 + r8]
shl r12, 0x38
shl r15, 0x30
or r15, r12
shl r14, 0x28
shl rbx, 0x20
shl rdi, 0x18
shl r11, 0x10
shl r9, 8
or r9, r10
or r9, r11
or r9, rdi
or r9, rbx
or r9, r14
or r9, r15
xor r9, qword [rax + rdx]
mov qword [rsp + rdx + 0x4e0], r9
mov edx, 8
test cl, 1
mov ecx, 0
jne 0x14001dd74
mov ecx, 0xd66ca431
xor ecx, dword [rax + 0x10]
mov dword [rsp + 0x4f0], ecx
mov al, byte [rax + 0x14]
xor al, 0xc4
mov byte [rsp + 0x4f4], al
cmp qword [rsp + 0xd0], 0x15
jne 0x14001de79
mov rax, qword [rsp + 0xc8]
movdqu xmm0, xmmword [rax]
movdqu xmm1, xmmword [rax + 5]
movdqu xmm2, xmmword [rsp + 0x4e5]
pcmpeqb xmm0, xmmword [rsp + 0x4e0]
pcmpeqb xmm2, xmm1
pand xmm0, xmm2
pmovmskb eax, xmm0
cmp eax, 0xffff
je 0x14001deb5
mov rax, qword [rsp + 0x48]
mov byte [rax], 0x15
cmp qword [rsp + 0xc0], 0
je 0x14001dea3
mov r8, qword [rsp + 0xc8]
mov rcx, qword [0x1402fea40]
xor edx, edx
call qword [sym.imp.kernel32.dll_HeapFree]
lea rcx, [rsp + 0x8b0]
call fcn.140008e60
jmp 0x14001d451
lea rdi, [0x1402406d8]
lea rcx, [rsp + 0x8b0]
xor edx, edx
mov r8, rdi
call fcn.140056a74
mov edx, 1
mov rcx, rax
mov r8, rdi
call fcn.140056a74
mov rcx, rax
xor edx, edx
mov r8, rdi
call fcn.140056a74
mov edx, 1
mov rcx, rax
mov r8, rdi
call fcn.140056a74
mov rcx, rax
xor edx, edx
mov r8, rdi
call fcn.140056a74
mov rdx, qword [rax + 0x30]
add rdx, 0xfffffffffffffffe
cmp rdx, 0x1b
mov ecx, 0x1b
cmovb rcx, rdx
cmp rcx, 0x1b
ja 0x14001de79
mov edx, 0x9c3fe1c
bt rdx, rcx
jae 0x14001de79
mov r13, qword [rax]
mov rdi, qword [rax + 8]
lea r14, [0x1402406f0]
lea rcx, [rsp + 0x8b0]
xor edx, edx
mov r8, r14
call fcn.140056a74
mov edx, 1
mov rcx, rax
mov r8, r14
call fcn.140056a74
mov rcx, rax
xor edx, edx
mov r8, r14
call fcn.140056a74
mov edx, 1
mov rcx, rax
mov r8, r14
call fcn.140056a74
mov edx, 1
mov rcx, rax
mov r8, r14
call fcn.140056a74
lea r14, [rsp + 0x4e0]
mov rcx, r14
mov rdx, rax
call fcn.140056919
mov al, byte [r14]
cmp al, 0x15
jne 0x14001e5f9
lea r14, [rsp + 0x4e0]
mov r12d, dword [r14 + 4]
lea r15, [0x140240708]
lea rcx, [rsp + 0x8b0]
xor edx, edx
mov r8, r15
call fcn.140056a74
mov edx, 1
mov rcx, rax
mov r8, r15
call fcn.140056a74
mov rcx, rax
xor edx, edx
mov r8, r15
call fcn.140056a74
mov edx, 1
mov rcx, rax
mov r8, r15
call fcn.140056a74
mov edx, 2
mov rcx, rax
mov r8, r15
call fcn.140056a74
mov rcx, r14
mov rdx, rax
call fcn.140056919
mov al, byte [r14]
cmp al, 0x15
jne 0x14001e5f9
mov ebx, dword [rsp + 0x4e4]
lea r8, [0x140240720]
lea rcx, [rsp + 0x8b0]
mov edx, 1
call fcn.140056a74
mov rdx, qword [rax + 0x30]
add rdx, 0xfffffffffffffffe
cmp rdx, 0x1b
mov ecx, 0x1b
cmovb rcx, rdx
cmp rcx, 0x1b
ja 0x14001de79
mov edx, 0x9c3fe1c
bt rdx, rcx
jae 0x14001de79
mov r15, qword [rax]
mov rax, qword [rax + 8]
mov qword [rsp + 0x38], rax
lea r14, [0x140240738]
lea rcx, [rsp + 0x8b0]
xor edx, edx
mov r8, r14
call fcn.140056a74
mov edx, 1
mov rcx, rax
mov r8, r14
call fcn.140056a74
mov edx, 1
mov rcx, rax
mov r8, r14
call fcn.140056a74
mov edx, 1
mov rcx, rax
mov r8, r14
call fcn.140056a74
mov rdx, qword [rax + 0x30]
add rdx, 0xfffffffffffffffe
cmp rdx, 0x1b
mov ecx, 0x1b
cmovb rcx, rdx
cmp rcx, 0x1b
ja 0x14001de79
mov edx, 0x9c3fe1c
bt rdx, rcx
jae 0x14001de79
cmp ebx, 0x20
jne 0x14001de79
mov qword [rsp + 0x68], r15
mov rcx, qword [rax]
mov qword [rsp + 0x40], rcx
mov r14, qword [rax + 8]
pxor xmm0, xmm0
lea r15, [rsp + 0x930]
movdqu xmmword [r15 + 0x4c], xmm0
movdqu xmmword [r15 + 0x3c], xmm0
movdqu xmmword [r15 + 0x2c], xmm0
movdqu xmmword [r15 + 0x1c], xmm0
movdqu xmm0, xmmword [0x1402a57a0]
movdqu xmmword [r15 + 8], xmm0
mov dword [r15 + 0x18], 0xc3d2e1f0
mov dword [r15 + 0x5c], 0
mov qword [r15], 0
mov rcx, r15
mov rdx, qword [rsp + 0x80]
mov r8, rsi
call fcn.1400e7824
mov ecx, 0x20
mov dl, 1
call fcn.14011f968
mov rbp, rax
mov rbx, rdx
lea rsi, [rsp + 0x4e0]
mov rcx, rsi
mov rdx, r15
call fcn.1400e89d4
mov eax, dword [rsi]
mov ecx, eax
shr ecx, 0x18
mov byte [rsp + 0x50], cl
mov ecx, eax
shr ecx, 0x10
mov byte [rsp + 0x51], cl
mov byte [rsp + 0x52], ah
mov byte [rsp + 0x53], al
mov eax, dword [rsi + 4]
mov ecx, eax
shr ecx, 0x18
mov byte [rsp + 0x54], cl
mov ecx, eax
shr ecx, 0x10
mov byte [rsp + 0x55], cl
mov byte [rsp + 0x56], ah
mov byte [rsp + 0x57], al
mov eax, dword [rsi + 8]
mov ecx, eax
shr ecx, 0x18
mov byte [rsp + 0x58], cl
mov ecx, eax
shr ecx, 0x10
mov byte [rsp + 0x59], cl
mov byte [rsp + 0x5a], ah
mov byte [rsp + 0x5b], al
mov eax, dword [rsi + 0xc]
mov ecx, eax
shr ecx, 0x18
mov byte [rsp + 0x5c], cl
mov ecx, eax
shr ecx, 0x10
mov byte [rsp + 0x5d], cl
mov byte [rsp + 0x5e], ah
mov byte [rsp + 0x5f], al
mov eax, dword [rsi + 0x10]
mov ecx, eax
shr ecx, 0x18
mov byte [rsp + 0x60], cl
mov ecx, eax
shr ecx, 0x10
mov byte [rsp + 0x61], cl
mov byte [rsp + 0x62], ah
mov byte [rsp + 0x63], al
mov byte [rsi], 0x15
test r12d, r12d
je 0x14001e736
mov qword [rsp + 0x78], rbp
lea rcx, [rsp + 0x4e0]
call fcn.140009500
mov qword [rsp + 0x20], rbx
mov qword [rsp + 0x28], 0x20
lea r9, [rsp + 0x50]
mov ecx, r12d
mov rdx, r13
mov r8, rdi
call fcn.1400d7a1f
lea rsi, [rsp + 0xe6]
mov word [rsi], 0xe04
lea rcx, [r14 + 2]
call fcn.1400809c7
lea rdi, [rsp + 0x88]
mov qword [rdi], rax
mov qword [rdi + 8], rdx
mov qword [rdi + 0x10], 0
mov r8d, 2
mov rcx, rdi
mov rdx, rsi
call fcn.14004353c
mov rcx, rdi
mov rdx, qword [rsp + 0x40]
mov r8, r14
call fcn.14004353c
cmp qword [rdi + 0x10], 0x10
jne 0x14001e801
mov rsi, qword [rsp + 0x90]
lea rdi, [rsp + 0x4e8]
mov rcx, rdi
mov rdx, rbx
call fcn.14003dfef
lea r14, [rsp + 0x990]
mov r8d, 0x3c0
mov rcx, r14
mov rdx, rdi
call sub.VCRUNTIME140.dll_memcpy
lea rcx, [rsp + 0x8a0]
mov rdx, rsi
call fcn.140004d98
lea rsi, [rsp + 0x4e0]
mov r8d, 0x3c0
mov rcx, rsi
mov rdx, r14
call sub.VCRUNTIME140.dll_memcpy
lea rcx, [rsp + 0x110]
mov r8d, 0x3d0
mov rdx, rsi
call sub.VCRUNTIME140.dll_memcpy
mov r14, qword [rsp + 0x38]
test r14b, 0xf
mov rsi, qword [rsp + 0x68]
jne 0x14001e7e5
mov qword [rsp + 0x40], rbx
mov rcx, r14
call fcn.1400809c7
mov qword [rsp + 0x70], rax
mov rdi, rdx
mov rcx, rdx
mov rdx, rsi
mov r8, r14
call sub.VCRUNTIME140.dll_memcpy
mov qword [rsp + 0x560], 0
xor eax, eax
pxor xmm0, xmm0
movdqu xmmword [rsp + rax + 0x4e0], xmm0
inc qword [rsp + 0x560]
add rax, 0x10
cmp rax, 0x80
jne 0x14001e379
mov ebx, r14d
shr ebx, 4
and ebx, 7
mov rbp, r14
and rbp, 0xffffffffffffff80
mov qword [rsp + 0x80], rdi
add rbp, rdi
lea rax, [rsp + 0x990]
lea rsi, [rsp + 0x4e0]
mov ecx, 0x10
mov rdi, rax
rep movsq qword [rdi], qword [rsi]
lea rdx, [rsp + 0x4d0]
mov rcx, rax
call fcn.140004d98
cmp r14, 0x80
jb 0x14001e4ab
lea r12, [rsp + 0x4e0]
lea rsi, [rsp + 0x110]
mov r13, qword [rsp + 0x80]
mov r8d, 0x70
lea rcx, [rsp + 0x9a0]
mov rdx, r13
call sub.VCRUNTIME140.dll_memcpy
lea rdx, [r13 + 0x70]
mov rcx, r12
call fcn.140004d98
mov edi, 8
mov rdx, r13
cmp rdi, 4
mov r14d, 4
cmovb r14, rdi
mov r15, r14
shl r15, 4
add r15, rdx
mov rcx, rsi
mov r8, r14
call fcn.14003e5f5
mov rdx, r15
sub rdi, r14
jne 0x14001e42b
mov rax, r13
lea rcx, [rsp + 0x990]
xor edx, edx
inc rdx
xor r8d, r8d
mov r9b, byte [rcx + r8]
xor byte [rax + r8], r9b
lea r9, [r8 + 1]
mov r8, r9
cmp r9, 0x10
jne 0x14001e469
add rcx, 0x10
add rax, 0x10
cmp rdx, 8
jne 0x14001e463
sub r13, 0xffffffffffffff80
movdqu xmm0, xmmword [rsp + 0x4e0]
movdqa xmmword [rsp + 0x990], xmm0
cmp r13, rbp
jne 0x14001e401
lea rdx, [rsp + 0x990]
lea rsi, [rsp + 0x4d0]
mov rcx, rsi
call fcn.140004d98
lea rcx, [rsp + 0x100]
mov rdx, rsi
call fcn.140004d98
test rbx, rbx
mov r12, qword [rsp + 0x80]
je 0x14001e58c
shl rbx, 4
add rbx, rbp
lea rsi, [rsp + 0xf0]
xorps xmm6, xmm6
lea rdi, [rsp + 0x110]
lea r14, [rsp + 0x4e0]
mov rcx, rsi
mov rdx, rbp
call fcn.140004d98
xor eax, eax
movups xmmword [rsp + rax + 0x4e0], xmm6
add rax, 0x10
cmp rax, 0x40
jne 0x14001e513
lea r15, [rbp + 0x10]
movups xmm0, xmmword [rbp]
movaps xmmword [rsp + 0x4e0], xmm0
mov r8d, 4
mov rcx, rdi
mov rdx, r14
call fcn.14003e5f5
movdqa xmm0, xmmword [rsp + 0x4e0]
movdqu xmmword [rbp], xmm0
xor eax, eax
mov cl, byte [rsp + rax + 0x100]
xor byte [rbp + rax], cl
lea rcx, [rax + 1]
mov rax, rcx
cmp rcx, 0x10
jne 0x14001e556
movdqu xmm0, xmmword [rsp + 0xf0]
movdqa xmmword [rsp + 0x100], xmm0
mov rbp, r15
cmp r15, rbx
jne 0x14001e506
test r12, r12
mov rcx, qword [rsp + 0x38]
je 0x14001e7e5
mov rax, qword [rsp + 0x48]
mov rdx, qword [rsp + 0x70]
mov qword [rax + 8], rdx
mov qword [rax + 0x10], r12
mov qword [rax + 0x18], rcx
mov byte [rax], 0x18
cmp qword [rsp + 0x88], 0
mov rsi, qword [rsp + 0x40]
mov rdi, qword [rsp + 0x78]
je 0x14001e5df
mov r8, qword [rsp + 0x90]
mov rcx, qword [0x1402fea40]
xor edx, edx
call qword [sym.imp.kernel32.dll_HeapFree]
test rdi, rdi
je 0x14001de81
mov rcx, qword [0x1402fea40]
xor edx, edx
mov r8, rsi
jmp 0x14001e753
cmp al, 3
jne 0x14001de79
cmp qword [rsp + 0x4e8], 0
je 0x14001de79
mov r8, qword [rsp + 0x4f0]
mov rcx, qword [0x1402fea40]
xor edx, edx
call qword [sym.imp.kernel32.dll_HeapFree]
jmp 0x14001de79
movdqu xmm0, xmmword [rsp + 0x4e8]
movdqu xmm1, xmmword [rsp + 0x4f8]
mov qword [rsp + 0x110], rax
movdqu xmmword [rsp + 0x118], xmm0
movdqu xmmword [rsp + 0x128], xmm1
mov qword [rsp + 0x150], 0x1d
mov r10, rbp
mov r8d, r14d
mov r11, r15
jmp 0x14001d798
test r8b, r8b
jne 0x14001d6c0
lea rcx, [rsp + 0x110]
mov rdx, r13
mov r15, rdi
mov edi, r8d
mov r8, rbx
mov r9, r10
mov rsi, r10
mov r14, r11
call fcn.140056efb
mov r11, r14
mov r8d, edi
mov rdi, r15
mov r10, rsi
jmp 0x14001d798
lea rax, [rsp + 0x8b0]
lea rdx, [rsp + 0x4e0]
mov ecx, 9
mov rdi, rax
mov rsi, rdx
rep movsq qword [rdi], qword [rsi]
mov r9, qword [rdx + 0x50]
test qword [rdx + 0x48], 0xfffffffffffffffd
mov r8, qword [rdx + 0x58]
lea rdx, [rsp + 0x120]
mov ecx, 9
mov rdi, rdx
mov rsi, rax
rep movsq qword [rdi], qword [rsi]
mov rax, qword [rsp + 0x38]
mov qword [rdx - 0x10], rax
mov rax, qword [rsp + 0x40]
mov qword [rdx - 8], rax
mov r10, rbp
mov r11, r15
je 0x14001e726
test r9, r9
je 0x14001e726
mov rcx, qword [0x1402fea40]
xor edx, edx
call qword [sym.imp.kernel32.dll_HeapFree]
mov r11, r15
mov r10, rbp
mov r8d, r14d
lea rdi, [rsp + 0xb0]
jmp 0x14001d798
mov rax, qword [rsp + 0x48]
mov byte [rax], 0x15
test rbp, rbp
je 0x14001de81
mov rcx, qword [0x1402fea40]
xor edx, edx
mov r8, rbx
call qword [sym.imp.kernel32.dll_HeapFree]
jmp 0x14001de81
mov qword [rsp + 0x110], 1
mov word [rsp + 0x118], 0x710
jmp 0x14001d78c
cmp byte [r13 + 1], 0
je 0x14001e786
js case.0x14001d6b5.4
mov qword [rsp + 0x110], 1
mov word [rsp + 0x118], 0x810
jmp 0x14001d78c
lea r8, str.C:Userskylef.cargo_registry_srcindex.crates.io_6f17d22bba15001fder_parser_8.1.0_srcderparser.rs
xor ecx, ecx
xor edx, edx
call fcn.140237970
ud2
lea r8, [rsp + 0x4e0]
mov byte [r8], 0
lea rax, [0x1402406a8]
mov qword [rsp + 0x20], rax
lea rcx, [0x1402d200b]
lea r9, fcn.14000891c
mov edx, 0x2b
call fcn.140237ca0
ud2
lea rax, [0x140240768]
mov qword [rsp + 0x20], rax
lea rcx, [0x1402d200b]
lea r9, [0x14023e4a8]
jmp 0x14001e81b
lea rax, [0x140240750]
mov qword [rsp + 0x20], rax
lea rcx, [0x1402d200b]
lea r9, [0x14023e4e8]
lea r8, [rsp + 0x4e0]
jmp 0x14001e7d9