Function at 0x1400d80c0
Capabilities:
Parse pe header

Disassembly:
mov byte [rsp + 0x20], r9b
push rbp
push rsi
mov qword [rsp], rbx
push rsi
push rdi
mov qword [rsp], r12
nop
mov qword [rsp - 8], r13
sub rsp, 8
nop
sub rsp, 8
mov qword [rsp], r14
nop
mov qword [rsp - 8], r15
sub rsp, 8
lea rbp, [rsp - 0x17]
sub rsp, 0xb0
movzx r12d, r9b
xchg r8, rbx
mov r8, rbx
xchg r8, rbx
xchg rsi, rdx
mov rdx, rsi
xchg rsi, rdx
mov r13, rcx
test rdx, rdx
je 0x1400d8e83
mov eax, 0x5a4d
cmp word [rdx], ax
jne 0x1400d8e83
movsxd r15, dword [rdx + 0x3c]
add r15, rdx
mov qword [rbp - 0x41], r15
cmp dword [r15], 0x4550
jne 0x1400d8e83
mov rcx, qword [rbp + 0x7f]
xor r14d, r14d
xchg r14, r12
mov qword [rbp - 0x59], r12
xchg r14, r12
mov eax, dword [r15 + 0x50]
mov qword [rbp + 7], rax
test rcx, rcx
je 0x1400d8167
mov qword [rcx], rax
xor r9d, r9d
mov dword [rsp + 0x30], 0x40
lea rax, [rbp + 7]
mov dword [rsp + 0x28], 0x3000
lea rcx, [r13 + 0x50]
xchg rbp, rax
mov qword [rsp + 0x20], rbp
xchg rbp, rax
lea r8, [rbp - 0x59]
lea rdx, [r9 - 1]
call fcn.1400d5fa0
test eax, eax
js 0x1400d8e83
mov r8d, dword [r15 + 0x54]
xchg r10, rsi
mov rdx, r10
xchg r10, rsi
mov rcx, qword [rbp - 0x59]
xchg rdi, r8
mov qword [rsp + 0xf0], r8
xchg rdi, r8
call fcn.140155070
mov edi, r14d
cmp r14w, word [r15 + 6]
jae 0x1400d8211
nop word [rax + rax]
mov eax, edi
lea rcx, [rax + rax*4]
mov edx, dword [r15 + rcx*8 + 0x11c]
mov r8d, dword [r15 + rcx*8 + 0x118]
add rdx, rsi
mov ecx, dword [r15 + rcx*8 + 0x114]
add rcx, qword [rbp - 0x59]
call fcn.140155070
movzx eax, word [r15 + 6]
inc edi
cmp edi, eax
jb 0x1400d81d8
mov rdi, qword [rbp - 0x59]
test rbx, rbx
mov eax, dword [r15 + 0xb0]
cmove rbx, rdi
xor esi, esi
mov edx, esi
test eax, eax
je 0x1400d8233
lea rdx, [rdi + rax]
mov eax, dword [r15 + 0x90]
xchg rsi, r9
mov rsi, r9
xchg r9, rsi
test eax, eax
je 0x1400d824f
lea r9, [rdi + rax]
sub rbx, qword [r15 + 0x30]
xchg r9, rsi
mov qword [rbp - 0x49], rsi
xchg rsi, r9
test rdx, rdx
je 0x1400d82ca
cmp dword [rdx], r14d
je 0x1400d82ca
mov eax, dword [rdx + 4]
cmp eax, 8
jb 0x1400d82be
lea r8, [rax - 8]
mov ecx, esi
shr r8, 1
je 0x1400d82be
xchg rsi, rax
mov rsi, rax
xchg rsi, rax
nop dword [rax]
movzx eax, word [rdx + rax*2 + 8]
test ax, ax
je 0x1400d82b1
and eax, 0xfff
add eax, dword [rdx]
add qword [rax + rdi], rbx
mov rdi, qword [rbp - 0x59]
inc ecx
mov eax, ecx
cmp rax, r8
jb 0x1400d8294
mov eax, dword [rdx + 4]
add rdx, rax
jne 0x1400d8266
movabs rdx, 0x852396afe3269
movabs rbx, 0xc562983199256
test r9, r9
je 0x1400d8af9
mov eax, dword [r9]
movabs r8, 0x85fec382c
movabs r15, 0x582359a27a94a75
test eax, eax
je 0x1400d8aea
mov r14d, dword [r9 + 0x10]
lea r12, [rdi + rax]
mov ecx, dword [r9 + 0xc]
add r14, rdi
add rcx, rdi
mov rax, 0xffffffffffffffff
mov qword [rbp - 0x11], rcx
inc rax
cmp byte [rcx + rax], 0
jne 0x1400d8323
cmp qword [0x14016c0e0], rdx
mov word [rbp - 0x19], ax
mov word [rbp - 0x17], ax
je 0x1400d8441
mov rax, qword [0x14016c0f0]
cmp rax, rbx
je 0x1400d8441
cmp byte [0x14016d220], 0
jne 0x1400d8393
push rax
xor eax, ebx
push rax
xor rax, qword [rsp + 8]
shr rax, 0x20
ror rbx, 0x20
xor eax, ebx
ror rbx, 0x20
shl rax, 0x20
or rax, qword [rsp]
add rsp, 0x10
lea rdx, [0x1400d6c30]
mov ecx, 1
call rax
mov ecx, 1
call fcn.140153fc0
xchg rbx, r12
mov r12, qword [r13 + 0xa0]
xchg rbx, r12
lea rdx, [rbp - 0x51]
xchg rcx, rax
mov rax, rcx
xchg rcx, rax
push rbx
xor ebx, r15d
push rbx
xor rbx, qword [rsp + 8]
shr rbx, 0x20
ror r15, 0x20
xor ebx, r15d
ror r15, 0x20
shl rbx, 0x20
or rbx, qword [rsp]
add rsp, 0x10
movabs r15, 0x582359278457259
mov rdi, rax
push rcx
xor ecx, r15d
push rcx
xor rcx, qword [rsp + 8]
shr rcx, 0x20
ror r15, 0x20
xor ecx, r15d
ror r15, 0x20
shl rcx, 0x20
xor rcx, qword [rsp]
add rsp, 0x10
mov qword [rbp - 0x51], rcx
lea rcx, [0x14016d210]
call fcn.140028e90
mov r8b, 1
lea rdx, [rbp - 0x19]
lea rcx, [rbp - 0x29]
xchg rdx, rbx
mov qword [rax], rdx
xchg rdx, rbx
call rdi
movabs rbx, 0xc562983199256
jmp 0x1400d8484
mov rax, qword [r13 + 0xa0]
lea rdx, [rbp - 0x19]
push rax
xor eax, r8d
push rax
xor rax, qword [rsp + 8]
shr rax, 0x20
ror r8, 0x20
xor eax, r8d
ror r8, 0x20
shl rax, 0x20
or rax, qword [rsp]
add rsp, 0x10
lea rcx, [rbp - 0x29]
mov r8b, 1
call rax
movabs r15, 0x582359278457259
movabs rax, 0x852396afe3269
xchg rsi, r10
mov qword [rbp + 0x5f], r10
xchg rsi, r10
cmp qword [0x14016c0e0], rax
je 0x1400d8590
mov rax, qword [0x14016c0f0]
cmp rax, rbx
je 0x1400d8590
cmp byte [0x14016d220], 0
jne 0x1400d84f3
push rax
xor eax, ebx
push rax
xor rax, qword [rsp + 8]
shr rax, 0x20
ror rbx, 0x20
xor eax, ebx
ror rbx, 0x20
shl rax, 0x20
xor rax, qword [rsp]
add rsp, 0x10
lea rdx, [0x1400d6c30]
mov ecx, 1
call rax
mov ecx, 1
call fcn.140153fc0
mov rbx, qword [r13 + 0x90]
lea rdx, [rbp - 0x51]
xchg rdi, rax
mov rax, rdi
xchg rdi, rax
movabs rax, 0x582359b30125d9a
mov rcx, rdi
push rbx
xor ebx, eax
push rbx
xor rbx, qword [rsp + 8]
shr rbx, 0x20
ror rax, 0x20
xor ebx, eax
ror rax, 0x20
shl rbx, 0x20
or rbx, qword [rsp]
add rsp, 0x10
push rcx
xor ecx, r15d
push rcx
xor rcx, qword [rsp + 8]
shr rcx, 0x20
ror r15, 0x20
xor ecx, r15d
ror r15, 0x20
shl rcx, 0x20
or rcx, qword [rsp]
add rsp, 0x10
mov qword [rbp - 0x51], rcx
lea rcx, [0x14016d210]
call fcn.140028e90
lea r9, [rbp + 0x5f]
xor edx, edx
lea r8, [rbp - 0x29]
xor ecx, ecx
xchg rsi, rbx
mov qword [rax], rsi
xchg rsi, rbx
call rdi
jmp 0x1400d85d6
xchg rcx, rax
mov rcx, qword [r13 + 0x90]
xchg rcx, rax
lea r9, [rbp + 0x5f]
movabs rcx, 0x948572fc3
lea r8, [rbp - 0x29]
push rax
xor eax, ecx
push rax
xor rax, qword [rsp + 8]
shr rax, 0x20
ror rcx, 0x20
xor eax, ecx
ror rcx, 0x20
shl rax, 0x20
xor rax, qword [rsp]
add rsp, 0x10
xor edx, edx
xor ecx, ecx
call rax
movabs rbx, 0x852396afe3269
cmp qword [0x14016c0e0], rbx
je 0x1400d86e4
mov rax, qword [0x14016c0f0]
movabs rcx, 0xc562983199256
cmp rax, rcx
je 0x1400d86e4
cmp byte [0x14016d220], 0
jne 0x1400d8645
push rax
xor eax, ecx
push rax
xor rax, qword [rsp + 8]
shr rax, 0x20
ror rcx, 0x20
xor eax, ecx
ror rcx, 0x20
shl rax, 0x20
or rax, qword [rsp]
add rsp, 0x10
lea rdx, [0x1400d6c30]
mov ecx, 1
call rax
mov ecx, 1
call fcn.140153fc0
xchg rcx, rbx
mov rcx, qword [r13 + 0xb0]
xchg rbx, rcx
lea rdx, [rbp - 0x51]
xchg r8, rax
mov rdi, r8
xchg r8, rax
movabs rax, 0x582359a27e94a75
mov rcx, rdi
push rbx
xor ebx, eax
push rbx
xor rbx, qword [rsp + 8]
shr rbx, 0x20
ror rax, 0x20
xor ebx, eax
ror rax, 0x20
shl rbx, 0x20
xor rbx, qword [rsp]
add rsp, 0x10
push rcx
xor ecx, r15d
push rcx
xor rcx, qword [rsp + 8]
shr rcx, 0x20
ror r15, 0x20
xor ecx, r15d
ror r15, 0x20
shl rcx, 0x20
xor rcx, qword [rsp]
add rsp, 0x10
mov qword [rbp - 0x51], rcx
lea rcx, [0x14016d210]
call fcn.140028e90
lea rcx, [rbp - 0x29]
mov qword [rax], rbx
call rdi
movabs rbx, 0x852396afe3269
jmp 0x1400d8722
xchg rdi, rax
mov rdi, qword [r13 + 0xb0]
xchg rdi, rax
movabs rcx, 0x85fac382c
push rax
xor eax, ecx
push rax
xor rax, qword [rsp + 8]
shr rax, 0x20
ror rcx, 0x20
xor eax, ecx
ror rcx, 0x20
shl rax, 0x20
xor rax, qword [rsp]
add rsp, 0x10
lea rcx, [rbp - 0x29]
call rax
xchg r8, r15
mov r8, qword [rbp + 0x5f]
xchg r8, r15
test r15, r15
je 0x1400d8ab4
xchg rsi, rcx
mov rcx, qword [r12]
xchg rsi, rcx
test rsi, rsi
je 0x1400d8ab2
sub r12, r14
nop word [rax + rax]
test rsi, rsi
jns 0x1400d88da
cmp qword [0x14016c0e0], rbx
mov qword [rbp - 0x51], 0
je 0x1400d888f
mov rax, qword [0x14016c0f0]
movabs rcx, 0xc562983199256
cmp rax, rcx
je 0x1400d888f
cmp byte [0x14016d220], 0
jne 0x1400d87c7
push rax
xor eax, ecx
push rax
xor rax, qword [rsp + 8]
shr rax, 0x20
ror rcx, 0x20
xor eax, ecx
ror rcx, 0x20
shl rax, 0x20
xor rax, qword [rsp]
add rsp, 0x10
lea rdx, [0x1400d6c30]
mov ecx, 1
call rax
mov ecx, 1
call fcn.140153fc0
xchg r10, rbx
mov r10, qword [r13 + 0xc0]
xchg r10, rbx
lea rdx, [rbp - 0x39]
mov rdi, rax
movabs rax, 0x5823592dc79f24b
push rbx
xor ebx, eax
push rbx
xor rbx, qword [rsp + 8]
shr rbx, 0x20
ror rax, 0x20
xor ebx, eax
ror rax, 0x20
shl rbx, 0x20
or rbx, qword [rsp]
add rsp, 0x10
xchg rcx, rsi
mov rsi, rdi
xchg rcx, rsi
movabs rax, 0x582359278457259
push rcx
xor ecx, eax
push rcx
xor rcx, qword [rsp + 8]
shr rcx, 0x20
ror rax, 0x20
xor ecx, eax
ror rax, 0x20
shl rcx, 0x20
or rcx, qword [rsp]
add rsp, 0x10
xchg rsi, rcx
mov qword [rbp - 0x39], rsi
xchg rsi, rcx
lea rcx, [0x14016d210]
call fcn.140028e90
lea r9, [rbp - 0x51]
movzx r8d, si
xor edx, edx
xchg rbp, r15
mov rcx, rbp
xchg r15, rbp
xchg r9, rbx
mov qword [rax], r9
xchg r9, rbx
call rdi
mov rax, qword [rbp - 0x51]
movabs rbx, 0x852396afe3269
jmp 0x1400d8a8f
xchg r12, rax
mov r12, qword [r13 + 0xc0]
xchg r12, rax
lea r9, [rbp - 0x51]
mov ecx, 0xa43c8012
movzx r8d, si
push rax
xor eax, ecx
push rax
xor rax, qword [rsp + 8]
shr rax, 0x20
ror rcx, 0x20
xor eax, ecx
ror rcx, 0x20
shl rax, 0x20
or rax, qword [rsp]
add rsp, 0x10
xor edx, edx
mov rcx, r15
call rax
mov rax, qword [rbp - 0x51]
jmp 0x1400d8a8f
xchg rcx, r10
mov r10, qword [rbp - 0x59]
xchg r10, rcx
mov rax, 0xffffffffffffffff
neg rcx
add rcx, 0xfffffffffffffffe
neg rcx
add rcx, rsi
xchg rcx, r13
mov qword [rbp - 1], r13
xchg rcx, r13
nop dword [rax]
inc rax
cmp byte [rcx + rax], 0
jne 0x1400d8909
cmp qword [0x14016c0e0], rbx
mov word [rbp - 9], ax
mov word [rbp - 7], ax
mov qword [rbp - 0x31], 0
je 0x1400d8a3e
mov rax, qword [0x14016c0f0]
movabs rcx, 0xc562983199256
cmp rax, rcx
je 0x1400d8a3e
cmp byte [0x14016d220], 0
jne 0x1400d898b
push rax
xor eax, ecx
push rax
xor rax, qword [rsp + 8]
shr rax, 0x20
ror rcx, 0x20
xor eax, ecx
ror rcx, 0x20
shl rax, 0x20
xor rax, qword [rsp]
add rsp, 0x10
lea rdx, [0x1400d6c30]
mov ecx, 1
call rax
mov ecx, 1
call fcn.140153fc0
mov rbx, qword [r13 + 0xc0]
lea rcx, [0x14016d210]
mov rdi, rax
movabs rax, 0x5823592dc79f24b
push rbx
xor ebx, eax
push rbx
xor rbx, qword [rsp + 8]
shr rbx, 0x20
ror rax, 0x20
xor ebx, eax
ror rax, 0x20
shl rbx, 0x20
or rbx, qword [rsp]
add rsp, 0x10
mov rdx, rdi
movabs rax, 0x582359278457259
push rdx
xor edx, eax
push rdx
xor rdx, qword [rsp + 8]
shr rdx, 0x20
ror rax, 0x20
xor edx, eax
ror rax, 0x20
shl rdx, 0x20
or rdx, qword [rsp]
add rsp, 0x10
xchg rdx, r13
mov qword [rbp - 0x39], r13
xchg rdx, r13
lea rdx, [rbp - 0x39]
call fcn.140028e90
xor r8d, r8d
lea r9, [rbp - 0x31]
lea rdx, [rbp - 9]
xchg r15, r9
mov rcx, r9
xchg r15, r9
mov qword [rax], rbx
call rdi
movabs rbx, 0x852396afe3269
jmp 0x1400d8a87
xchg r12, rax
mov r12, qword [r13 + 0xc0]
xchg r12, rax
lea r9, [rbp - 0x31]
mov ecx, 0xa43c8012
lea rdx, [rbp - 9]
push rax
xor eax, ecx
push rax
xor rax, qword [rsp + 8]
shr rax, 0x20
ror rcx, 0x20
xor eax, ecx
ror rcx, 0x20
shl rax, 0x20
or rax, qword [rsp]
add rsp, 0x10
xor r8d, r8d
xchg r14, r15
mov rcx, r14
xchg r15, r14
call rax
xchg r13, rax
mov r13, qword [rbp - 0x31]
xchg r13, rax
mov qword [r14], rax
add r14, 8
mov rsi, qword [r12 + r14]
test rsi, rsi
je 0x1400d8ab2
xchg r9, r15
mov r9, qword [rbp + 0x5f]
xchg r9, r15
jmp 0x1400d8751
xor esi, esi
mov r9, qword [rbp - 0x49]
movabs rbx, 0xc562983199256
xchg rdi, r15
mov r15, qword [rbp - 0x59]
xchg r15, rdi
add r9, 0x14
xchg r10, r9
mov qword [rbp - 0x49], r10
xchg r9, r10
movabs rdx, 0x852396afe3269
jne 0x1400d82e7
movzx r12d, byte [rbp + 0x6f]
xchg r10, r15
mov r10, qword [rbp - 0x41]
xchg r10, r15
mov r14d, esi
cmp si, word [r15 + 6]
jae 0x1400d8d05
mov r12d, 4
nop
mov eax, r14d
lea rcx, [rax + rax*4]
mov eax, dword [r15 + rcx*8 + 0x114]
mov esi, dword [r15 + rcx*8 + 0x12c]
add rax, rdi
mov qword [rbp - 0x49], rax
mov eax, dword [r15 + rcx*8 + 0x118]
xchg rdx, rax
mov qword [rbp - 0x41], rdx
xchg rdx, rax
bt esi, 0x19
jae 0x1400d8b50
mov esi, 2
jmp 0x1400d8b82
bt esi, 0x1d
jae 0x1400d8b75
sar esi, 5
sar esi, 0xb
sar esi, 0xa
sar esi, 3
sar esi, 1
sar esi, 1
and esi, 0x20
sub esi, 0xffffffe0
jmp 0x1400d8b82
test esi, esi
mov eax, 2
cmovs eax, r12d
mov esi, eax
xor eax, eax
cmp qword [0x14016c0e0], rdx
mov dword [rbp + 0x5f], eax
je 0x1400d8c9e
mov rax, qword [0x14016c0f0]
cmp rax, rbx
je 0x1400d8c9e
cmp byte [0x14016d220], 0
jne 0x1400d8be2
push rax
xor eax, ebx
push rax
xor rax, qword [rsp + 8]
shr rax, 0x20
ror rbx, 0x20
xor eax, ebx
ror rbx, 0x20
shl rax, 0x20
xor rax, qword [rsp]
add rsp, 0x10
lea rdx, [0x1400d6c30]
mov ecx, 1
call rax
mov ecx, 1
call fcn.140153fc0
xchg rbx, r8
mov r8, qword [r13 + 0xd0]
xchg rbx, r8
lea rdx, [rbp - 0x39]
mov rdi, rax
movabs rax, 0x582359264eb86c1
push rbx
xor ebx, eax
push rbx
xor rbx, qword [rsp + 8]
shr rbx, 0x20
ror rax, 0x20
xor ebx, eax
ror rax, 0x20
shl rbx, 0x20
or rbx, qword [rsp]
add rsp, 0x10
mov rcx, rdi
movabs rax, 0x582359278457259
push rcx
xor ecx, eax
push rcx
xor rcx, qword [rsp + 8]
shr rcx, 0x20
ror rax, 0x20
xor ecx, eax
ror rax, 0x20
shl rcx, 0x20
xor rcx, qword [rsp]
add rsp, 0x10
xchg rcx, r15
mov qword [rbp - 0x39], r15
xchg rcx, r15
lea rcx, [0x14016d210]
call fcn.140028e90
mov r9d, esi
lea r8, [rbp - 0x41]
lea rdx, [rbp - 0x49]
mov rcx, 0xffffffffffffffff
xchg r15, rbx
mov qword [rax], r15
xchg rbx, r15
lea rax, [rbp + 0x5f]
mov qword [rsp + 0x20], rax
call rdi
jmp 0x1400d8cd2
xchg rdx, rax
mov rdx, qword [r13 + 0xd0]
xchg rdx, rax
lea rcx, [rbp + 0x5f]
xchg rbx, rcx
mov qword [rsp + 0x20], rbx
xchg rcx, rbx
lea r8, [rbp - 0x41]
mov rcx, 0xffffffffffffffff
lea rdx, [rbp - 0x49]
xor rax, 0x1caef498
mov r9d, esi
call rax
movzx eax, word [r15 + 6]
inc r14d
mov rdi, qword [rbp - 0x59]
cmp r14d, eax
jae 0x1400d8d00
movabs rbx, 0xc562983199256
movabs rdx, 0x852396afe3269
jmp 0x1400d8b0e
movzx r12d, byte [rbp + 0x6f]
cmp byte [rbp + 0x77], 0
jne 0x1400d8e42
mov eax, dword [r15 + 0x28]
test eax, eax
je 0x1400d8e42
lea rsi, [rdi + rax]
movabs rax, 0x852396afe3269
cmp qword [0x14016c0e0], rax
je 0x1400d8e2c
mov rax, qword [0x14016c0f0]
movabs rcx, 0xc562983199256
cmp rax, rcx
je 0x1400d8e2c
cmp byte [0x14016d220], 0
jne 0x1400d8d8e
push rax
xor eax, ecx
push rax
xor rax, qword [rsp + 8]
shr rax, 0x20
ror rcx, 0x20
xor eax, ecx
ror rcx, 0x20
shl rax, 0x20
xor rax, qword [rsp]
add rsp, 0x10
lea rdx, [0x1400d6c30]
mov ecx, 1
call rax
mov ecx, 1
call fcn.140153fc0
xchg rbp, rax
mov r8, rbp
xchg rbp, rax
lea rdx, [rbp + 0x5f]
movabs r14, 0x582359278457259
lea rcx, [0x14016d210]
push r8
xor r8d, r14d
push r8
xor r8, qword [rsp + 8]
shr r8, 0x20
ror r14, 0x20
xor r8d, r14d
ror r14, 0x20
shl r8, 0x20
or r8, qword [rsp]
add rsp, 0x10
xchg r15, rbx
mov r15, rax
xchg rbx, r15
mov qword [rbp + 0x5f], r8
call fcn.140028e90
xor r8d, r8d
push rsi
xor esi, r14d
push rsi
xor rsi, qword [rsp + 8]
shr rsi, 0x20
ror r14, 0x20
xor esi, r14d
ror r14, 0x20
shl rsi, 0x20
or rsi, qword [rsp]
add rsp, 0x10
xchg r8, rcx
mov r8, rdi
xchg r8, rcx
mov qword [rax], rsi
lea edx, [r8 + 1]
call rbx
jmp 0x1400d8e3e
xor r8d, r8d
xchg rdi, rcx
mov rdi, rcx
xchg rdi, rcx
lea edx, [r8 + 1]
call rsi
mov rdi, qword [rbp - 0x59]
test r12b, r12b
je 0x1400d8e69
mov r8d, dword [r15 + 0x54]
xor edx, edx
xchg rcx, rdi
mov rdi, rcx
xchg rdi, rcx
call fcn.140155046
xchg rdi, r12
mov r12, qword [rbp - 0x59]
xchg rdi, r12
xchg rdi, rax
mov rdi, rax
xchg rdi, rax
xchg r10, rdi
mov r10, qword [rsp + 0xf0]
xchg r10, rdi
jmp 0x1400d8e85
xor eax, eax
add rsp, 0xb0
nop
add rsp, 8
xchg qword [rsp - 8], r15
push rdx
push rbx
push rcx
xchg qword [rsp + 0x18], r14
pop rcx
pop rbx
pop rdx
add rsp, 8
push rcx
push rax
push rax
push rax
xchg qword [rsp + 0x20], r13
pop rax
pop rax
pop rax
pop rcx
add rsp, 8
nop
add rsp, 8
xchg qword [rsp - 8], r12
nop
mov rsi, qword [rsp]
add rsp, 8
nop
xchg qword [rsp], rbx
add rsp, 8
push rdx
push rax
push rdx
push rax
push rdx
push rdx
push rcx
xchg qword [rsp + 0x38], rbp
add rsp, 0x40
ret