Function at 0x1404c340a
Capabilities:
Encode data using xor
Resolve function by parsing pe exports

Disassembly:
xchg r8, rax
mov r8, rsp
xchg r8, rax
mov byte [rax + 0x10], dl
mov dword [rsp - 0x30], 0x3a5d883c
mov qword [rax + 8], rcx
push rbp
nop
push r10
mov qword [rsp], rdi
lea rbp, [rax - 0x148]
add rsp, 0x25b6f866
sub rsp, 0x25b6fa9e
mov qword [rax + 0x18], rbx
xchg rcx, rcx
movabs rdi, 0x695a72385059bb1c
xor rdi, 0xb65235a
xor rdi, 0x6d646ebe
add rdi, 0x14413b3
add rdi, 0x2d2f2120
mov qword [rax - 0x18], rsi
mov dword [rsp - 0x30], ebp
movzx ebx, r8b
xchg r12, r11
mov qword [rax - 0x20], r11
xchg r12, r11
mov qword [rax - 0x28], r13
mov r13, rcx
mov rcx, qword [rcx]
mov rcx, rcx
mov qword [rax - 0x30], r14
xor rcx, rdi
xchg rbp, r15
mov qword [rax - 0x38], rbp
xchg rbp, r15
movzx r14d, dl
mov dword [rsp - 0x18], 0x28ae222e
mov byte [rsp + 0x58], 0x51
add byte [rsp + 0x58], 0x14
add byte [rsp + 0x58], 0
sub byte [rsp + 0x58], 0x2e
xor byte [rsp + 0x58], 0x37
lea rdx, [rsp + 0x58]
mov dword [rsp - 0x40], 0x31113b8f
xchg r13, rdi
mov qword [rsp + 0x60], r13
xchg r13, rdi
mov dword [rsp + 0x68], 0x6af45cca
xor dword [rsp + 0x68], 0x4c078b32
sub dword [rsp + 0x68], 0x6d49c24
add dword [rsp + 0x68], 0x4187134e
xor dword [rsp + 0x68], 0x7b660b01
mov dword [rsp + 0x6c], 0x46749aa0
add dword [rsp + 0x6c], 0x31da411
xor dword [rsp + 0x6c], 0x1dde063e
xor dword [rsp + 0x6c], 0x4e8c7cac
xchg rbx, rax
mov rbx, qword [rcx]
xchg rbx, rax
call qword [rax + 0x10]
test al, al
mov dword [rsp - 0x14], 0x11019c34
jne 0x1404c353f
mov edi, 0x31ee5607
xor edi, 0x72cf6755
add edi, 0x2beccef2
xor edi, 0xaf0e0146
jmp 0x1404c40b6
mov r12, qword [rsp + 0x60]
mov dword [rsp - 0x24], edx
xor r12, rdi
mov qword [rsp + 0x30], r12
movzx eax, word [r12]
mov dword [rsp - 0x34], 0x546709dd
xor eax, 0x1ac04423
cmp eax, 0x1ac01e6e
je 0x1404c358f
mov edi, 0x74538d9f
xor edi, 0x2d75311b
sub edi, 0x105bc7b8
xor edi, 0x8e6b971
xor edi, 0x802c4c92
jmp 0x1404c40b6
movsxd rsi, dword [r12 + 0x3c]
add rsi, r12
xchg rdi, rsi
mov qword [rsp + 0x48], rdi
xchg rsi, rdi
mov eax, dword [rsi]
mov r11, r11
xor eax, 0x1ac04423
cmp eax, 0x1ac00173
je 0x1404c35d3
mov edi, 0x33edde64
sub edi, 0xd7adb46
add edi, 0x2c8effe7
xor edi, 0x9302037e
jmp 0x1404c40b6
xor r15d, r15d
mov dword [rsp + 0x28], 0x461d7be2
add dword [rsp + 0x28], 0x19b84606
sub dword [rsp + 0x28], 0x372d1375
xor dword [rsp + 0x28], 0x28a8ae33
mov qword [rsp + 0x40], r15
lea r9, [rbp - 0x50]
mov eax, dword [rsi + 0x50]
xchg rdx, rdx
lea rdx, [rsp + 0x40]
xor r8d, r8d
mov qword [rbp - 0x50], rax
xchg r8, r8
nop
movabs rcx, 0xffffffff49f3ef0c
add rcx, 0x189137c0
sub rcx, 0x192cdff4
xor rcx, 0x79e23403
add rcx, 0x7fffffff
xor rcx, 0x4f458d25
mov dword [rsp + 0x20], 0x47c183f7
add dword [rsp + 0x20], 0x35fbf06b
sub dword [rsp + 0x20], 0x64b8974e
xor dword [rsp + 0x20], 0x28e39b43
sub dword [rsp + 0x20], 0x31e71657
call fcn.1400952c0
mov edi, eax
test eax, eax
xchg rbx, rbx
js 0x1404c40b6
mov rcx, qword [rsp + 0x40]
movabs rdx, 0x695a72382028521d
add rdx, 0x252b8d5e
add rdx, 0x359030d4
xor rdx, 0x42f1eb98
add rdx, 0x2cb62ff4
xchg rcx, rax
mov rcx, rax
xchg rcx, rax
xor rax, rdx
xchg r15, r15
mov qword [r13 + 8], rax
mov eax, dword [rsi + 0x50]
xor eax, 0x1ac04423
mov rsp, rsp
mov dword [r13 + 0x10], eax
mov eax, dword [rsi + 0x28]
xor eax, 0x1ac04423
mov dword [rsp - 0x2c], ebp
mov dword [r13 + 0x14], eax
test bl, bl
je 0x1404c371f
mov dword [rsp - 0x20], 0x719ca02d
mov r8d, 0x430377f8
xor r8d, 0x194afc96
sub r8d, 0x42354d7d
add r8d, 0x4ddde7c5
sub r8d, 0x65f215b6
xchg r11, rdx
mov r11, r12
xchg rdx, r11
call fcn.1400c1ff0
mov dword [rsp - 0x18], 0x2f2d3313
mov edx, dword [rsi + 0x88]
test edx, edx
je 0x1404c3948
xchg rbx, rbx
cmp dword [rsi + 0x8c], r15d
je 0x1404c3948
xchg r8, rcx
mov r8, r12
xchg r8, rcx
call fcn.14009d5b0
xchg rdi, rdi
xchg rdx, rax
mov rbx, rdx
xchg rdx, rax
test rax, rax
mov dword [rsp - 0x40], 0x719568e3
je 0x1404c3948
mov edx, dword [rax + 0x20]
mov rcx, r12
call fcn.14009d5b0
mov dword [rsp - 0x20], 0x60cc245a
mov edx, dword [rbx + 0x24]
xchg rbp, rcx
mov rbp, r12
xchg rcx, rbp
mov rdi, rax
mov qword [rsp + 0x50], rax
call fcn.14009d5b0
mov dword [rsp - 0x14], edi
mov edx, dword [rbx + 0x1c]
xchg rcx, r12
mov r12, rcx
xchg r12, rcx
xchg rcx, rax
mov qword [rbp + 0x168], rcx
xchg rcx, rax
call fcn.14009d5b0
mov r11, r11
xchg rbx, rax
mov r12, rbx
xchg rbx, rax
mov esi, r15d
cmp dword [rbx + 0x18], r15d
jbe 0x1404c38f6
xchg rbx, rbx
lea r14, [r13 + 0x18]
xchg r13, rsp
mov rsp, qword [rbp + 0x168]
xchg rsp, r13
xchg r12, r14
mov qword [rbp - 0x48], r12
xchg r12, r14
nop
xchg rsp, rsp
xchg rbx, rcx
mov rbx, qword [rsp + 0x30]
xchg rbx, rcx
mov r15d, esi
xchg rsi, rsi
mov edx, dword [rdi + r15*4]
call fcn.14009d5b0
xchg r14, rcx
mov r14, rcx
xchg rcx, r14
xchg rdx, rax
mov rdi, rdx
xchg rdx, rax
call fcn.1404c2d60
cmp byte [rdi], 0
pushf
mov ecx, 0x3f8c276a
xor ecx, 0x7e68eb37
add ecx, 0x221268bb
xor ecx, 0x9c08cae7
popf
mov dword [rbp + 0x168], ecx
xchg r14, r8
mov r8, rax
xchg r8, r14
je 0x1404c3896
nop
xchg r12, r12
xchg rdx, rdi
mov rdi, rdx
xchg rdx, rdi
lea rcx, [rbp + 0x168]
mov r8d, 0x513bdd42
add r8d, 0x2c5840fb
xor r8d, 0x59f232dc
sub r8d, 0x24662ce0
inc rdi
call fcn.1400a79a0
cmp byte [rdi], 0
mov r14, r14
jne 0x1404c3851
mov ecx, dword [rbp + 0x168]
mov rdi, qword [rsp + 0x50]
not ecx
xchg r8, r8
mov dword [r14], ecx
inc esi
movzx eax, word [r13 + r15*2]
mov dword [rsp - 0x24], 0xabfd238
mov ecx, dword [r12 + rax*4]
mov dword [r14 + 4], ecx
xchg r11, r14
mov r11, qword [rbp - 0x48]
xchg r14, r11
cmp esi, dword [rbx + 0x18]
mov dword [rsp - 0x28], 0x750c37cb
jb 0x1404c37eb
xchg r12, r13
mov r12, qword [rbp + 0x150]
xchg r12, r13
xor r15d, r15d
movzx r14d, byte [rbp + 0x158]
mov dword [rsp - 0x24], 0x6584ff72
cmp dword [rbx + 0x14], 0
mov edi, r15d
jbe 0x1404c393e
mov r15, r15
lea rcx, [r13 + 0x38]
call fcn.1404c2ed0
mov edx, dword [rbx + 0x10]
add edx, edi
mov dword [rsp - 0x20], 0xa7586fb
mov ecx, edi
inc edi
mov dword [rax], edx
mov edx, dword [r12 + rcx*4]
mov dword [rsp - 0x2c], esp
mov dword [rax + 4], edx
cmp edi, dword [rbx + 0x14]
jb 0x1404c3906
mov dword [rsp - 0x24], 0x76ef7c53
mov rsi, qword [rsp + 0x48]
mov r12, qword [rsp + 0x30]
mov rdx, qword [rsp + 0x40]
mov rcx, r12
mov r14, r14
call fcn.14009aff0
test r14b, r14b
je 0x1404c3b10
mov r8, r8
mov edx, dword [rsi + 0x90]
test edx, edx
je 0x1404c3b10
xchg rcx, r12
mov r12, rcx
xchg r12, rcx
call fcn.14009d5b0
xchg rbp, rbp
lea r15, [rax + 0xc]
mov eax, dword [rax + 0xc]
test eax, eax
mov dword [rsp - 0x44], ebx
je 0x1404c3b10
mov edx, eax
xchg r12, rcx
mov r12, rcx
xchg rcx, r12
call fcn.14009d5b0
xor edx, edx
xchg rcx, rax
mov rax, rcx
xchg rcx, rax
xchg rsi, rdi
mov rsi, rax
xchg rdi, rsi
call fcn.14009c820
mov dword [rsp - 0x28], 0x78f709e2
mov r14, rax
test rax, rax
je 0x1404c3efd
mov dword [rsp - 0x1c], 0x3e4412b5
cmp byte [rdi], 0
je 0x1404c39fe
nop
call fcn.1400c3660
xchg r9, r9
mov byte [rdi], al
lea rdi, [rdi + 1]
cmp byte [rdi], 0
jne 0x1404c39e4
xchg r15, r15
mov edx, dword [r15 + 4]
mov rcx, r12
call fcn.14009d5b0
mov dword [rsp - 0x44], esi
xchg rbx, rsi
mov rbx, rax
xchg rbx, rsi
xchg rcx, rbx
mov rbx, qword [rax]
xchg rcx, rbx
test rcx, rcx
mov dword [rsp - 0x40], 0x7d85936b
je 0x1404c3ae9
mov eax, ecx
js 0x1404c3aad
mov r8, r8
mov edx, eax
xchg rcx, r12
mov r12, rcx
xchg rcx, r12
call fcn.14009d5b0
xchg r14, rsi
mov rcx, rsi
xchg r14, rsi
lea rdi, [rax + 2]
xchg rdi, rcx
mov rdx, rcx
xchg rdi, rcx
call fcn.14009b370
mov dword [rsp - 0x2c], 0xe710a94
xchg rbx, rax
mov rax, rbx
xchg rbx, rax
test rax, rax
je 0x1404c3eb9
cmp byte [rdi], 0
mov dword [rsp - 0xc], ecx
je 0x1404c3acb
call fcn.1400c3660
mov byte [rdi], al
mov dword [rsp - 0x10], esi
lea rdi, [rdi + 1]
cmp byte [rdi], 0
jne 0x1404c3a8c
mov dword [rsp - 0x30], edx
jmp 0x1404c3acb
movzx edx, ax
mov rcx, r14
xchg rbx, rbx
call fcn.14009bfe0
mov rbx, rax
test rax, rax
je 0x1404c3edb
mov dword [rsp - 0x3c], edx
xchg r10, rbx
mov qword [rsi], r10
xchg rbx, r10
add rsi, 8
mov rcx, qword [rsi]
xchg r13, r13
mov eax, ecx
test rcx, rcx
jne 0x1404c3a33
mov eax, dword [r15 + 0x14]
mov dword [rsp - 0x20], esp
nop
add r15, 0x2bf9c7
sub r15, 0x2bf9b3
test eax, eax
mov dword [rsp - 0xc], 0x9d6ab4b
jne 0x1404c3996
mov r15, qword [rsp + 0x48]
xor edi, edi
mov dword [rsp - 0x28], ebx
movzx r14d, di
movzx eax, word [r15 + 0x14]
lea rsi, [r15 + 0x18]
add rsi, rax
mov dword [rsp - 0x10], 0x677510fd
cmp di, word [r15 + 6]
jae 0x1404c40b6
mov r13d, 0x345e926c
xor r13d, 0x716065c3
sub r13d, 0x2abb5d77
xor r13d, 0x2965f0dc
sub r13d, 0x33e669e5
nop word [rax + rax]
test dword [rsi + 0x24], 0x2000000
jne 0x1404c40a0
xchg rsi, rsi
cmp dword [rsi + 8], 0
je 0x1404c40a0
xorps xmm0, xmm0
mov dword [rsp + 0x30], 0x18fa84d7
add dword [rsp + 0x30], 0x472c6d1c
sub dword [rsp + 0x30], 0x15876009
xor dword [rsp + 0x30], 0xc907ab5
add dword [rsp + 0x30], 0xff677c6
lea rcx, [rsp + 0x78]
xchg rbx, rbx
mov word [rsp + 0x34], 0x22a
add word [rsp + 0x34], 0x3f26
sub word [rsp + 0x34], 0x1cea
add word [rsp + 0x34], 0x4502
add word [rsp + 0x34], 0x917
lea rdx, [rsp + 0x78]
xchg rdx, rdx
xchg r11, rcx
mov qword [rsp + 0x70], r11
xchg r11, rcx
mov eax, 0x26d81123
add eax, 0x8cdc131
xor eax, 0x7e24504f
sub eax, 0x2c486858
sub eax, 0x253919bd
mov qword [rbp - 0x58], rax
mov dword [rsp - 0x1c], edx
xchg r8, rsp
movups xmmword [r8 + 0x78], xmm0
xchg rsp, r8
xchg r11, rbp
movups xmmword [r11 - 0x78], xmm0
xchg r11, rbp
movups xmmword [rbp - 0x68], xmm0
mov r14, r14
cmp rcx, rdx
je 0x1404c3c40
call fcn.1400c1b60
xchg rcx, rax
mov rcx, qword [rbp - 0x58]
xchg rcx, rax
lea rdx, [rsp + 0x78]
mov dword [rsp - 0x30], ebp
xorps xmm0, xmm0
xchg r10, rdx
mov qword [rsp + 0x70], r10
xchg r10, rdx
mov rcx, rdi
xchg r11, r11
movups xmmword [rsp + 0x78], xmm0
xchg rbp, r15
movups xmmword [r15 - 0x78], xmm0
xchg r15, rbp
xchg r8, rbp
movups xmmword [r8 - 0x68], xmm0
xchg r8, rbp
test rax, rax
je 0x1404c3c9f
mov rbx, rbx
nop
movzx eax, byte [rsp + rcx + 0x30]
mov word [rdx + rcx*2], ax
mov r10, r10
inc rcx
cmp rcx, qword [rbp - 0x58]
jb 0x1404c3c86
mov edx, 0x7beab87a
xor edx, 0x1b4eb56e
add edx, 0x1b3f795d
sub edx, 0x7be38669
xchg rsi, rcx
mov rsi, rcx
xchg rcx, rsi
call fcn.1400c3580
xchg rsp, rdi
mov rsp, rax
xchg rdi, rsp
lea rcx, [rbp + 8]
lea rax, [rbp + 8]
xor edx, edx
mov dword [rsp - 0x40], esi
mov r8d, 0x20d9459a
add r8d, 0x4d6840cf
sub r8d, 0x25db199e
xor r8d, 0x48666dcb
xchg r11, rax
mov qword [rbp], r11
xchg r11, rax
call fcn.1400c2100
mov dword [rsp - 0x44], edi
cmp rdi, 0xffffffffffffffff
jne 0x1404c3d33
xchg rcx, rdi
mov rax, rcx
xchg rdi, rcx
inc rax
mov r8, r8
cmp byte [rsi + rax], 0
jne 0x1404c3d1a
xchg rdi, rcx
mov rcx, rax
xchg rcx, rdi
xchg rsp, r8
mov rsp, rdi
xchg rsp, r8
lea rcx, [rbp]
mov dword [rsp - 0xc], 0x790f7328
xchg rdx, r8
mov r8, rsi
xchg r8, rdx
call fcn.1400a8950
mov rbx, qword [rbp]
lea rax, [rbp - 0x38]
xchg rdi, rdi
xorps xmm0, xmm0
xchg r11, rax
mov qword [rbp - 0x40], r11
xchg r11, rax
movups xmmword [rbp - 0x38], xmm0
nop
movabs rdx, 0xffffffff2f5597f0
xor rdx, 0xf918847
add rdx, 0xdb4f216
add rdx, 0x7fffffff
xor rdx, 0x5186ee33
movups xmmword [rbp - 0x28], xmm0
mov dword [rsp - 0x2c], 0x33ff4438
xchg r13, rbp
movups xmmword [r13 - 0x18], xmm0
xchg rbp, r13
inc rdx
mov dword [rsp - 0x3c], 0x4ea7bc0e
cmp word [rbx + rdx*2], 0
jne 0x1404c3dae
lea rcx, [rbp - 0x40]
mov r12, r12
xchg r11, rdx
mov qword [rbp - 8], r11
xchg r11, rdx
call fcn.140011430
mov dword [rsp - 0x1c], 0x29096622
xor edi, edi
mov edx, 0x5a668baf
sub edx, 0x5390b394
xor edx, 0x4f2ddaca
sub edx, 0x1295efc6
cmp qword [rbp - 8], rdi
xchg rcx, rcx
jbe 0x1404c3e53
sub rbx, rax
nop dword [rax + rax]
mov dword [rsp - 0x24], 0x440c8360
movzx ecx, dx
lea rax, [rax + 2]
and cx, r13w
xchg r13, r13
ror edx, 5
ror edx, 1
ror edx, 1
ror edx, 1
xor cx, word [rbx + rax - 2]
inc rdi
mov r13, r13
mov word [rax - 2], cx
cmp rdi, qword [rbp - 8]
jb 0x1404c3e1b
mov dword [rsp - 0x30], 0x3ab49396
xor r8d, r8d
lea rdx, [rsp + 0x70]
lea rcx, [rbp - 0x40]
xchg r11, r11
call fcn.14006dff0
xchg rcx, r15
mov r15, qword [rbp - 0x40]
xchg r15, rcx
mov ebx, eax
mov dword [rsp - 0x30], ebp
lea rax, [rbp - 0x38]
cmp rcx, rax
jne 0x1404c3f1f
mov dword [rsp - 0x3c], 0x4affd3ec
lea rdi, [rbp - 0x38]
xor eax, eax
mov ecx, 0x73bfaa58
sub ecx, 0x545ee33b
sub ecx, 0x1bb93443
add ecx, 0x29117e7
sub ecx, 0x638aa91
rep stosb byte [rdi], al
mov r10, r10
jmp 0x1404c3f24
mov edi, 0x5776aaa
add edi, 0x2dafe9a4
sub edi, 0x26ac98be
xor edi, 0x4fb1845
add edi, 0xb77e5ca5
jmp 0x1404c40b6
mov edi, 0x45eee9f9
sub edi, 0x3ebb73aa
add edi, 0x5492c886
sub edi, 0x2a6cac5b
xor edi, 0xf1599342
jmp 0x1404c40b6
mov edi, 0x2a0dbd4a
xor edi, 0x43c1b1e3
sub edi, 0x32820c86
sub edi, 0x1d9cbc07
xor edi, 0xd9ad4529
jmp 0x1404c40b6
call fcn.1400c1b60
xchg rcx, r15
mov r15, qword [rbp]
xchg rcx, r15
lea rax, [rbp + 8]
mov dword [rsp - 0x10], 0x4f1cacd7
cmp rcx, rax
jne 0x1404c3f73
lea rdi, [rbp + 8]
xchg rdi, rdi
xor eax, eax
mov ecx, 0x4913a2e4
add ecx, 0x330eb2b6
xor ecx, 0x4fe7bfba
add ecx, 0x3b7a5d64
sub ecx, 0x6f404684
rep stosb byte [rdi], al
mov rdx, rdx
jmp 0x1404c3f80
call fcn.1400c1b60
mov dword [rsp - 0x38], 0x2db07202
mov rcx, qword [rsp + 0x70]
lea rax, [rsp + 0x78]
cmp rcx, rax
xchg rdx, rdx
jne 0x1404c3fc5
lea rdi, [rsp + 0x78]
xor eax, eax
mov dword [rsp - 0x20], ecx
mov ecx, 0x6090feb1
xor ecx, 0x72a10224
add ecx, 0xdb9a3fb
add ecx, 0x336cec50
sub ecx, 0x53588cb0
rep stosb byte [rdi], al
jmp 0x1404c3fca
call fcn.1400c1b60
test ebx, ebx
je 0x1404c409a
mov dword [rsp - 0x44], ebp
mov eax, dword [rsi + 0xc]
mov rdx, rsi
add rax, qword [rsp + 0x40]
xchg r15, r12
mov rcx, r12
xchg r12, r15
xchg rsi, rax
mov qword [rbp + 0x168], rsi
xchg rsi, rax
call fcn.14009dda0
mov rbx, rbx
mov eax, eax
mov rcx, rsi
xchg rsi, rax
mov qword [rsp + 0x50], rsi
xchg rsi, rax
call fcn.1400a2570
mov rcx, rcx
mov edx, dword [rsi + 0x14]
mov r8d, dword [rsi + 0x10]
add rdx, r12
mov r15, r15
mov rcx, qword [rbp + 0x168]
mov dword [rbp + 0x150], eax
call fcn.1400c1ff0
mov r9d, dword [rbp + 0x150]
mov r12, r12
lea rax, [rbp + 0x150]
lea r8, [rsp + 0x50]
xchg r8, rax
mov qword [rsp + 0x20], r8
xchg r8, rax
lea rdx, [rbp + 0x168]
mov dword [rsp - 0x10], ebx
nop
movabs rcx, 0xffffffff7e081a6c
xor rcx, 0x1067d022
add rcx, 0x354023a
add rcx, 0x7fffffff
add rcx, 0xe3c3378
call fcn.140095400
mov dword [rsp - 0x24], 0x68fd9fb3
mov edi, eax
test eax, eax
js 0x1404c40b6
xor edi, edi
mov dword [rsp - 0x40], esp
inc r14w
add rsi, 0x28
cmp r14w, word [r15 + 6]
mov r9, r9
jb 0x1404c3b69
cmp byte [rsp + 0x58], 0
mov r15, qword [rsp + 0x210]
mov r14, qword [rsp + 0x218]
mov dword [rsp - 0xc], 0x513c7293
xchg r15, r13
mov r15, qword [rsp + 0x220]
xchg r13, r15
xchg r12, rsi
mov rsi, qword [rsp + 0x228]
xchg r12, rsi
mov rsi, qword [rsp + 0x230]
mov rsi, rsi
mov rbx, qword [rsp + 0x260]
je 0x1404c4156
mov rcx, qword [rsp + 0x60]
movabs rax, 0x695a723879b82a07
sub rax, 0x208226f9
sub rax, 0x513d193
sub rax, 0x3cfa7164
add rax, 0x4da46bb4
xor rcx, rax
mov dword [rsp - 0x1c], 0x70864a29
mov edx, 0x63f99f54
sub edx, 0x133cd729
sub edx, 0x68027d9
sub edx, 0x4a3ca051
call fcn.1400c1990
mov eax, edi
sub rsp, 0xfffffffffffffdc8
mov dword [rsp - 0x24], esp
nop
mov rdi, qword [rsp]
add rsp, 8
nop
mov rbp, qword [rsp]
add rsp, 8
ret