Function at 0x1402f0310
Capabilities:
Encode data using xor
Hash data using sha512
Resolve function by parsing pe exports

Disassembly:
test r8, r8
je 0x1402f1f03
mov qword [rsp + 8], rcx
mov eax, pe_nt_image_headers64
call fcn.1403986f0
sub rsp, rax
mov r11, qword [rcx]
mov rax, r8
mov r9, qword [rcx + 0x38]
mov r10, qword [rcx + 0x18]
mov qword [rsp + 0x100], rbx
movabs rbx, 0x428a2f98d728ae22
mov qword [rsp + 0xf8], rbp
mov rbp, qword [rcx + 0x10]
mov qword [rsp + 0xf0], rsi
mov rsi, qword [rcx + 0x20]
mov qword [rsp + 0xe8], rdi
mov rdi, qword [rcx + 0x28]
mov qword [rsp + 0xe0], r12
mov r12, qword [rcx + 0x30]
mov qword [rsp + 0xd8], r13
lea r13, [rdx + 2]
mov qword [rsp + 0xd0], r14
mov r14, qword [rcx + 8]
mov qword [rsp + 0x88], r14
mov qword [rsp + 0xc8], r15
mov qword [rsp + 0x80], r11
mov qword [rsp + 0x90], rbp
mov qword [rsp + 0xa0], rsi
mov qword [rsp + 0xa8], rdi
mov qword [rsp + 0xb0], r12
mov qword [rsp + 0xb8], r9
mov qword [rsp + 0x98], r10
mov qword [rsp + 0x68], r13
movzx r8d, byte [r13 - 2]
dec rax
mov qword [rsp + 0x120], rax
mov rdx, rsi
movzx eax, byte [r13 - 1]
mov rcx, rsi
shl r8, 8
not rcx
or r8, rax
ror rdx, 0x29
movzx eax, byte [r13]
and rcx, r12
shl r8, 8
mov r15, r14
or r8, rax
xor r15, r11
movzx eax, byte [r13 + 1]
shl r8, 8
or r8, rax
movzx eax, byte [r13 + 2]
shl r8, 8
or r8, rax
movzx eax, byte [r13 + 3]
shl r8, 8
or r8, rax
movzx eax, byte [r13 + 4]
shl r8, 8
or r8, rax
movzx eax, byte [r13 + 5]
shl r8, 8
or r8, rax
mov rax, rsi
ror rax, 0x12
xor rdx, rax
mov qword [rsp + 0x60], r8
mov rax, rsi
ror rax, 0xe
xor rdx, rax
mov rax, rsi
and rax, rdi
add rdx, r8
xor rcx, rax
mov r8, r14
add rdx, rcx
and r8, r11
add rdx, rbx
mov rcx, r11
add rdx, r9
ror rcx, 0x27
movzx r9d, byte [r13 + 6]
mov rax, r11
ror rax, 0x22
mov rbx, rbp
shl r9, 8
xor rcx, rax
and rbx, r15
mov rax, r11
ror rax, 0x1c
xor rbx, r8
xor rax, rcx
add r10, rdx
add rax, rdx
add rbx, rax
movzx eax, byte [r13 + 7]
or r9, rax
movzx eax, byte [r13 + 8]
shl r9, 8
or r9, rax
movzx eax, byte [r13 + 9]
shl r9, 8
or r9, rax
movzx eax, byte [r13 + 0xa]
shl r9, 8
or r9, rax
movzx eax, byte [r13 + 0xb]
shl r9, 8
or r9, rax
movzx eax, byte [r13 + 0xc]
shl r9, 8
or r9, rax
shl r9, 8
movzx eax, byte [r13 + 0xd]
and r15, rbx
or r9, rax
xor r15, r8
movzx r8d, byte [r13 + 0xe]
mov rax, r10
ror rax, 0x12
mov rdx, r10
shl r8, 8
mov rcx, r10
ror rdx, 0x29
not rcx
xor rdx, rax
mov qword [rsp + 8], r9
and rcx, rdi
mov rax, r10
ror rax, 0xe
xor rdx, rax
mov rax, rsi
and rax, r10
xor rcx, rax
lea rax, [r12 + rdx]
movabs rdx, 0x7137449123ef65cd
add rcx, rax
mov rax, rbx
ror rax, 0x22
add rdx, rcx
add rdx, r9
mov rcx, rbx
ror rcx, 0x27
xor rcx, rax
mov rax, rbx
ror rax, 0x1c
xor rax, rcx
lea r9, [rdx + rbp]
add rax, rdx
mov rcx, r9
add r15, rax
not rcx
movzx eax, byte [r13 + 0xf]
and rcx, rsi
or r8, rax
mov rdx, r9
movzx eax, byte [r13 + 0x10]
shl r8, 8
or r8, rax
ror rdx, 0x29
movzx eax, byte [r13 + 0x11]
shl r8, 8
or r8, rax
movzx eax, byte [r13 + 0x12]
shl r8, 8
or r8, rax
movzx eax, byte [r13 + 0x13]
shl r8, 8
or r8, rax
movzx eax, byte [r13 + 0x14]
shl r8, 8
or r8, rax
movzx eax, byte [r13 + 0x15]
shl r8, 8
or r8, rax
mov rax, r9
ror rax, 0x12
xor rdx, rax
mov qword [rsp + 0x38], r8
mov rax, r9
ror rax, 0xe
xor rdx, rax
mov rax, r10
and rax, r9
xor rcx, rax
lea rax, [rdi + rdx]
movabs rdx, 0xb5c0fbcfec4d3b2f
add rcx, rax
mov rax, r15
add rdx, rcx
mov rcx, r15
add rdx, r8
ror rcx, 0x27
lea r8, [r14 + rdx]
movzx r14d, byte [r13 + 0x1e]
mov rdi, r11
ror rax, 0x22
xor rdi, r15
xor rcx, rax
shl r14, 8
and rdi, rbx
mov rax, r15
ror rax, 0x1c
xor rcx, rax
mov rax, r11
movzx r11d, byte [r13 + 0x16]
and rax, r15
xor rdi, rax
shl r11, 8
lea rax, [rdx + rcx]
mov rdx, r8
add rdi, rax
ror rdx, 0x29
movzx eax, byte [r13 + 0x17]
mov rcx, r8
or r11, rax
not rcx
movzx eax, byte [r13 + 0x18]
and rcx, r10
shl r11, 8
or r11, rax
movzx eax, byte [r13 + 0x19]
shl r11, 8
or r11, rax
movzx eax, byte [r13 + 0x1a]
shl r11, 8
or r11, rax
movzx eax, byte [r13 + 0x1b]
shl r11, 8
or r11, rax
movzx eax, byte [r13 + 0x1c]
shl r11, 8
or r11, rax
movzx eax, byte [r13 + 0x1d]
shl r11, 8
or r11, rax
mov rax, r8
ror rax, 0x12
xor rdx, rax
mov qword [rsp + 0x70], r11
mov rax, r8
ror rax, 0xe
xor rdx, rax
mov rax, r9
and rax, r8
xor rcx, rax
lea rax, [rsi + rdx]
movabs rdx, 0xe9b5dba58189dbbc
add rcx, rax
mov rsi, r15
add rdx, rcx
xor rsi, rdi
add rdx, r11
and rsi, rbx
mov r11, qword [rsp + 0x80]
mov rcx, rdi
ror rcx, 0x27
mov rax, rdi
ror rax, 0x22
add r11, rdx
xor rcx, rax
mov rax, rdi
ror rax, 0x1c
xor rcx, rax
mov rax, r15
and rax, rdi
xor rsi, rax
lea rax, [rdx + rcx]
add rsi, rax
movzx eax, byte [r13 + 0x1f]
or r14, rax
movzx eax, byte [r13 + 0x20]
shl r14, 8
or r14, rax
shl r14, 8
movzx eax, byte [r13 + 0x21]
mov rdx, r11
or r14, rax
ror rdx, 0x29
movzx eax, byte [r13 + 0x22]
mov rcx, r11
shl r14, 8
not rcx
or r14, rax
and rcx, r9
movzx eax, byte [r13 + 0x23]
shl r14, 8
or r14, rax
movzx eax, byte [r13 + 0x24]
shl r14, 8
or r14, rax
movzx eax, byte [r13 + 0x25]
shl r14, 8
or r14, rax
mov rax, r11
ror rax, 0x12
xor rdx, rax
mov qword [rsp + 0x48], r14
mov rax, r11
ror rax, 0xe
xor rdx, rax
mov rax, r8
and rax, r11
xor rcx, rax
lea rax, [r10 + rdx]
movabs rdx, 0x3956c25bf348b538
add rcx, rax
mov r10, rdi
add rdx, rcx
xor r10, rsi
add rdx, r14
and r10, r15
movzx r14d, byte [r13 + 0x26]
add rbx, rdx
shl r14, 8
mov rcx, rsi
ror rcx, 0x27
mov rax, rsi
ror rax, 0x22
xor rcx, rax
mov rax, rsi
ror rax, 0x1c
xor rcx, rax
mov rax, rdi
and rax, rsi
xor r10, rax
lea rax, [rdx + rcx]
mov rdx, rbx
add r10, rax
ror rdx, 0x29
movzx eax, byte [r13 + 0x27]
or r14, rax
movzx eax, byte [r13 + 0x28]
shl r14, 8
or r14, rax
movzx eax, byte [r13 + 0x29]
shl r14, 8
or r14, rax
movzx eax, byte [r13 + 0x2a]
shl r14, 8
or r14, rax
movzx eax, byte [r13 + 0x2b]
shl r14, 8
or r14, rax
movzx eax, byte [r13 + 0x2c]
shl r14, 8
or r14, rax
movzx eax, byte [r13 + 0x2d]
shl r14, 8
or r14, rax
mov rax, rbx
ror rax, 0x12
xor rdx, rax
mov qword [rsp + 0x128], r14
mov rax, rbx
ror rax, 0xe
xor rdx, rax
mov rcx, rbx
not rcx
mov rax, rbx
and rax, r11
and rcx, r8
xor rcx, rax
mov rbp, r10
lea rax, [r9 + rdx]
movzx r9d, byte [r13 + 0x2e]
add rcx, rax
shl r9, 8
movabs rdx, 0x59f111f1b605d019
mov rax, r10
ror rax, 0x22
add rdx, rcx
add rdx, r14
mov rcx, r10
ror rcx, 0x27
add r15, rdx
xor rcx, rax
mov r14, rsi
xor r14, r10
mov rax, r10
ror rax, 0x1c
and r14, rdi
xor rcx, rax
mov rax, rsi
and rax, r10
xor r14, rax
lea rax, [rdx + rcx]
mov rdx, r15
add r14, rax
ror rdx, 0x29
movzx eax, byte [r13 + 0x2f]
mov rcx, r15
or r9, rax
not rcx
movzx eax, byte [r13 + 0x30]
and rcx, r11
shl r9, 8
or r9, rax
movzx eax, byte [r13 + 0x31]
shl r9, 8
or r9, rax
movzx eax, byte [r13 + 0x32]
shl r9, 8
or r9, rax
movzx eax, byte [r13 + 0x33]
shl r9, 8
or r9, rax
movzx eax, byte [r13 + 0x34]
shl r9, 8
or r9, rax
movzx eax, byte [r13 + 0x35]
shl r9, 8
or r9, rax
mov rax, r15
ror rax, 0x12
xor rdx, rax
mov qword [rsp + 0x18], r9
mov rax, r15
ror rax, 0xe
xor rdx, rax
mov rax, rbx
and rax, r15
xor rcx, rax
lea rax, [r8 + rdx]
movabs rdx, 0x923f82a4af194f9b
add rcx, rax
mov rax, r14
add rdx, rcx
ror rax, 0x22
add rdx, r9
mov rcx, r14
ror rcx, 0x27
add rdi, rdx
xor rcx, rax
mov rax, r14
ror rax, 0x1c
xor rcx, rax
movzx r8d, byte [r13 + 0x36]
xor rbp, r14
shl r8, 8
and rbp, rsi
mov rax, r10
and rax, r14
xor rbp, rax
lea rax, [rdx + rcx]
add rbp, rax
mov rdx, rdi
movzx eax, byte [r13 + 0x37]
mov rcx, rdi
or r8, rax
ror rdx, 0x29
movzx eax, byte [r13 + 0x38]
not rcx
shl r8, 8
and rcx, rbx
or r8, rax
movzx eax, byte [r13 + 0x39]
shl r8, 8
or r8, rax
movzx eax, byte [r13 + 0x3a]
shl r8, 8
or r8, rax
movzx eax, byte [r13 + 0x3b]
shl r8, 8
or r8, rax
movzx eax, byte [r13 + 0x3c]
shl r8, 8
or r8, rax
movzx eax, byte [r13 + 0x3d]
shl r8, 8
or r8, rax
mov rax, rdi
ror rax, 0x12
xor rdx, rax
mov qword [rsp], r8
mov rax, rdi
ror rax, 0xe
xor rdx, rax
mov rax, r15
and rax, rdi
xor rcx, rax
lea rax, [r11 + rdx]
movabs rdx, 0xab1c5ed5da6d8118
add rcx, rax
mov r11, r14
add rdx, rcx
xor r11, rbp
add rdx, r8
and r11, r10
movzx r8d, byte [r13 + 0x3e]
mov rcx, rbp
shl r8, 8
mov rax, rbp
ror rax, 0x22
add rsi, rdx
ror rcx, 0x27
xor rcx, rax
mov rax, rbp
ror rax, 0x1c
xor rcx, rax
mov rax, r14
and rax, rbp
xor r11, rax
lea rax, [rdx + rcx]
add r11, rax
movzx eax, byte [r13 + 0x3f]
or r8, rax
movzx eax, byte [r13 + 0x40]
shl r8, 8
or r8, rax
movzx eax, byte [r13 + 0x41]
shl r8, 8
or r8, rax
movzx eax, byte [r13 + 0x42]
shl r8, 8
or r8, rax
movzx eax, byte [r13 + 0x43]
shl r8, 8
or r8, rax
mov rdx, rsi
movzx eax, byte [r13 + 0x44]
mov rcx, rsi
not rcx
shl r8, 8
and rcx, r15
ror rdx, 0x29
or r8, rax
mov r9, rbp
movzx eax, byte [r13 + 0x45]
and r9, r11
shl r8, 8
or r8, rax
mov rax, rsi
ror rax, 0x12
xor rdx, rax
mov qword [rsp + 0x10], r8
mov rax, rsi
ror rax, 0xe
xor rdx, rax
mov rax, rdi
and rax, rsi
xor rcx, rax
lea rax, [rbx + rdx]
mov rdx, r11
add rcx, rax
ror rdx, 0x27
movabs rax, 0xd807aa98a3030242
add rax, rcx
mov rcx, r11
ror rcx, 0x22
add r8, rax
xor rdx, rcx
add r10, r8
mov rcx, r11
mov rax, rbp
ror rcx, 0x1c
xor rax, r11
xor rcx, rdx
mov r13, rax
mov rdx, qword [rsp + 0x68]
add rcx, r8
and r13, r14
mov r8, r10
xor r13, r9
ror r8, 0x29
add r13, rcx
movzx ecx, byte [rdx + 0x47]
movzx ebx, byte [rdx + 0x46]
shl rbx, 8
or rbx, rcx
movzx ecx, byte [rdx + 0x48]
shl rbx, 8
or rbx, rcx
movzx ecx, byte [rdx + 0x49]
shl rbx, 8
or rbx, rcx
movzx ecx, byte [rdx + 0x4a]
shl rbx, 8
or rbx, rcx
movzx ecx, byte [rdx + 0x4b]
shl rbx, 8
or rbx, rcx
movzx ecx, byte [rdx + 0x4c]
shl rbx, 8
or rbx, rcx
movzx ecx, byte [rdx + 0x4d]
shl rbx, 8
mov rdx, r10
or rbx, rcx
not rdx
mov rcx, r10
mov qword [rsp + 0x118], rbx
ror rcx, 0x12
xor r8, rcx
mov rcx, r10
ror rcx, 0xe
xor r8, rcx
mov rcx, rsi
and rdx, rdi
and rcx, r10
and rax, r13
xor rdx, rcx
xor rax, r9
lea rcx, [r15 + r8]
mov r15, qword [rsp + 0x68]
add rdx, rcx
movabs r8, 0x12835b0145706fbe
add r8, rdx
mov rcx, r13
ror rcx, 0x22
add r8, rbx
movzx r9d, byte [r15 + 0x4e]
add r14, r8
shl r9, 8
mov rdx, r13
ror rdx, 0x27
xor rdx, rcx
mov rcx, r13
ror rcx, 0x1c
xor rcx, rdx
mov rdx, r14
add rcx, r8
not rdx
add rax, rcx
and rdx, rsi
movzx ecx, byte [r15 + 0x4f]
mov r8, r14
or r9, rcx
ror r8, 0x29
movzx ecx, byte [r15 + 0x50]
mov r12, rax
shl r9, 8
xor r12, r11
or r9, rcx
and r12, r13
movzx ecx, byte [r15 + 0x51]
shl r9, 8
or r9, rcx
movzx ecx, byte [r15 + 0x52]
shl r9, 8
or r9, rcx
movzx ecx, byte [r15 + 0x53]
shl r9, 8
or r9, rcx
movzx ecx, byte [r15 + 0x54]
shl r9, 8
or r9, rcx
movzx ecx, byte [r15 + 0x55]
shl r9, 8
or r9, rcx
mov rcx, r14
ror rcx, 0x12
xor r8, rcx
mov qword [rsp + 0x40], r9
mov rcx, r14
ror rcx, 0xe
xor r8, rcx
mov rcx, r10
and rcx, r14
xor rdx, rcx
lea rcx, [rdi + r8]
movabs r8, 0x243185be4ee4b28c
add rdx, rcx
mov rcx, rax
ror rcx, 0x22
add r8, rdx
add r8, r9
mov rdx, rax
movzx r9d, byte [r15 + 0x56]
add rbp, r8
ror rdx, 0x27
xor rdx, rcx
mov rcx, rax
ror rcx, 0x1c
xor rdx, rcx
mov rcx, rax
and rcx, r11
xor r12, rcx
lea rcx, [r8 + rdx]
add r12, rcx
movzx ecx, byte [r15 + 0x57]
mov r8, rbp
shl r9, 8
mov rdx, rbp
or r9, rcx
ror r8, 0x29
movzx ecx, byte [r15 + 0x58]
not rdx
shl r9, 8
and rdx, r10
or r9, rcx
mov rbx, rax
movzx ecx, byte [r15 + 0x59]
xor rbx, r12
shl r9, 8
and rbx, r13
or r9, rcx
movzx ecx, byte [r15 + 0x5a]
shl r9, 8
or r9, rcx
movzx ecx, byte [r15 + 0x5b]
shl r9, 8
or r9, rcx
movzx ecx, byte [r15 + 0x5c]
shl r9, 8
or r9, rcx
movzx ecx, byte [r15 + 0x5d]
shl r9, 8
or r9, rcx
mov rcx, rbp
ror rcx, 0x12
xor r8, rcx
mov qword [rsp + 0x50], r9
mov rcx, rbp
ror rcx, 0xe
xor r8, rcx
mov rcx, r14
and rcx, rbp
xor rdx, rcx
lea rcx, [rsi + r8]
movabs r8, 0x550c7dc3d5ffb4e2
add rdx, rcx
mov rcx, r12
ror rcx, 0x22
add r8, rdx
add r8, r9
mov rdx, r12
movzx r9d, byte [r15 + 0x5e]
add r11, r8
shl r9, 8
ror rdx, 0x27
xor rdx, rcx
mov rcx, r12
ror rcx, 0x1c
xor rdx, rcx
mov rcx, rax
and rcx, r12
xor rbx, rcx
lea rcx, [r8 + rdx]
add rbx, rcx
movzx ecx, byte [r15 + 0x5f]
or r9, rcx
movzx ecx, byte [r15 + 0x60]
shl r9, 8
or r9, rcx
movzx ecx, byte [r15 + 0x61]
shl r9, 8
or r9, rcx
movzx ecx, byte [r15 + 0x62]
shl r9, 8
or r9, rcx
movzx ecx, byte [r15 + 0x63]
shl r9, 8
or r9, rcx
movzx ecx, byte [r15 + 0x64]
shl r9, 8
or r9, rcx
movzx ecx, byte [r15 + 0x65]
shl r9, 8
or r9, rcx
mov qword [rsp + 0x58], r9
mov r8, r11
mov rcx, r11
ror rcx, 0x12
mov rdx, r11
not rdx
ror r8, 0x29
xor r8, rcx
and rdx, r14
mov rcx, r11
mov rdi, r12
ror rcx, 0xe
xor rdi, rbx
xor r8, rcx
and rdi, rax
mov rcx, rbp
and rcx, r11
xor rdx, rcx
lea rcx, [r10 + r8]
movabs r8, 0x72be5d74f27b896f
add rdx, rcx
mov rcx, rbx
ror rcx, 0x22
add r8, rdx
add r8, r9
mov rdx, rbx
movzx r9d, byte [r15 + 0x66]
add r13, r8
shl r9, 8
ror rdx, 0x27
xor rdx, rcx
mov rcx, rbx
ror rcx, 0x1c
xor rdx, rcx
mov rcx, r12
and rcx, rbx
xor rdi, rcx
lea rcx, [r8 + rdx]
mov r8, r13
add rdi, rcx
ror r8, 0x29
movzx ecx, byte [r15 + 0x67]
mov rdx, r13
or r9, rcx
not rdx
movzx ecx, byte [r15 + 0x68]
and rdx, rbp
shl r9, 8
or r9, rcx
movzx ecx, byte [r15 + 0x69]
shl r9, 8
or r9, rcx
movzx ecx, byte [r15 + 0x6a]
shl r9, 8
or r9, rcx
movzx ecx, byte [r15 + 0x6b]
shl r9, 8
or r9, rcx
movzx ecx, byte [r15 + 0x6c]
shl r9, 8
or r9, rcx
movzx ecx, byte [r15 + 0x6d]
shl r9, 8
or r9, rcx
mov rcx, r13
ror rcx, 0x12
xor r8, rcx
mov qword [rsp + 0x20], r9
mov rcx, r13
ror rcx, 0xe
xor r8, rcx
mov rcx, r13
and rcx, r11
xor rdx, rcx
lea rcx, [r9 + r8]
movabs r8, 0x80deb1fe3b1696b1
add rdx, rcx
add r8, rdx
mov rdx, rdi
add r8, r14
add rax, r8
ror rdx, 0x27
movzx r9d, byte [r15 + 0x6e]
mov rcx, rdi
movzx r10d, byte [r15 + 0x76]
mov rsi, rbx
ror rcx, 0x22
xor rsi, rdi
xor rdx, rcx
shl r9, 8
and rsi, r12
shl r10, 8
mov rcx, rdi
ror rcx, 0x1c
xor rdx, rcx
mov rcx, rbx
and rcx, rdi
xor rsi, rcx
lea rcx, [r8 + rdx]
mov r8, rax
add rsi, rcx
ror r8, 0x29
movzx ecx, byte [r15 + 0x6f]
mov rdx, rax
or r9, rcx
not rdx
movzx ecx, byte [r15 + 0x70]
and rdx, r11
shl r9, 8
or r9, rcx
movzx ecx, byte [r15 + 0x71]
shl r9, 8
or r9, rcx
movzx ecx, byte [r15 + 0x72]
shl r9, 8
or r9, rcx
movzx ecx, byte [r15 + 0x73]
shl r9, 8
or r9, rcx
movzx ecx, byte [r15 + 0x74]
shl r9, 8
or r9, rcx
movzx ecx, byte [r15 + 0x75]
shl r9, 8
or r9, rcx
mov rcx, rax
ror rcx, 0x12
xor r8, rcx
mov qword [rsp + 0x30], r9
mov rcx, rax
ror rcx, 0xe
xor r8, rcx
mov rcx, r13
and rcx, rax
xor rdx, rcx
lea rcx, [r9 + r8]
movabs r8, 0x9bdc06a725c71235
add rdx, rcx
mov rcx, rsi
ror rcx, 0x22
add r8, rdx
add r8, rbp
mov rdx, rsi
ror rdx, 0x27
mov rbp, rdi
xor rdx, rcx
xor rbp, rsi
and rbp, rbx
mov rcx, rsi
ror rcx, 0x1c
add r12, r8
xor rdx, rcx
mov rcx, rdi
and rcx, rsi
xor rbp, rcx
lea rcx, [r8 + rdx]
add rbp, rcx
movzx ecx, byte [r15 + 0x77]
or r10, rcx
movzx ecx, byte [r15 + 0x78]
shl r10, 8
or r10, rcx
shl r10, 8
movzx ecx, byte [r15 + 0x79]
mov r8, r12
or r10, rcx
ror r8, 0x29
movzx ecx, byte [r15 + 0x7a]
mov rdx, r12
shl r10, 8
not rdx
or r10, rcx
and rdx, r13
movzx ecx, byte [r15 + 0x7b]
mov r14, rsi
shl r10, 8
xor r14, rbp
or r10, rcx
and r14, rdi
movzx ecx, byte [r15 + 0x7c]
shl r10, 8
or r10, rcx
movzx ecx, byte [r15 + 0x7d]
shl r10, 8
or r10, rcx
mov rcx, r12
ror rcx, 0x12
xor r8, rcx
mov qword [rsp + 0x28], r10
mov rcx, r12
ror rcx, 0xe
xor r8, rcx
mov rcx, rax
and rcx, r12
xor rdx, rcx
lea rcx, [r10 + r8]
movabs r8, 0xc19bf174cf692694
add rdx, rcx
lea r10, [0x140426970]
add r8, rdx
mov qword [rsp + 0x78], r10
add r8, r11
mov rdx, rbp
mov r11, qword [rsp + 0x60]
mov rcx, rbp
ror rcx, 0x22
add rbx, r8
ror rdx, 0x27
xor rdx, rcx
mov rcx, rbp
ror rcx, 0x1c
xor rdx, rcx
mov rcx, rsi
and rcx, rbp
xor r14, rcx
lea rcx, [r8 + rdx]
add r14, rcx
nop dword [rax]
mov r8, r9
mov rcx, r9
ror rcx, 0x13
mov r15, rbp
ror r8, 0x3d
xor r15, r14
xor r8, rcx
mov rcx, r9
mov r9, qword [rsp + 8]
shr rcx, 6
mov rdx, r9
xor r8, rcx
ror rdx, 8
mov rcx, r9
ror rcx, 1
xor rdx, rcx
mov rcx, r9
shr rcx, 7
mov r9, rbp
xor rdx, rcx
and r9, r14
mov rcx, qword [rsp + 0x118]
add rcx, r8
mov r8, rbx
add rdx, rcx
ror r8, 0x29
add r11, rdx
mov rcx, rbx
ror rcx, 0x12
mov rdx, rbx
xor r8, rcx
mov qword [rsp + 0x60], r11
not rdx
mov rcx, rbx
ror rcx, 0xe
and rdx, rax
xor r8, rcx
mov rcx, r12
and rcx, rbx
xor rdx, rcx
mov rcx, r14
add r8, rdx
ror rcx, 0x22
add r8, qword [r10 - 0x10]
mov rdx, r14
ror rdx, 0x27
add r8, r11
xor rdx, rcx
add r8, r13
mov r13, qword [rsp + 0x38]
add rdi, r8
mov rcx, r14
mov r10, r15
ror rcx, 0x1c
and r10, rsi
xor rcx, rdx
xor r10, r9
mov rdx, qword [rsp + 0x28]
add rcx, r8
add r10, rcx
mov r8, rdx
mov rcx, rdx
ror r8, 0x3d
ror rcx, 0x13
xor r8, rcx
mov rcx, rdx
shr rcx, 6
mov rdx, r13
xor r8, rcx
ror rdx, 8
mov rcx, r13
ror rcx, 1
xor rdx, rcx
mov rcx, r13
shr rcx, 7
xor rdx, rcx
mov rcx, qword [rsp + 0x40]
add rcx, r8
mov r8, rdi
add rdx, rcx
add qword [rsp + 8], rdx
mov r13, qword [rsp + 0x78]
and r15, r10
ror r8, 0x29
xor r15, r9
mov r9, qword [rsp + 0x38]
mov rcx, rdi
ror rcx, 0x12
mov rdx, rdi
xor r8, rcx
not rdx
and rdx, r12
mov rcx, rdi
ror rcx, 0xe
xor r8, rcx
mov rcx, rbx
and rcx, rdi
xor rdx, rcx
mov rcx, r10
add r8, rdx
ror rcx, 0x27
add r8, qword [r13 - 8]
mov rdx, r11
add r8, qword [rsp + 8]
add r8, rax
ror rdx, 0x3d
add rsi, r8
mov rax, r10
ror rax, 0x22
xor rcx, rax
mov rax, r10
ror rax, 0x1c
xor rax, rcx
add rax, r8
mov r8, qword [rsp + 0x70]
add r15, rax
mov rcx, r8
ror rcx, 8
mov rax, r11
ror rax, 0x13
xor rdx, rax
mov rax, r11
shr rax, 6
xor rdx, rax
mov rax, r8
ror rax, 1
xor rcx, rax
mov rax, r8
shr rax, 7
xor rcx, rax
mov rax, qword [rsp + 0x50]
add rax, rdx
mov rdx, rsi
add rcx, rax
not rdx
add r9, rcx
and rdx, rbx
mov rcx, rsi
mov qword [rsp + 0x38], r9
ror rcx, 0x29
mov rax, rsi
ror rax, 0x12
xor rcx, rax
mov rax, rsi
ror rax, 0xe
xor rcx, rax
mov rax, rdi
and rax, rsi
xor rdx, rax
lea rax, [r9 + rcx]
mov rcx, r15
add rdx, rax
ror rcx, 0x27
add rdx, qword [r13]
mov rax, r15
ror rax, 0x22
add rdx, r12
xor rcx, rax
add rbp, rdx
mov rax, r15
ror rax, 0x1c
xor rcx, rax
mov r12, qword [rsp + 0x48]
mov r11, r15
mov r8, qword [rsp + 8]
xor r11, r14
and r11, r10
mov rax, r15
and rax, r14
xor r11, rax
lea rax, [rdx + rcx]
add r11, rax
mov rcx, r12
ror rcx, 8
mov rax, r8
ror rax, 0x13
mov rdx, r8
ror rdx, 0x3d
xor rdx, rax
mov rax, r8
shr rax, 6
xor rdx, rax
mov rax, r12
ror rax, 1
xor rcx, rax
mov rax, r12
mov r12, qword [rsp + 0x70]
shr rax, 7
xor rcx, rax
mov rax, qword [rsp + 0x58]
add rax, rdx
mov rdx, rbp
add rcx, rax
ror rdx, 0x29
add r12, rcx
mov rax, rbp
ror rax, 0x12
mov rcx, rbp
xor rdx, rax
mov qword [rsp + 0x70], r12
not rcx
mov rax, rbp
ror rax, 0xe
and rcx, rdi
xor rdx, rax
mov rax, rsi
and rax, rbp
xor rcx, rax
mov rax, r11
add rdx, rcx
ror rax, 0x22
add rdx, qword [r13 + 8]
mov rcx, r11
add rdx, r12
ror rcx, 0x27
xor rcx, rax
add rdx, rbx
add r14, rdx
mov rax, r11
ror rax, 0x1c
mov rbx, r15
xor rcx, rax
xor rbx, r11
and rbx, r10
mov rax, r15
and rax, r11
xor rbx, rax
lea rax, [rdx + rcx]
mov rdx, r9
add rbx, rax
ror rdx, 0x3d
mov rax, r9
ror rax, 0x13
xor rdx, rax
mov rax, r9
mov r9, qword [rsp + 0x128]
shr rax, 6
mov rcx, r9
xor rdx, rax
ror rcx, 8
mov rax, r9
ror rax, 1
xor rcx, rax
mov rax, r9
mov r9, qword [rsp + 0x48]
shr rax, 7
xor rcx, rax
mov rax, qword [rsp + 0x20]
add rax, rdx
mov rdx, r14
add rcx, rax
ror rdx, 0x29
add r9, rcx
mov rax, r14
ror rax, 0x12
mov rcx, r14
xor rdx, rax
mov qword [rsp + 0x48], r9
not rcx
mov rax, r14
ror rax, 0xe
and rcx, rsi
xor rdx, rax
mov rax, rbp
and rax, r14
xor rcx, rax
mov rax, rbx
add rdx, rcx
ror rax, 0x22
add rdx, qword [r13 + 0x10]
mov rcx, rbx
ror rcx, 0x27
add rdx, r9
xor rcx, rax
add rdx, rdi
add r10, rdx
mov rax, rbx
ror rax, 0x1c
mov rdi, r11
xor rcx, rax
xor rdi, rbx
and rdi, r15
mov rax, r11
and rax, rbx
xor rdi, rax
lea rax, [rdx + rcx]
mov rdx, r12
add rdi, rax
ror rdx, 0x3d
mov rax, r12
ror rax, 0x13
xor rdx, rax
mov rax, r12
shr rax, 6
xor rdx, rax
mov rax, qword [rsp + 0x18]
mov rcx, rax
ror rax, 1
ror rcx, 8
xor rcx, rax
mov rax, qword [rsp + 0x18]
shr rax, 7
xor rcx, rax
mov rax, qword [rsp + 0x30]
add rax, rdx
mov rdx, r10
add rcx, rax
ror rdx, 0x29
add qword [rsp + 0x128], rcx
mov rax, r10
ror rax, 0x12
mov rcx, r10
xor rdx, rax
not rcx
and rcx, rbp
mov rax, r10
ror rax, 0xe
xor rdx, rax
mov rax, r10
and rax, r14
xor rcx, rax
add rdx, rcx
add rdx, qword [r13 + 0x18]
add rdx, qword [rsp + 0x128]
add rdx, rsi
mov rcx, rdi
add r15, rdx
ror rcx, 0x27
mov rax, rdi
mov rsi, rbx
ror rax, 0x22
xor rsi, rdi
xor rcx, rax
and rsi, r11
mov rax, rdi
ror rax, 0x1c
xor rcx, rax
mov rax, rbx
and rax, rdi
xor rsi, rax
lea rax, [rdx + rcx]
mov rdx, r9
add rsi, rax
ror rdx, 0x3d
mov rax, r9
ror rax, 0x13
xor rdx, rax
mov rax, r9
mov r9, qword [rsp]
shr rax, 6
mov rcx, r9
xor rdx, rax
ror rcx, 8
mov rax, r9
ror rax, 1
xor rcx, rax
mov rax, r9
mov r9, qword [rsp + 0x18]
shr rax, 7
xor rcx, rax
mov rax, qword [rsp + 0x28]
add rax, rdx
mov rdx, r15
add rcx, rax
ror rdx, 0x29
add r9, rcx
mov rax, r15
ror rax, 0x12
mov rcx, r15
xor rdx, rax
mov qword [rsp + 0x18], r9
not rcx
mov rax, r15
ror rax, 0xe
and rcx, r14
xor rdx, rax
mov rax, r10
and rax, r15
xor rcx, rax
mov rax, rsi
add rdx, rcx
ror rax, 0x22
add rdx, qword [r13 + 0x20]
mov rcx, rsi
ror rcx, 0x27
add rdx, r9
add rdx, rbp
xor rcx, rax
add r11, rdx
mov rax, rsi
ror rax, 0x1c
mov rbp, rdi
xor rcx, rax
xor rbp, rsi
and rbp, rbx
mov rax, rdi
and rax, rsi
xor rbp, rax
lea rax, [rdx + rcx]
mov rcx, qword [rsp + 0x128]
add rbp, rax
mov rdx, rcx
ror rdx, 0x3d
mov rax, rcx
ror rax, 0x13
xor rdx, rax
mov rax, rcx
shr rax, 6
xor rdx, rax
mov rax, qword [rsp + 0x10]
mov rcx, rax
ror rax, 1
ror rcx, 8
xor rcx, rax
mov rax, qword [rsp + 0x10]
shr rax, 7
xor rcx, rax
mov rax, qword [rsp + 0x60]
add rax, rdx
mov rdx, r11
add rcx, rax
ror rdx, 0x29
add qword [rsp], rcx
mov rax, r11
ror rax, 0x12
mov rcx, r11
xor rdx, rax
not rcx
and rcx, r10
mov rax, r11
ror rax, 0xe
xor rdx, rax
mov rax, r15
and rax, r11
xor rcx, rax
mov rax, rbp
ror rax, 0x22
add rdx, rcx
add rdx, qword [r13 + 0x28]
mov rcx, rbp
add rdx, r14
ror rcx, 0x27
add rdx, qword [rsp]
xor rcx, rax
add rbx, rdx
mov rax, rbp
ror rax, 0x1c
mov r14, rsi
xor rcx, rax
xor r14, rbp
and r14, rdi
mov rax, rsi
and rax, rbp
xor r14, rax
lea rax, [rdx + rcx]
mov rdx, r9
add r14, rax
ror rdx, 0x3d
mov rax, r9
ror rax, 0x13
xor rdx, rax
mov rax, r9
mov r9, qword [rsp + 0x118]
shr rax, 6
mov rcx, r9
xor rdx, rax
ror rcx, 8
mov rax, r9
ror rax, 1
xor rcx, rax
mov rax, r9
shr rax, 7
xor rcx, rax
lea rax, [r8 + rdx]
mov rdx, qword [rsp + 0x10]
add rcx, rax
add rdx, rcx
mov rax, rbx
ror rax, 0x12
mov r8, rbx
ror r8, 0x29
xor r8, rax
mov qword [rsp + 0x10], rdx
mov rax, rbx
ror rax, 0xe
xor r8, rax
mov rcx, rbx
mov rax, r11
not rcx
and rax, rbx
and rcx, r15
mov r9, rbp
xor rcx, rax
and r9, r14
add r8, rcx
mov rax, rbp
add r8, qword [r13 + 0x30]
xor rax, r14
add r8, rdx
mov r13, rax
add r8, r10
and r13, rsi
mov r10, qword [rsp + 0x40]
add rdi, r8
xor r13, r9
mov rdx, r14
ror rdx, 0x27
mov rcx, r14
ror rcx, 0x22
xor rdx, rcx
mov rcx, r14
ror rcx, 0x1c
xor rcx, rdx
mov rdx, qword [rsp]
add rcx, r8
mov r8, rdx
add r13, rcx
ror r8, 0x3d
mov rcx, rdx
and rax, r13
ror rcx, 0x13
xor rax, r9
xor r8, rcx
mov rcx, rdx
shr rcx, 6
mov rdx, r10
xor r8, rcx
ror rdx, 8
mov rcx, r10
ror rcx, 1
xor rdx, rcx
mov rcx, r10
mov r10, qword [rsp + 0x78]
shr rcx, 7
xor rdx, rcx
mov rcx, qword [rsp + 0x38]
add rcx, r8
mov r8, rdi
add rdx, rcx
ror r8, 0x29
add qword [rsp + 0x118], rdx
mov rcx, rdi
ror rcx, 0x12
mov rdx, rdi
xor r8, rcx
not rdx
and rdx, r11
mov rcx, rdi
ror rcx, 0xe
xor r8, rcx
mov rcx, rbx
and rcx, rdi
xor rdx, rcx
mov rcx, r13
add r8, rdx
ror rcx, 0x22
add r8, qword [r10 + 0x38]
mov rdx, r13
add r8, qword [rsp + 0x118]
ror rdx, 0x27
add r8, r15
xor rdx, rcx
add rsi, r8
mov rcx, r13
ror rcx, 0x1c
xor rcx, rdx
add rcx, r8
mov r15, qword [rsp + 0x50]
add rax, rcx
mov r9, qword [rsp + 0x10]
mov rdx, r15
ror rdx, 8
mov r8, r9
ror r8, 0x3d
mov rcx, r9
ror rcx, 0x13
xor r8, rcx
mov rcx, r9
shr rcx, 6
xor r8, rcx
mov rcx, r15
ror rcx, 1
xor rdx, rcx
mov rcx, r15
mov r15, qword [rsp + 0x40]
shr rcx, 7
xor rdx, rcx
lea rcx, [r12 + r8]
add rdx, rcx
mov r8, rsi
add r15, rdx
ror r8, 0x29
mov rcx, rsi
mov qword [rsp + 0x40], r15
ror rcx, 0x12
mov rdx, rsi
xor r8, rcx
not rdx
and rdx, rbx
mov rcx, rsi
ror rcx, 0xe
mov r12, rax
xor r8, rcx
xor r12, r14
and r12, r13
mov rcx, rdi
and rcx, rsi
xor rdx, rcx
mov rcx, rax
add r8, rdx
ror rcx, 0x22
add r8, qword [r10 + 0x40]
mov rdx, rax
ror rdx, 0x27
add r8, r15
xor rdx, rcx
add r8, r11
mov r11, qword [rsp + 0x58]
add rbp, r8
mov rcx, rax
ror rcx, 0x1c
xor rdx, rcx
mov rcx, rax
and rcx, r14
xor r12, rcx
lea rcx, [r8 + rdx]
mov rdx, qword [rsp + 0x118]
add r12, rcx
mov r8, rdx
mov rcx, rdx
ror r8, 0x3d
ror rcx, 0x13
xor r8, rcx
mov rcx, rdx
shr rcx, 6
mov rdx, r11
xor r8, rcx
ror rdx, 8
mov rcx, r11
ror rcx, 1
xor rdx, rcx
mov rcx, r11
mov r11, qword [rsp + 0x50]
shr rcx, 7
xor rdx, rcx
mov rcx, qword [rsp + 0x48]
add rcx, r8
add rdx, rcx
add r11, rdx
mov r8, rbp
ror r8, 0x29
mov rcx, rbp
ror rcx, 0x12
mov rdx, rbp
xor r8, rcx
mov qword [rsp + 0x50], r11
not rdx
mov rcx, rbp
ror rcx, 0xe
and rdx, rdi
xor r8, rcx
mov rcx, rsi
and rcx, rbp
xor rdx, rcx
mov rcx, r12
add r8, rdx
ror rcx, 0x22
add r8, qword [r10 + 0x48]
mov rdx, r12
add r8, r11
ror rdx, 0x27
xor rdx, rcx
add r8, rbx
add r14, r8
mov rcx, r12
ror rcx, 0x1c
mov rbx, rax
xor rdx, rcx
xor rbx, r12
and rbx, r13
mov rcx, rax
and rcx, r12
xor rbx, rcx
lea rcx, [r8 + rdx]
mov r8, r15
add rbx, rcx
ror r8, 0x3d
mov rcx, r15
ror rcx, 0x13
xor r8, rcx
mov rcx, r15
mov r15, qword [rsp + 0x20]
shr rcx, 6
mov rdx, r15
xor r8, rcx
ror rdx, 8
mov rcx, r15
ror rcx, 1
xor rdx, rcx
mov rcx, r15
mov r15, qword [rsp + 0x58]
shr rcx, 7
xor rdx, rcx
mov rcx, qword [rsp + 0x128]
add rcx, r8
mov r8, r14
add rdx, rcx
ror r8, 0x29
add r15, rdx
mov rcx, r14
ror rcx, 0x12
mov rdx, r14
xor r8, rcx
mov qword [rsp + 0x58], r15
not rdx
mov rcx, r14
ror rcx, 0xe
and rdx, rsi
xor r8, rcx
mov rcx, rbp
and rcx, r14
xor rdx, rcx
add r8, rdx
mov rdx, rbx
add r8, qword [r10 + 0x50]
add r8, r15
add r8, rdi
add r13, r8
ror rdx, 0x27
mov rcx, rbx
mov rdi, r12
ror rcx, 0x22
xor rdi, rbx
xor rdx, rcx
and rdi, rax
mov rcx, rbx
ror rcx, 0x1c
xor rdx, rcx
mov rcx, r12
and rcx, rbx
xor rdi, rcx
lea rcx, [r8 + rdx]
mov rdx, qword [rsp + 0x30]
add rdi, rcx
mov r8, rdx
mov rcx, rdx
ror r8, 8
ror rcx, 1
xor r8, rcx
mov rcx, rdx
shr rcx, 7
mov rdx, r11
xor r8, rcx
ror rdx, 0x3d
mov rcx, r11
ror rcx, 0x13
xor rdx, rcx
mov rcx, r11
mov r11, qword [rsp + 0x20]
shr rcx, 6
xor rdx, rcx
mov rcx, qword [rsp + 0x18]
add rcx, r8
mov r8, r13
add rdx, rcx
ror r8, 0x29
add r11, rdx
mov rcx, r13
ror rcx, 0x12
mov rdx, r13
xor r8, rcx
mov qword [rsp + 0x20], r11
not rdx
mov rcx, r13
ror rcx, 0xe
and rdx, rbp
xor r8, rcx
mov rcx, r13
and rcx, r14
xor rdx, rcx
mov rcx, rdi
add r8, rdx
ror rcx, 0x22
add r8, qword [r10 + 0x58]
mov rdx, rdi
add r8, r11
ror rdx, 0x27
xor rdx, rcx
add r8, rsi
add rax, r8
mov rcx, rdi
ror rcx, 0x1c
mov rsi, rbx
xor rdx, rcx
xor rsi, rdi
and rsi, r12
mov rcx, rbx
and rcx, rdi
xor rsi, rcx
lea rcx, [r8 + rdx]
mov rdx, qword [rsp + 0x28]
add rsi, rcx
mov r8, rdx
ror r8, 8
mov rcx, rdx
ror rcx, 1
xor r8, rcx
mov rcx, rdx
shr rcx, 7
xor r8, rcx
mov r11, qword [rsp + 0x30]
mov rdx, r15
ror rdx, 0x3d
mov rcx, r15
ror rcx, 0x13
xor rdx, rcx
mov rcx, r15
mov r15, qword [rsp + 0x20]
shr rcx, 6
xor rdx, rcx
mov rcx, qword [rsp]
add rcx, r8
mov r8, rax
add rdx, rcx
ror r8, 0x29
add r11, rdx
mov rcx, rax
ror rcx, 0x12
mov rdx, rax
xor r8, rcx
mov qword [rsp + 0x30], r11
not rdx
mov rcx, rax
ror rcx, 0xe
and rdx, r14
xor r8, rcx
mov rcx, r13
and rcx, rax
xor rdx, rcx
mov rcx, rsi
add r8, rdx
ror rcx, 0x22
add r8, qword [r10 + 0x60]
mov rdx, rsi
add r8, r11
ror rdx, 0x27
mov r11, qword [rsp + 0x60]
xor rdx, rcx
add r8, rbp
mov rcx, rsi
ror rcx, 0x1c
add r12, r8
xor rdx, rcx
mov rbp, rdi
xor rbp, rsi
mov rcx, rdi
and rcx, rsi
and rbp, rbx
xor rbp, rcx
lea rcx, [r8 + rdx]
mov r8, r11
add rbp, rcx
ror r8, 8
mov rcx, r11
mov rdx, r15
ror rcx, 1
xor r8, rcx
ror rdx, 0x3d
mov rcx, r11
shr rcx, 7
xor r8, rcx
mov rcx, r15
ror rcx, 0x13
xor rdx, rcx
mov rcx, r15
shr rcx, 6
xor rdx, rcx
lea rcx, [r9 + r8]
mov r9, qword [rsp + 0x28]
add rdx, rcx
add r9, rdx
mov rcx, r12
ror rcx, 0x12
mov r8, r12
ror r8, 0x29
mov rdx, r12
xor r8, rcx
mov qword [rsp + 0x28], r9
mov rcx, r12
ror rcx, 0xe
xor r8, rcx
not rdx
mov rcx, rax
and rcx, r12
and rdx, r13
xor rdx, rcx
mov rcx, rbp
add r8, rdx
ror rcx, 0x22
add r8, qword [r10 + 0x68]
mov rdx, rbp
ror rdx, 0x27
add r8, r9
mov r9, qword [rsp + 0x30]
xor rdx, rcx
add r8, r14
sub r10, 0xffffffffffffff80
mov rcx, rbp
mov qword [rsp + 0x78], r10
ror rcx, 0x1c
mov r14, rsi
xor rdx, rcx
xor r14, rbp
and r14, rdi
mov rcx, rsi
and rcx, rbp
add rbx, r8
xor r14, rcx
lea rcx, [r8 + rdx]
add r14, rcx
lea rcx, [0x140426b70]
cmp r10, rcx
jl 0x1402f1180
mov rcx, qword [rsp + 0x110]
mov r11, qword [rsp + 0x80]
mov r10, qword [rsp + 0x98]
add r11, r14
mov r14, qword [rsp + 0x88]
add r10, rdi
mov rdi, qword [rsp + 0xa8]
add r14, rbp
mov rbp, qword [rsp + 0x90]
add rdi, r12
mov r9, qword [rsp + 0xb8]
add rbp, rsi
mov r12, qword [rsp + 0xb0]
add r9, r13
mov rsi, qword [rsp + 0xa0]
add r12, rax
mov r13, qword [rsp + 0x68]
add rsi, rbx
mov rax, qword [rsp + 0x120]
sub r13, 0xffffffffffffff80
mov qword [rsp + 0x80], r11
movabs rbx, 0x428a2f98d728ae22
mov qword [rcx], r11
mov qword [rsp + 0x88], r14
mov qword [rcx + 8], r14
mov qword [rsp + 0x90], rbp
mov qword [rcx + 0x10], rbp
mov qword [rsp + 0x98], r10
mov qword [rcx + 0x18], r10
mov qword [rsp + 0xa0], rsi
mov qword [rcx + 0x20], rsi
mov qword [rsp + 0xa8], rdi
mov qword [rcx + 0x28], rdi
mov qword [rsp + 0xb0], r12
mov qword [rcx + 0x30], r12
mov qword [rsp + 0xb8], r9
mov qword [rcx + 0x38], r9
mov qword [rsp + 0x68], r13
test rax, rax
jne 0x1402f03e0
mov r15, qword [rsp + 0xc8]
mov r14, qword [rsp + 0xd0]
mov r13, qword [rsp + 0xd8]
mov r12, qword [rsp + 0xe0]
mov rdi, qword [rsp + 0xe8]
mov rsi, qword [rsp + 0xf0]
mov rbp, qword [rsp + 0xf8]
mov rbx, qword [rsp + 0x100]
add rsp, 0x108
ret