Function at 0x140020450
Capabilities:
Encode data using xor
Hash data using fnv
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, 0xb08
mov dword [rsp + 0x3c], r9d
mov qword [rsp + 0x58], r8
mov qword [rsp + 0x50], rdx
mov qword [rsp + 0x30], rcx
movabs rax, 0x7fe085d9e85b5045
mov qword [rsp + 0xb0], rax
xor eax, eax
nop dword [rax + rax]
mov edx, eax
mov byte [rsp + rax + 0xc0], al
mov rdx, rax
inc rdx
mov rax, rdx
cmp rdx, 0x100
jne 0x140020490
xor eax, eax
mov edx, 8
xor r8d, r8d
xor r9d, r9d
nop dword [rax + rax]
movzx r10d, byte [rsp + rdx + 0xb8]
add r8b, r10b
movsxd r9, r9d
add r8b, byte [rsp + r9 + 0xb0]
movzx r11d, r8b
movzx ebx, byte [rsp + r11 + 0xc0]
mov byte [rsp + rdx + 0xb8], bl
mov byte [rsp + r11 + 0xc0], r10b
cmp r9d, 7
lea r9d, [r9 + 1]
cmovge r9d, eax
mov r10, rdx
inc r10
mov rdx, r10
cmp r10, 0x108
jne 0x1400204c0
movzx eax, byte [rsp + 0xc1]
mov edx, eax
movzx r8d, byte [rsp + rax + 0xc0]
mov byte [rsp + 0xc1], r8b
mov byte [rsp + rax + 0xc0], al
add r8b, al
movzx eax, r8b
movzx eax, byte [rsp + rax + 0xc0]
xor rax, 0x4c
movzx r8d, byte [rsp + 0xc2]
mov r9b, r8b
mov r10b, dl
lea edx, [r9 + r10]
movzx edx, dl
mov r9d, edx
movzx r10d, byte [rsp + r9 + 0xc0]
mov byte [rsp + 0xc2], r10b
mov byte [rsp + r9 + 0xc0], r8b
add r10b, r8b
movzx r8d, r10b
movzx r9d, byte [rsp + r8 + 0xc0]
xor r9d, 0x1d
movzx r8d, byte [rsp + 0xc3]
add dl, r8b
movzx edx, dl
mov r10d, edx
movzx r11d, byte [rsp + r10 + 0xc0]
mov byte [rsp + 0xc3], r11b
mov byte [rsp + r10 + 0xc0], r8b
add r11b, r8b
movzx r8d, r11b
movzx r8d, byte [rsp + r8 + 0xc0]
xor r8d, 0x7a
movzx r10d, byte [rsp + 0xc4]
add dl, r10b
movzx r11d, dl
mov edx, r11d
movzx ebx, byte [rsp + rdx + 0xc0]
mov byte [rsp + 0xc4], bl
mov byte [rsp + rdx + 0xc0], r10b
add bl, r10b
movzx edx, bl
movzx edx, byte [rsp + rdx + 0xc0]
xor edx, 7
movzx r10d, byte [rsp + 0xc5]
add r11b, r10b
movzx r11d, r11b
mov esi, r11d
movzx ebx, byte [rsp + rsi + 0xc0]
mov byte [rsp + 0xc5], bl
mov byte [rsp + rsi + 0xc0], r10b
add bl, r10b
movzx r10d, bl
movzx r10d, byte [rsp + r10 + 0xc0]
xor r10d, 0xf0
movzx ebx, byte [rsp + 0xc6]
add r11b, bl
movzx esi, r11b
mov r11d, esi
movzx edi, byte [rsp + r11 + 0xc0]
mov byte [rsp + 0xc6], dil
mov byte [rsp + r11 + 0xc0], bl
add dil, bl
movzx r11d, dil
movzx r11d, byte [rsp + r11 + 0xc0]
xor r11d, 0xb1
movzx ebx, byte [rsp + 0xc7]
add sil, bl
movzx esi, sil
mov edi, esi
movzx ebp, byte [rsp + rdi + 0xc0]
mov byte [rsp + 0xc7], bpl
mov byte [rsp + rdi + 0xc0], bl
add bpl, bl
movzx edi, bpl
movzx edi, byte [rsp + rdi + 0xc0]
xor edi, 0x9c
movzx ebx, byte [rsp + 0xc8]
add sil, bl
movzx esi, sil
mov r14d, esi
movzx ebp, byte [rsp + r14 + 0xc0]
mov byte [rsp + 0xc8], bpl
mov byte [rsp + r14 + 0xc0], bl
add bpl, bl
movzx ebx, bpl
movzx ebx, byte [rsp + rbx + 0xc0]
xor ebx, 0x69
mov dword [rsp + 0xb8], 8
mov dword [rsp + 0xbc], esi
shl rbx, 0x38
shl rdi, 0x30
or rdi, rbx
shl r11, 0x28
or r11, rdi
shl r10, 0x20
or r10, r11
shl edx, 0x18
or rdx, r10
shl r8d, 0x10
or r8, rdx
shl r9d, 8
mov edx, r9d
or rdx, r8
mov r10, rdx
or r10, rax
xor r10, qword [rsp + 0x30]
movabs rax, 0x7fe085d9e85b5045
mov qword [rsp + 0xa8], rax
xor eax, eax
nop word cs:[rax + rax]
mov edx, eax
mov byte [rsp + rax + 0x1c8], al
mov rdx, rax
inc rdx
mov rax, rdx
cmp rdx, 0x100
jne 0x140020770
xor eax, eax
mov edx, 8
xor r8d, r8d
xor r9d, r9d
nop dword [rax + rax]
movzx r11d, byte [rsp + rdx + 0x1c0]
add r8b, r11b
movsxd r9, r9d
add r8b, byte [rsp + r9 + 0xa8]
movzx esi, r8b
movzx ebx, byte [rsp + rsi + 0x1c8]
mov byte [rsp + rdx + 0x1c0], bl
mov byte [rsp + rsi + 0x1c8], r11b
cmp r9d, 7
lea r9d, [r9 + 1]
cmovge r9d, eax
mov r11, rdx
inc r11
mov rdx, r11
cmp r11, 0x108
jne 0x1400207a0
movzx eax, byte [rsp + 0x1c9]
mov edx, eax
movzx r8d, byte [rsp + rax + 0x1c8]
mov byte [rsp + 0x1c9], r8b
mov byte [rsp + rax + 0x1c8], al
add r8b, al
movzx eax, r8b
movzx eax, byte [rsp + rax + 0x1c8]
xor rax, 0x4c
movzx r8d, byte [rsp + 0x1ca]
mov r9b, r8b
mov r11b, dl
lea edx, [r9 + r11]
movzx edx, dl
mov r9d, edx
movzx r11d, byte [rsp + r9 + 0x1c8]
mov byte [rsp + 0x1ca], r11b
mov byte [rsp + r9 + 0x1c8], r8b
add r11b, r8b
movzx r8d, r11b
movzx r9d, byte [rsp + r8 + 0x1c8]
xor r9d, 0x1d
movzx r8d, byte [rsp + 0x1cb]
add dl, r8b
movzx edx, dl
mov r11d, edx
movzx ebx, byte [rsp + r11 + 0x1c8]
mov byte [rsp + 0x1cb], bl
mov byte [rsp + r11 + 0x1c8], r8b
add bl, r8b
movzx r8d, bl
movzx r8d, byte [rsp + r8 + 0x1c8]
xor r8d, 0x7a
movzx r11d, byte [rsp + 0x1cc]
add dl, r11b
movzx esi, dl
mov edx, esi
movzx ebx, byte [rsp + rdx + 0x1c8]
mov byte [rsp + 0x1cc], bl
mov byte [rsp + rdx + 0x1c8], r11b
add bl, r11b
movzx edx, bl
movzx edx, byte [rsp + rdx + 0x1c8]
xor edx, 7
movzx r11d, byte [rsp + 0x1cd]
mov ebx, esi
add bl, r11b
movzx esi, bl
mov edi, esi
movzx ebx, byte [rsp + rdi + 0x1c8]
mov byte [rsp + 0x1cd], bl
mov byte [rsp + rdi + 0x1c8], r11b
add bl, r11b
movzx r11d, bl
movzx r11d, byte [rsp + r11 + 0x1c8]
xor r11d, 0xf0
movzx ebx, byte [rsp + 0x1ce]
add sil, bl
movzx esi, sil
mov edi, esi
movzx ebp, byte [rsp + rdi + 0x1c8]
mov byte [rsp + 0x1ce], bpl
mov byte [rsp + rdi + 0x1c8], bl
add bpl, bl
movzx edi, bpl
movzx edi, byte [rsp + rdi + 0x1c8]
xor edi, 0xb1
movzx ebx, byte [rsp + 0x1cf]
add sil, bl
movzx esi, sil
mov r14d, esi
movzx ebp, byte [rsp + r14 + 0x1c8]
mov byte [rsp + 0x1cf], bpl
mov byte [rsp + r14 + 0x1c8], bl
add bpl, bl
movzx ebx, bpl
movzx ebx, byte [rsp + rbx + 0x1c8]
xor ebx, 0x9c
movzx ebp, byte [rsp + 0x1d0]
add sil, bpl
movzx esi, sil
mov r14d, esi
movzx r15d, byte [rsp + r14 + 0x1c8]
mov byte [rsp + 0x1d0], r15b
mov byte [rsp + r14 + 0x1c8], bpl
add r15b, bpl
movzx ebp, r15b
mov r14d, ebp
movzx ebp, byte [rsp + r14 + 0x1c8]
xor ebp, 0x69
mov r14d, ebp
mov dword [rsp + 0x1c0], 8
mov dword [rsp + 0x1c4], esi
shl r14, 0x38
shl rbx, 0x30
or rbx, r14
shl rdi, 0x28
or rdi, rbx
shl r11, 0x20
or r11, rdi
shl edx, 0x18
or rdx, r11
shl r8d, 0x10
or r8, rdx
shl r9d, 8
mov edx, r9d
or rdx, r8
or rdx, rax
mov rax, rdx
xor rax, qword [rsp + 0x30]
movsxd r10, dword [r10 + 0x3c]
movabs rcx, 0x7fe085d9e85b5045
mov qword [rsp + 0xa0], rcx
xor edx, edx
nop dword [rax]
mov r8d, edx
mov byte [rsp + rdx + 0x2d0], dl
mov r8, rdx
inc r8
mov rdx, r8
cmp r8, 0x100
jne 0x140020a50
xor edx, edx
mov r8d, 8
xor r9d, r9d
xor r11d, r11d
nop word [rax + rax]
movzx ebx, byte [rsp + r8 + 0x2c8]
add r9b, bl
movsxd r11, r11d
add r9b, byte [rsp + r11 + 0xa0]
movzx esi, r9b
movzx edi, byte [rsp + rsi + 0x2d0]
mov byte [rsp + r8 + 0x2c8], dil
mov byte [rsp + rsi + 0x2d0], bl
cmp r11d, 7
lea r11d, [r11 + 1]
cmovge r11d, edx
mov rsi, r8
inc rsi
mov r8, rsi
cmp rsi, 0x108
jne 0x140020a80
movzx edx, byte [rsp + 0x2d1]
mov r8d, edx
movzx r9d, byte [rsp + rdx + 0x2d0]
mov byte [rsp + 0x2d1], r9b
mov byte [rsp + rdx + 0x2d0], dl
add r9b, dl
movzx edx, r9b
movzx edx, byte [rsp + rdx + 0x2d0]
mov r11d, edx
xor r11, 0x4c
movzx edx, byte [rsp + 0x2d2]
mov r9b, dl
mov sil, r8b
lea r8d, [r9 + rsi]
movzx r8d, r8b
mov r9d, r8d
movzx ebx, byte [rsp + r9 + 0x2d0]
mov byte [rsp + 0x2d2], bl
mov byte [rsp + r9 + 0x2d0], dl
add bl, dl
movzx edx, bl
movzx r9d, byte [rsp + rdx + 0x2d0]
xor r9d, 0x1d
movzx edx, byte [rsp + 0x2d3]
add r8b, dl
movzx esi, r8b
mov r8d, esi
movzx ebx, byte [rsp + r8 + 0x2d0]
mov byte [rsp + 0x2d3], bl
mov byte [rsp + r8 + 0x2d0], dl
add bl, dl
movzx edx, bl
movzx r8d, byte [rsp + rdx + 0x2d0]
xor r8d, 0x7a
movzx edx, byte [rsp + 0x2d4]
mov ebx, esi
add bl, dl
movzx esi, bl
mov edi, esi
movzx ebx, byte [rsp + rdi + 0x2d0]
mov byte [rsp + 0x2d4], bl
mov byte [rsp + rdi + 0x2d0], dl
add bl, dl
movzx edx, bl
movzx edx, byte [rsp + rdx + 0x2d0]
xor edx, 7
movzx ebx, byte [rsp + 0x2d5]
add sil, bl
movzx esi, sil
mov edi, esi
movzx ebp, byte [rsp + rdi + 0x2d0]
mov byte [rsp + 0x2d5], bpl
mov byte [rsp + rdi + 0x2d0], bl
add bpl, bl
movzx edi, bpl
movzx edi, byte [rsp + rdi + 0x2d0]
xor edi, 0xf0
movzx ebx, byte [rsp + 0x2d6]
add sil, bl
movzx esi, sil
mov r14d, esi
movzx ebp, byte [rsp + r14 + 0x2d0]
mov byte [rsp + 0x2d6], bpl
mov byte [rsp + r14 + 0x2d0], bl
add bpl, bl
movzx ebx, bpl
movzx ebx, byte [rsp + rbx + 0x2d0]
xor ebx, 0xb1
movzx ebp, byte [rsp + 0x2d7]
add sil, bpl
movzx esi, sil
mov r14d, esi
movzx r15d, byte [rsp + r14 + 0x2d0]
mov byte [rsp + 0x2d7], r15b
mov byte [rsp + r14 + 0x2d0], bpl
add r15b, bpl
movzx ebp, r15b
mov r14d, ebp
movzx ebp, byte [rsp + r14 + 0x2d0]
xor ebp, 0x9c
mov r14d, ebp
movzx ebp, byte [rsp + 0x2d8]
add sil, bpl
movzx esi, sil
mov r15d, esi
movzx r12d, byte [rsp + r15 + 0x2d0]
mov byte [rsp + 0x2d8], r12b
mov byte [rsp + r15 + 0x2d0], bpl
add r12b, bpl
movzx ebp, r12b
mov r15d, ebp
movzx ebp, byte [rsp + r15 + 0x2d0]
xor ebp, 0x69
mov r15d, ebp
mov dword [rsp + 0x2c8], 8
mov dword [rsp + 0x2cc], esi
shl r15, 0x38
shl r14, 0x30
or r14, r15
shl rbx, 0x28
or rbx, r14
shl rdi, 0x20
or rdi, rbx
shl edx, 0x18
or rdx, rdi
shl r8d, 0x10
or r8, rdx
shl r9d, 8
mov edx, r9d
or rdx, r8
mov r14, rdx
or r14, r11
xor r14, qword [rsp + 0x30]
mov eax, dword [rax + r10 + 0x88]
mov r15d, eax
movabs rax, 0x7fe085d9e85b5045
mov qword [rsp + 0x98], rax
xor eax, eax
nop word cs:[rax + rax]
mov edx, eax
mov byte [rsp + rax + 0x3d8], al
mov rdx, rax
inc rdx
mov rax, rdx
cmp rdx, 0x100
jne 0x140020d40
xor eax, eax
mov edx, 8
xor r8d, r8d
xor r9d, r9d
nop dword [rax + rax]
movzx r10d, byte [rsp + rdx + 0x3d0]
add r8b, r10b
movsxd r9, r9d
add r8b, byte [rsp + r9 + 0x98]
movzx r11d, r8b
movzx ebx, byte [rsp + r11 + 0x3d8]
mov byte [rsp + rdx + 0x3d0], bl
mov byte [rsp + r11 + 0x3d8], r10b
cmp r9d, 7
lea r9d, [r9 + 1]
cmovge r9d, eax
mov r10, rdx
inc r10
mov rdx, r10
cmp r10, 0x108
jne 0x140020d70
movzx eax, byte [rsp + 0x3d9]
mov edx, eax
movzx r8d, byte [rsp + rax + 0x3d8]
mov byte [rsp + 0x3d9], r8b
mov byte [rsp + rax + 0x3d8], al
add r8b, al
movzx eax, r8b
movzx eax, byte [rsp + rax + 0x3d8]
xor rax, 0x4c
movzx r8d, byte [rsp + 0x3da]
mov r9b, r8b
mov r10b, dl
lea edx, [r9 + r10]
movzx edx, dl
mov r9d, edx
movzx r10d, byte [rsp + r9 + 0x3d8]
mov byte [rsp + 0x3da], r10b
mov byte [rsp + r9 + 0x3d8], r8b
add r10b, r8b
movzx r8d, r10b
movzx r9d, byte [rsp + r8 + 0x3d8]
xor r9d, 0x1d
movzx r8d, byte [rsp + 0x3db]
add dl, r8b
movzx edx, dl
mov r10d, edx
movzx r11d, byte [rsp + r10 + 0x3d8]
mov byte [rsp + 0x3db], r11b
mov byte [rsp + r10 + 0x3d8], r8b
add r11b, r8b
movzx r8d, r11b
movzx r8d, byte [rsp + r8 + 0x3d8]
xor r8d, 0x7a
movzx r10d, byte [rsp + 0x3dc]
add dl, r10b
movzx r11d, dl
mov edx, r11d
movzx ebx, byte [rsp + rdx + 0x3d8]
mov byte [rsp + 0x3dc], bl
mov byte [rsp + rdx + 0x3d8], r10b
add bl, r10b
movzx edx, bl
movzx edx, byte [rsp + rdx + 0x3d8]
xor edx, 7
movzx r10d, byte [rsp + 0x3dd]
add r11b, r10b
movzx r11d, r11b
mov esi, r11d
movzx ebx, byte [rsp + rsi + 0x3d8]
mov byte [rsp + 0x3dd], bl
mov byte [rsp + rsi + 0x3d8], r10b
add bl, r10b
movzx r10d, bl
movzx r10d, byte [rsp + r10 + 0x3d8]
xor r10d, 0xf0
movzx ebx, byte [rsp + 0x3de]
add r11b, bl
movzx esi, r11b
mov r11d, esi
movzx edi, byte [rsp + r11 + 0x3d8]
mov byte [rsp + 0x3de], dil
mov byte [rsp + r11 + 0x3d8], bl
add dil, bl
movzx r11d, dil
movzx r11d, byte [rsp + r11 + 0x3d8]
xor r11d, 0xb1
movzx ebx, byte [rsp + 0x3df]
add sil, bl
movzx esi, sil
mov edi, esi
movzx ebp, byte [rsp + rdi + 0x3d8]
mov byte [rsp + 0x3df], bpl
mov byte [rsp + rdi + 0x3d8], bl
add bpl, bl
movzx edi, bpl
movzx edi, byte [rsp + rdi + 0x3d8]
xor edi, 0x9c
movzx ebx, byte [rsp + 0x3e0]
add sil, bl
movzx esi, sil
mov r12d, esi
movzx ebp, byte [rsp + r12 + 0x3d8]
mov byte [rsp + 0x3e0], bpl
mov byte [rsp + r12 + 0x3d8], bl
add bpl, bl
movzx ebx, bpl
movzx ebx, byte [rsp + rbx + 0x3d8]
xor ebx, 0x69
mov dword [rsp + 0x3d0], 8
mov dword [rsp + 0x3d4], esi
shl rbx, 0x38
shl rdi, 0x30
or rdi, rbx
shl r11, 0x28
or r11, rdi
shl r10, 0x20
or r10, r11
shl edx, 0x18
or rdx, r10
shl r8d, 0x10
or r8, rdx
shl r9d, 8
mov edx, r9d
or rdx, r8
or rdx, rax
xor rdx, qword [rsp + 0x30]
mov eax, dword [r14 + r15 + 0x1c]
add rax, rdx
mov qword [rsp + 0x48], rax
movabs rax, 0x7fe085d9e85b5045
mov qword [rsp + 0x90], rax
xor eax, eax
nop
mov edx, eax
mov byte [rsp + rax + 0x4e0], al
mov rdx, rax
inc rdx
mov rax, rdx
cmp rdx, 0x100
jne 0x140021020
xor eax, eax
mov edx, 8
xor r8d, r8d
xor r9d, r9d
nop dword [rax + rax]
movzx r10d, byte [rsp + rdx + 0x4d8]
add r8b, r10b
movsxd r9, r9d
add r8b, byte [rsp + r9 + 0x90]
movzx r11d, r8b
movzx ebx, byte [rsp + r11 + 0x4e0]
mov byte [rsp + rdx + 0x4d8], bl
mov byte [rsp + r11 + 0x4e0], r10b
cmp r9d, 7
lea r9d, [r9 + 1]
cmovge r9d, eax
mov r10, rdx
inc r10
mov rdx, r10
cmp r10, 0x108
jne 0x140021050
movzx eax, byte [rsp + 0x4e1]
mov edx, eax
movzx r8d, byte [rsp + rax + 0x4e0]
mov byte [rsp + 0x4e1], r8b
mov byte [rsp + rax + 0x4e0], al
add r8b, al
movzx eax, r8b
movzx eax, byte [rsp + rax + 0x4e0]
xor rax, 0x4c
movzx r8d, byte [rsp + 0x4e2]
mov r9b, r8b
mov r10b, dl
lea edx, [r9 + r10]
movzx edx, dl
mov r9d, edx
movzx r10d, byte [rsp + r9 + 0x4e0]
mov byte [rsp + 0x4e2], r10b
mov byte [rsp + r9 + 0x4e0], r8b
add r10b, r8b
movzx r8d, r10b
movzx r9d, byte [rsp + r8 + 0x4e0]
xor r9d, 0x1d
movzx r8d, byte [rsp + 0x4e3]
add dl, r8b
movzx edx, dl
mov r10d, edx
movzx r11d, byte [rsp + r10 + 0x4e0]
mov byte [rsp + 0x4e3], r11b
mov byte [rsp + r10 + 0x4e0], r8b
add r11b, r8b
movzx r8d, r11b
movzx r8d, byte [rsp + r8 + 0x4e0]
xor r8d, 0x7a
movzx r10d, byte [rsp + 0x4e4]
add dl, r10b
movzx r11d, dl
mov edx, r11d
movzx ebx, byte [rsp + rdx + 0x4e0]
mov byte [rsp + 0x4e4], bl
mov byte [rsp + rdx + 0x4e0], r10b
add bl, r10b
movzx edx, bl
movzx edx, byte [rsp + rdx + 0x4e0]
xor edx, 7
movzx r10d, byte [rsp + 0x4e5]
add r11b, r10b
movzx r11d, r11b
mov esi, r11d
movzx ebx, byte [rsp + rsi + 0x4e0]
mov byte [rsp + 0x4e5], bl
mov byte [rsp + rsi + 0x4e0], r10b
add bl, r10b
movzx r10d, bl
movzx r10d, byte [rsp + r10 + 0x4e0]
xor r10d, 0xf0
movzx ebx, byte [rsp + 0x4e6]
add r11b, bl
movzx esi, r11b
mov r11d, esi
movzx edi, byte [rsp + r11 + 0x4e0]
mov byte [rsp + 0x4e6], dil
mov byte [rsp + r11 + 0x4e0], bl
add dil, bl
movzx r11d, dil
movzx r11d, byte [rsp + r11 + 0x4e0]
xor r11d, 0xb1
movzx ebx, byte [rsp + 0x4e7]
add sil, bl
movzx esi, sil
mov edi, esi
movzx ebp, byte [rsp + rdi + 0x4e0]
mov byte [rsp + 0x4e7], bpl
mov byte [rsp + rdi + 0x4e0], bl
add bpl, bl
movzx edi, bpl
movzx edi, byte [rsp + rdi + 0x4e0]
xor edi, 0x9c
movzx ebx, byte [rsp + 0x4e8]
add sil, bl
movzx esi, sil
mov r12d, esi
movzx ebp, byte [rsp + r12 + 0x4e0]
mov byte [rsp + 0x4e8], bpl
mov byte [rsp + r12 + 0x4e0], bl
add bpl, bl
movzx ebx, bpl
movzx ebx, byte [rsp + rbx + 0x4e0]
xor ebx, 0x69
mov dword [rsp + 0x4d8], 8
mov dword [rsp + 0x4dc], esi
shl rbx, 0x38
shl rdi, 0x30
or rdi, rbx
shl r11, 0x28
or r11, rdi
shl r10, 0x20
or r10, r11
shl edx, 0x18
or rdx, r10
shl r8d, 0x10
or r8, rdx
shl r9d, 8
mov edx, r9d
or rdx, r8
or rdx, rax
xor rdx, qword [rsp + 0x30]
mov eax, dword [r14 + r15 + 0x20]
mov r12d, eax
add r12, rdx
mov qword [rsp + 0x60], r12
movabs rax, 0x7fe085d9e85b5045
mov qword [rsp + 0x88], rax
xor eax, eax
nop word cs:[rax + rax]
mov edx, eax
mov byte [rsp + rax + 0x5e8], al
mov rdx, rax
inc rdx
mov rax, rdx
cmp rdx, 0x100
jne 0x140021310
xor eax, eax
mov edx, 8
xor r8d, r8d
xor r9d, r9d
nop dword [rax + rax]
movzx r10d, byte [rsp + rdx + 0x5e0]
add r8b, r10b
movsxd r9, r9d
add r8b, byte [rsp + r9 + 0x88]
movzx r11d, r8b
movzx ebx, byte [rsp + r11 + 0x5e8]
mov byte [rsp + rdx + 0x5e0], bl
mov byte [rsp + r11 + 0x5e8], r10b
cmp r9d, 7
lea r9d, [r9 + 1]
cmovge r9d, eax
mov r10, rdx
inc r10
mov rdx, r10
cmp r10, 0x108
jne 0x140021340
movzx eax, byte [rsp + 0x5e9]
mov edx, eax
movzx r8d, byte [rsp + rax + 0x5e8]
mov byte [rsp + 0x5e9], r8b
mov byte [rsp + rax + 0x5e8], al
add r8b, al
movzx eax, r8b
movzx eax, byte [rsp + rax + 0x5e8]
movzx r8d, byte [rsp + 0x5ea]
mov r9b, r8b
mov r10b, dl
lea edx, [r9 + r10]
movzx r9d, dl
mov edx, r9d
movzx r10d, byte [rsp + rdx + 0x5e8]
mov byte [rsp + 0x5ea], r10b
mov byte [rsp + rdx + 0x5e8], r8b
add r10b, r8b
movzx edx, r10b
movzx edx, byte [rsp + rdx + 0x5e8]
movzx r8d, byte [rsp + 0x5eb]
add r9b, r8b
movzx r9d, r9b
mov r10d, r9d
movzx r11d, byte [rsp + r10 + 0x5e8]
mov byte [rsp + 0x5eb], r11b
mov byte [rsp + r10 + 0x5e8], r8b
add r11b, r8b
movzx r8d, r11b
movzx r8d, byte [rsp + r8 + 0x5e8]
movzx r10d, byte [rsp + 0x5ec]
add r9b, r10b
movzx r11d, r9b
mov r9d, r11d
movzx ebx, byte [rsp + r9 + 0x5e8]
mov byte [rsp + 0x5ec], bl
mov byte [rsp + r9 + 0x5e8], r10b
add bl, r10b
movzx r9d, bl
movzx r9d, byte [rsp + r9 + 0x5e8]
movzx r10d, byte [rsp + 0x5ed]
add r11b, r10b
movzx r11d, r11b
mov esi, r11d
movzx ebx, byte [rsp + rsi + 0x5e8]
mov byte [rsp + 0x5ed], bl
mov byte [rsp + rsi + 0x5e8], r10b
add bl, r10b
movzx r10d, bl
movzx r10d, byte [rsp + r10 + 0x5e8]
movzx ebx, byte [rsp + 0x5ee]
add r11b, bl
movzx esi, r11b
mov r11d, esi
movzx edi, byte [rsp + r11 + 0x5e8]
mov byte [rsp + 0x5ee], dil
mov byte [rsp + r11 + 0x5e8], bl
add dil, bl
movzx r11d, dil
movzx r11d, byte [rsp + r11 + 0x5e8]
movzx ebx, byte [rsp + 0x5ef]
add sil, bl
movzx edi, sil
mov esi, edi
movzx ebp, byte [rsp + rsi + 0x5e8]
mov byte [rsp + 0x5ef], bpl
mov byte [rsp + rsi + 0x5e8], bl
add bpl, bl
movzx esi, bpl
movzx esi, byte [rsp + rsi + 0x5e8]
movzx ebx, byte [rsp + 0x5f0]
add dil, bl
movzx ebp, dil
mov edi, ebp
movzx r13d, byte [rsp + rdi + 0x5e8]
mov byte [rsp + 0x5f0], r13b
mov byte [rsp + rdi + 0x5e8], bl
add r13b, bl
movzx edi, r13b
movzx edi, byte [rsp + rdi + 0x5e8]
mov dword [rsp + 0x5e0], 8
mov dword [rsp + 0x5e4], ebp
mov ebx, dword [r14 + r15 + 0x18]
mov r12d, ebx
xor ebp, ebp
test r12, r12
je 0x140021eda
xor rax, 0x4c
xor edx, 0x1d
xor r8d, 0x7a
xor r9d, 7
xor r10d, 0xf0
xor r11d, 0xb1
xor esi, 0x9c
xor edi, 0x69
shl rdi, 0x38
shl rsi, 0x30
or rsi, rdi
shl r11, 0x28
or r11, rsi
shl r10, 0x20
or r10, r11
shl r9d, 0x18
or r9, r10
shl r8d, 0x10
or r8, r9
shl edx, 8
or rdx, r8
or rdx, rax
xor rdx, qword [rsp + 0x30]
mov eax, dword [r14 + r15 + 0x24]
add rax, rdx
mov qword [rsp + 0x40], rax
movabs r11, 0x100000001b3
xor r15d, r15d
jmp 0x140021612
mov rdx, r15
inc rdx
mov r15, rdx
cmp rdx, r12
je 0x140021eda
movabs rax, 0x7fe085d9e85b5045
mov qword [rsp + 0x80], rax
xor edx, edx
nop word cs:[rax + rax]
mov r8d, edx
mov byte [rsp + rdx + 0x6f0], dl
mov r8, rdx
inc r8
mov rdx, r8
cmp r8, 0x100
jne 0x140021630
mov edx, 8
xor r8d, r8d
xor r9d, r9d
nop word [rax + rax]
movzx ebx, byte [rsp + rdx + 0x6e8]
add r8b, bl
movsxd r9, r9d
add r8b, byte [rsp + r9 + 0x80]
movzx esi, r8b
movzx edi, byte [rsp + rsi + 0x6f0]
mov byte [rsp + rdx + 0x6e8], dil
mov byte [rsp + rsi + 0x6f0], bl
cmp r9d, 7
lea r9d, [r9 + 1]
cmovge r9d, ebp
mov rsi, rdx
inc rsi
mov rdx, rsi
cmp rsi, 0x108
jne 0x140021660
movzx edx, byte [rsp + 0x6f1]
mov r8d, edx
movzx r9d, byte [rsp + rdx + 0x6f0]
mov byte [rsp + 0x6f1], r9b
mov byte [rsp + rdx + 0x6f0], dl
add r9b, dl
movzx edx, r9b
movzx edx, byte [rsp + rdx + 0x6f0]
mov r9d, edx
xor r9, 0x4c
movzx edx, byte [rsp + 0x6f2]
mov sil, dl
mov dil, r8b
lea r8d, [rsi + rdi]
movzx esi, r8b
mov r8d, esi
movzx ebx, byte [rsp + r8 + 0x6f0]
mov byte [rsp + 0x6f2], bl
mov byte [rsp + r8 + 0x6f0], dl
add bl, dl
movzx edx, bl
movzx r8d, byte [rsp + rdx + 0x6f0]
xor r8d, 0x1d
movzx edx, byte [rsp + 0x6f3]
mov ebx, esi
add bl, dl
movzx esi, bl
mov edi, esi
movzx ebx, byte [rsp + rdi + 0x6f0]
mov byte [rsp + 0x6f3], bl
mov byte [rsp + rdi + 0x6f0], dl
add bl, dl
movzx edx, bl
movzx edx, byte [rsp + rdx + 0x6f0]
xor edx, 0x7a
movzx ebx, byte [rsp + 0x6f4]
add sil, bl
movzx esi, sil
mov edi, esi
movzx r14d, byte [rsp + rdi + 0x6f0]
mov byte [rsp + 0x6f4], r14b
mov byte [rsp + rdi + 0x6f0], bl
add r14b, bl
movzx edi, r14b
movzx ebx, byte [rsp + rdi + 0x6f0]
xor ebx, 7
movzx edi, byte [rsp + 0x6f5]
add sil, dil
movzx esi, sil
mov r14d, esi
movzx eax, byte [rsp + r14 + 0x6f0]
mov byte [rsp + 0x6f5], al
mov byte [rsp + r14 + 0x6f0], dil
add al, dil
movzx eax, al
movzx eax, byte [rsp + rax + 0x6f0]
xor eax, 0xf0
mov r14d, eax
movzx eax, byte [rsp + 0x6f6]
add sil, al
movzx edi, sil
mov esi, edi
movzx ecx, byte [rsp + rsi + 0x6f0]
mov byte [rsp + 0x6f6], cl
mov byte [rsp + rsi + 0x6f0], al
add cl, al
movzx eax, cl
movzx eax, byte [rsp + rax + 0x6f0]
xor eax, 0xb1
mov esi, eax
movzx eax, byte [rsp + 0x6f7]
mov ecx, edi
add cl, al
movzx ecx, cl
mov edi, ecx
movzx r10d, byte [rsp + rdi + 0x6f0]
mov byte [rsp + 0x6f7], r10b
mov byte [rsp + rdi + 0x6f0], al
add r10b, al
movzx eax, r10b
movzx eax, byte [rsp + rax + 0x6f0]
xor eax, 0x9c
movzx r10d, byte [rsp + 0x6f8]
add cl, r10b
movzx edi, cl
mov ecx, edi
movzx r13d, byte [rsp + rcx + 0x6f0]
mov byte [rsp + 0x6f8], r13b
mov byte [rsp + rcx + 0x6f0], r10b
add r13b, r10b
movzx ecx, r13b
movzx ecx, byte [rsp + rcx + 0x6f0]
xor ecx, 0x69
shl rcx, 0x38
shl rax, 0x30
or rax, rcx
shl rsi, 0x28
or rsi, rax
shl r14, 0x20
or r14, rsi
shl ebx, 0x18
mov eax, ebx
or rax, r14
shl edx, 0x10
mov ecx, edx
or rcx, rax
shl r8d, 8
mov eax, r8d
or rax, rcx
or rax, r9
mov r8, rax
xor r8, qword [rsp + 0x30]
mov rax, qword [rsp + 0x60]
mov eax, dword [rax + r15*4]
mov r9d, eax
movzx edx, byte [r8 + r9]
test dl, dl
je 0x140021600
add r8, r9
inc r8
mov r9d, edx
movabs rsi, 0x3d2c42763565e5e8
nop dword [rax + rax]
movsx rdx, r9b
xor rdx, rsi
imul rdx, r11
movzx eax, byte [r8]
inc r8
mov r9d, eax
mov rsi, rdx
test al, al
jne 0x140021900
movabs rax, 0x2920b8fd26dfdb5
cmp rdx, rax
jne 0x140021600
mov dword [rsp + 0x6ec], edi
mov dword [rsp + 0x6e8], 8
movabs rax, 0x7fe085d9e85b5045
mov qword [rsp + 0x78], rax
xor eax, eax
nop word cs:[rax + rax]
mov ecx, eax
mov byte [rsp + rax + 0x7f8], al
mov rcx, rax
inc rcx
mov rax, rcx
cmp rcx, 0x100
jne 0x140021960
xor eax, eax
xor edx, edx
xor r8d, r8d
xor r9d, r9d
nop word cs:[rax + rax]
mov ecx, r8d
movzx r8d, byte [rsp + rdx + 0x7f8]
add cl, r8b
movsxd r9, r9d
add cl, byte [rsp + r9 + 0x78]
movzx r10d, cl
movzx r11d, byte [rsp + r10 + 0x7f8]
mov byte [rsp + rdx + 0x7f8], r11b
mov byte [rsp + r10 + 0x7f8], r8b
mov r8d, r9d
cmp r9d, 7
lea r9d, [r8 + 1]
cmovge r9d, eax
mov r10, rdx
inc r10
mov rdx, r10
mov r8d, ecx
cmp r10, 0x100
jne 0x140021990
movzx eax, byte [rsp + 0x7f9]
mov ecx, eax
movzx edx, byte [rsp + rax + 0x7f8]
mov byte [rsp + 0x7f9], dl
mov byte [rsp + rax + 0x7f8], al
add dl, al
movzx eax, dl
movzx eax, byte [rsp + rax + 0x7f8]
xor rax, 0x4c
movzx edx, byte [rsp + 0x7fa]
mov r8b, dl
mov r9b, cl
lea ecx, [r8 + r9]
movzx ecx, cl
mov r8d, ecx
movzx r9d, byte [rsp + r8 + 0x7f8]
mov byte [rsp + 0x7fa], r9b
mov byte [rsp + r8 + 0x7f8], dl
add r9b, dl
movzx edx, r9b
movzx r8d, byte [rsp + rdx + 0x7f8]
xor r8d, 0x1d
movzx edx, byte [rsp + 0x7fb]
add cl, dl
movzx ecx, cl
mov r9d, ecx
movzx r10d, byte [rsp + r9 + 0x7f8]
mov byte [rsp + 0x7fb], r10b
mov byte [rsp + r9 + 0x7f8], dl
add r10b, dl
movzx edx, r10b
movzx edx, byte [rsp + rdx + 0x7f8]
xor edx, 0x7a
movzx r9d, byte [rsp + 0x7fc]
add cl, r9b
movzx ecx, cl
mov r10d, ecx
movzx r11d, byte [rsp + r10 + 0x7f8]
mov byte [rsp + 0x7fc], r11b
mov byte [rsp + r10 + 0x7f8], r9b
add r11b, r9b
movzx r9d, r11b
movzx r9d, byte [rsp + r9 + 0x7f8]
xor r9d, 7
movzx r10d, byte [rsp + 0x7fd]
add cl, r10b
movzx ecx, cl
mov r11d, ecx
movzx ebx, byte [rsp + r11 + 0x7f8]
mov byte [rsp + 0x7fd], bl
mov byte [rsp + r11 + 0x7f8], r10b
add bl, r10b
movzx r10d, bl
movzx r10d, byte [rsp + r10 + 0x7f8]
xor r10d, 0xf0
movzx r11d, byte [rsp + 0x7fe]
add cl, r11b
movzx ecx, cl
mov esi, ecx
movzx ebx, byte [rsp + rsi + 0x7f8]
mov byte [rsp + 0x7fe], bl
mov byte [rsp + rsi + 0x7f8], r11b
add bl, r11b
movzx r11d, bl
movzx r11d, byte [rsp + r11 + 0x7f8]
xor r11d, 0xb1
movzx ebx, byte [rsp + 0x7ff]
add cl, bl
movzx ecx, cl
mov esi, ecx
movzx edi, byte [rsp + rsi + 0x7f8]
mov byte [rsp + 0x7ff], dil
mov byte [rsp + rsi + 0x7f8], bl
add dil, bl
movzx esi, dil
movzx esi, byte [rsp + rsi + 0x7f8]
xor esi, 0x9c
movzx ebx, byte [rsp + 0x800]
add cl, bl
movzx ecx, cl
movzx edi, byte [rsp + rcx + 0x7f8]
mov byte [rsp + 0x800], dil
mov byte [rsp + rcx + 0x7f8], bl
add dil, bl
movzx ecx, dil
movzx ecx, byte [rsp + rcx + 0x7f8]
xor ecx, 0x69
shl rcx, 0x38
shl rsi, 0x30
or rsi, rcx
shl r11, 0x28
or r11, rsi
shl r10, 0x20
or r10, r11
shl r9d, 0x18
mov ecx, r9d
or rcx, r10
shl edx, 0x10
or rdx, rcx
shl r8d, 8
mov ecx, r8d
mov r10, rcx
or r10, rdx
or r10, rax
mov rax, qword [rsp + 0x40]
movzx eax, word [rax + r15*2]
mov rcx, qword [rsp + 0x48]
mov eax, dword [rcx + rax*4]
movabs r15, 0x699cb1f0077a1d4c
mov qword [rsp + 0x70], r15
xor edx, edx
nop word cs:[rax + rax]
mov ecx, edx
mov byte [rsp + rdx + 0x900], dl
mov rcx, rdx
inc rcx
mov rdx, rcx
cmp rcx, 0x100
jne 0x140021c30
xor r10, qword [rsp + 0x30]
xor ecx, ecx
xor edx, edx
xor r8d, r8d
xor r9d, r9d
nop word [rax + rax]
movzx r11d, byte [rsp + rdx + 0x900]
add r8b, r11b
movsxd r9, r9d
add r8b, byte [rsp + r9 + 0x70]
movzx esi, r8b
movzx ebx, byte [rsp + rsi + 0x900]
mov byte [rsp + rdx + 0x900], bl
mov byte [rsp + rsi + 0x900], r11b
cmp r9d, 7
lea r9d, [r9 + 1]
cmovge r9d, ecx
mov r11, rdx
inc r11
mov rdx, r11
cmp r11, 0x100
jne 0x140021c60
movzx ecx, byte [rsp + 0x901]
mov edx, ecx
movzx r8d, byte [rsp + rcx + 0x900]
mov byte [rsp + 0x901], r8b
mov byte [rsp + rcx + 0x900], cl
add r8b, cl
movzx ecx, r8b
movzx ecx, byte [rsp + rcx + 0x900]
xor rcx, 0x45
movzx r8d, byte [rsp + 0x902]
mov r9b, r8b
mov r11b, dl
lea edx, [r9 + r11]
movzx edx, dl
mov r9d, edx
movzx r11d, byte [rsp + r9 + 0x900]
mov byte [rsp + 0x902], r11b
mov byte [rsp + r9 + 0x900], r8b
add r11b, r8b
movzx r8d, r11b
movzx r9d, byte [rsp + r8 + 0x900]
xor r9d, 0x50
movzx r8d, byte [rsp + 0x903]
add dl, r8b
movzx edx, dl
mov r11d, edx
movzx ebx, byte [rsp + r11 + 0x900]
mov byte [rsp + 0x903], bl
mov byte [rsp + r11 + 0x900], r8b
add bl, r8b
movzx r8d, bl
movzx r8d, byte [rsp + r8 + 0x900]
xor r8d, 0x5b
movzx r11d, byte [rsp + 0x904]
add dl, r11b
movzx esi, dl
mov edx, esi
movzx ebx, byte [rsp + rdx + 0x900]
mov byte [rsp + 0x904], bl
mov byte [rsp + rdx + 0x900], r11b
add bl, r11b
movzx edx, bl
movzx edx, byte [rsp + rdx + 0x900]
xor edx, 0xe8
movzx r11d, byte [rsp + 0x905]
mov ebx, esi
add bl, r11b
movzx esi, bl
mov edi, esi
movzx ebx, byte [rsp + rdi + 0x900]
mov byte [rsp + 0x905], bl
mov byte [rsp + rdi + 0x900], r11b
add bl, r11b
movzx r11d, bl
movzx r11d, byte [rsp + r11 + 0x900]
xor r11d, 0xd9
movzx ebx, byte [rsp + 0x906]
add sil, bl
movzx edi, sil
mov esi, edi
movzx ebp, byte [rsp + rsi + 0x900]
mov byte [rsp + 0x906], bpl
mov byte [rsp + rsi + 0x900], bl
add bpl, bl
movzx esi, bpl
movzx esi, byte [rsp + rsi + 0x900]
xor esi, 0x85
movzx ebx, byte [rsp + 0x907]
add dil, bl
movzx edi, dil
mov r14d, edi
movzx ebp, byte [rsp + r14 + 0x900]
mov byte [rsp + 0x907], bpl
mov byte [rsp + r14 + 0x900], bl
add bpl, bl
movzx ebx, bpl
movzx ebx, byte [rsp + rbx + 0x900]
xor ebx, 0xe0
movzx ebp, byte [rsp + 0x908]
add dil, bpl
movzx edi, dil
movzx r14d, byte [rsp + rdi + 0x900]
mov byte [rsp + 0x908], r14b
mov byte [rsp + rdi + 0x900], bpl
add r14b, bpl
movzx edi, r14b
movzx edi, byte [rsp + rdi + 0x900]
xor edi, 0x7f
add r10, rax
shl rdi, 0x38
shl rbx, 0x30
or rbx, rdi
shl rsi, 0x28
or rsi, rbx
shl r11, 0x20
or r11, rsi
shl edx, 0x18
mov eax, edx
or rax, r11
shl r8d, 0x10
mov edx, r8d
or rdx, rax
shl r9d, 8
mov eax, r9d
or rax, rdx
or rax, rcx
xor rax, r10
jmp 0x140021ee6
xor eax, eax
movabs r15, 0x699cb1f0077a1d4c
mov qword [rsp + 0x68], r15
xor ecx, ecx
nop dword [rax]
mov edx, ecx
mov byte [rsp + rcx + 0xa08], cl
mov rdx, rcx
inc rdx
mov rcx, rdx
cmp rdx, 0x100
jne 0x140021ef0
xor ecx, ecx
xor edx, edx
xor r8d, r8d
xor r9d, r9d
nop word cs:[rax + rax]
movzx r10d, byte [rsp + rdx + 0xa08]
add r8b, r10b
movsxd r9, r9d
add r8b, byte [rsp + r9 + 0x68]
movzx r11d, r8b
movzx ebx, byte [rsp + r11 + 0xa08]
mov byte [rsp + rdx + 0xa08], bl
mov byte [rsp + r11 + 0xa08], r10b
cmp r9d, 7
lea r9d, [r9 + 1]
cmovge r9d, ecx
mov r10, rdx
inc r10
mov rdx, r10
cmp r10, 0x100
jne 0x140021f20
movzx ecx, byte [rsp + 0xa09]
mov edx, ecx
movzx r8d, byte [rsp + rcx + 0xa08]
mov byte [rsp + 0xa09], r8b
mov byte [rsp + rcx + 0xa08], cl
add r8b, cl
movzx ecx, r8b
movzx ecx, byte [rsp + rcx + 0xa08]
xor rcx, 0x45
movzx r8d, byte [rsp + 0xa0a]
mov r9b, r8b
mov r10b, dl
lea edx, [r9 + r10]
movzx edx, dl
mov r9d, edx
movzx r10d, byte [rsp + r9 + 0xa08]
mov byte [rsp + 0xa0a], r10b
mov byte [rsp + r9 + 0xa08], r8b
add r10b, r8b
movzx r8d, r10b
movzx r8d, byte [rsp + r8 + 0xa08]
xor r8d, 0x50
movzx r9d, byte [rsp + 0xa0b]
add dl, r9b
movzx r10d, dl
mov edx, r10d
movzx r11d, byte [rsp + rdx + 0xa08]
mov byte [rsp + 0xa0b], r11b
mov byte [rsp + rdx + 0xa08], r9b
add r11b, r9b
movzx edx, r11b
movzx edx, byte [rsp + rdx + 0xa08]
xor edx, 0x5b
movzx r9d, byte [rsp + 0xa0c]
add r10b, r9b
movzx r10d, r10b
mov r11d, r10d
movzx ebx, byte [rsp + r11 + 0xa08]
mov byte [rsp + 0xa0c], bl
mov byte [rsp + r11 + 0xa08], r9b
add bl, r9b
movzx r9d, bl
movzx r9d, byte [rsp + r9 + 0xa08]
xor r9d, 0xe8
movzx r11d, byte [rsp + 0xa0d]
add r10b, r11b
movzx esi, r10b
mov r10d, esi
movzx ebx, byte [rsp + r10 + 0xa08]
mov byte [rsp + 0xa0d], bl
mov byte [rsp + r10 + 0xa08], r11b
add bl, r11b
movzx r10d, bl
movzx r10d, byte [rsp + r10 + 0xa08]
xor r10d, 0xd9
movzx r11d, byte [rsp + 0xa0e]
mov ebx, esi
add bl, r11b
movzx esi, bl
mov edi, esi
movzx ebx, byte [rsp + rdi + 0xa08]
mov byte [rsp + 0xa0e], bl
mov byte [rsp + rdi + 0xa08], r11b
add bl, r11b
movzx r11d, bl
movzx r11d, byte [rsp + r11 + 0xa08]
xor r11d, 0x85
movzx ebx, byte [rsp + 0xa0f]
add sil, bl
movzx esi, sil
mov edi, esi
movzx ebp, byte [rsp + rdi + 0xa08]
mov byte [rsp + 0xa0f], bpl
mov byte [rsp + rdi + 0xa08], bl
add bpl, bl
movzx edi, bpl
movzx edi, byte [rsp + rdi + 0xa08]
xor edi, 0xe0
movzx ebx, byte [rsp + 0xa10]
add sil, bl
movzx esi, sil
movzx ebp, byte [rsp + rsi + 0xa08]
mov byte [rsp + 0xa10], bpl
mov byte [rsp + rsi + 0xa08], bl
add bpl, bl
movzx esi, bpl
movzx esi, byte [rsp + rsi + 0xa08]
xor esi, 0x7f
shl rsi, 0x38
shl rdi, 0x30
or rdi, rsi
shl r11, 0x28
or r11, rdi
shl r10, 0x20
or r10, r11
shl r9d, 0x18
or r9, r10
shl edx, 0x10
or rdx, r9
shl r8d, 8
or r8, rdx
or r8, rcx
mov r10, r8
xor r10, rax
mov rax, qword [rsp + 0xb80]
mov qword [rsp + 0x28], rax
mov eax, dword [rsp + 0xb78]
mov dword [rsp + 0x20], eax
mov rcx, qword [rsp + 0x50]
mov rdx, qword [rsp + 0x58]
mov r8d, dword [rsp + 0x3c]
mov r9, qword [rsp + 0xb70]
call r10
nop
add rsp, 0xb08
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret