Function at 0x6f554020
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push r15
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x138
mov eax, pe_nt_image_headers64
mov r10, qword [rcx + 0x20]
mov qword [rsp + 0x180], rcx
mov ecx, r8d
mov qword [rsp + 0x198], r9
sar eax, cl
mov r8d, 0x20
mov ecx, eax
neg eax
lea r9, [r10 + 1]
and edx, eax
mov rax, qword [rsp + 0x180]
or edx, ecx
mov rcx, r9
sub r8, r9
mov byte [rax + r10], dl
add rcx, rax
xor edx, edx
call sym.memset
mov rax, qword [rsp + 0x180]
mov eax, dword [rax + 0x28]
mov dword [rsp + 0xa8], eax
mov rax, qword [rsp + 0x180]
mov eax, dword [rax + 0x2c]
mov dword [rsp + 0x30], eax
mov rax, qword [rsp + 0x180]
mov eax, dword [rax + 0x30]
mov dword [rsp + 0xac], eax
mov rax, qword [rsp + 0x180]
mov eax, dword [rax + 0x34]
mov dword [rsp + 0x34], eax
mov rax, qword [rsp + 0x180]
mov eax, dword [rax + 0x38]
mov dword [rsp + 0x44], eax
mov rax, qword [rsp + 0x180]
mov eax, dword [rax + 0x3c]
mov dword [rsp + 0x50], eax
mov rax, qword [rsp + 0x180]
mov eax, dword [rax + 0x40]
mov dword [rsp + 0xd4], eax
mov rax, qword [rsp + 0x180]
mov eax, dword [rax + 0x44]
mov dword [rsp + 0xe0], eax
mov rax, qword [rsp + 0x180]
mov eax, dword [rax + 0x48]
mov dword [rsp + 0x38], eax
mov rax, qword [rsp + 0x180]
mov eax, dword [rax + 0x4c]
mov dword [rsp + 0x3c], eax
mov rax, qword [rsp + 0x180]
mov eax, dword [rax + 0x50]
mov dword [rsp + 0xd0], eax
mov rax, qword [rsp + 0x180]
mov eax, dword [rax + 0x54]
mov dword [rsp + 0x40], eax
mov rax, qword [rsp + 0x180]
mov eax, dword [rax + 0x58]
mov dword [rsp + 0x7c], eax
mov rax, qword [rsp + 0x180]
mov eax, dword [rax + 0x5c]
mov dword [rsp + 0x80], eax
mov rax, qword [rsp + 0x180]
mov eax, dword [rax + 0x60]
mov dword [rsp + 0xe4], eax
mov rax, qword [rsp + 0x180]
mov eax, dword [rax + 0x64]
mov dword [rsp + 0x84], eax
mov rax, qword [rsp + 0x180]
mov eax, dword [rax + 0x68]
mov dword [rsp + 0x48], eax
mov rax, qword [rsp + 0x180]
mov eax, dword [rax + 0x6c]
mov dword [rsp + 0x58], eax
mov rax, qword [rsp + 0x180]
mov eax, dword [rax + 0x70]
mov dword [rsp + 0x60], eax
mov rax, qword [rsp + 0x180]
mov eax, dword [rax + 0x74]
mov dword [rsp + 0x70], eax
mov rax, qword [rsp + 0x180]
mov eax, dword [rax + 0x78]
mov dword [rsp + 0x88], eax
mov rax, qword [rsp + 0x180]
mov eax, dword [rax + 0x7c]
mov dword [rsp + 0x90], eax
mov rax, qword [rsp + 0x180]
mov qword [rsp + 0xd8], 0
mov eax, dword [rax + 0x80]
mov dword [rsp + 0x98], eax
mov rax, qword [rsp + 0x180]
mov r14d, dword [rax + 0x84]
mov eax, dword [rax + 0x88]
mov dword [rsp + 0x54], eax
mov rax, qword [rsp + 0x180]
mov dword [rsp + 0xa4], r14d
mov eax, dword [rax + 0x8c]
mov dword [rsp + 0x68], eax
mov rax, qword [rsp + 0x180]
mov eax, dword [rax + 0x90]
mov dword [rsp + 0x6c], eax
mov rax, qword [rsp + 0x180]
mov eax, dword [rax + 0x94]
mov dword [rsp + 0x74], eax
mov rax, qword [rsp + 0x180]
mov eax, dword [rax + 0x98]
mov dword [rsp + 0x8c], eax
mov rax, qword [rsp + 0x180]
mov eax, dword [rax + 0x9c]
mov dword [rsp + 0x78], eax
mov rax, qword [rsp + 0x180]
mov eax, dword [rax + 0xa0]
mov dword [rsp + 0x9c], eax
mov rax, qword [rsp + 0x180]
mov eax, dword [rax + 0xa4]
mov dword [rsp + 0xa0], eax
mov eax, dword [rsp + 0xd8]
mov dword [rsp + 0x12c], eax
mov rax, qword [rsp + 0x180]
mov eax, dword [rax]
mov ebp, eax
bswap ebp
mov rax, qword [rsp + 0x180]
mov dword [rsp + 0xb0], ebp
mov eax, dword [rax + 4]
mov edi, eax
bswap edi
mov rax, qword [rsp + 0x180]
mov dword [rsp + 0xb8], edi
mov eax, dword [rax + 8]
mov r13d, eax
bswap r13d
mov rax, qword [rsp + 0x180]
mov dword [rsp + 0xf0], r13d
mov eax, dword [rax + 0xc]
mov r10d, eax
bswap r10d
mov rax, qword [rsp + 0x180]
mov dword [rsp + 0xc0], r10d
mov eax, dword [rax + 0x10]
mov esi, eax
bswap esi
mov rax, qword [rsp + 0x180]
mov dword [rsp + 0xc8], esi
mov eax, dword [rax + 0x14]
mov r14d, eax
bswap r14d
mov rax, qword [rsp + 0x180]
mov eax, dword [rax + 0x18]
mov ebp, eax
bswap ebp
mov rax, qword [rsp + 0x180]
mov dword [rsp + 0x20], ebp
mov eax, dword [rax + 0x1c]
mov ecx, eax
bswap ecx
mov edx, dword [rsp + 0xe0]
mov r15d, dword [rsp + 0x84]
mov dword [rsp + 0x28], ecx
mov ecx, dword [rsp + 0xa4]
mov eax, dword [rsp + 0x30]
xor eax, dword [rsp + 0x3c]
xor r15d, edx
mov edi, dword [rsp + 0x58]
mov r11d, dword [rsp + 0xd0]
xor ecx, r15d
mov r15d, dword [rsp + 0xac]
mov ebx, dword [rsp + 0x44]
xor ebx, dword [rsp + 0x7c]
mov ebp, dword [rsp + 0xd4]
xor edi, eax
mov esi, dword [rsp + 0x8c]
xor edi, dword [rsp + 0x68]
mov r12d, dword [rsp + 0xe4]
mov r9d, r15d
xor ecx, dword [rsp + 0xa0]
xor r9d, r11d
xor r9d, dword [rsp + 0x60]
mov r8d, dword [rsp + 0x40]
xor esi, ebx
xor r8d, dword [rsp + 0x34]
xor r9d, dword [rsp + 0x6c]
mov ebx, dword [rsp + 0x78]
mov eax, ebp
xor ebx, dword [rsp + 0x50]
xor r15d, edi
xor r8d, dword [rsp + 0x70]
xor ebx, dword [rsp + 0x80]
xor eax, r12d
mov r10d, dword [rsp + 0x38]
xor eax, dword [rsp + 0x98]
xor r10d, dword [rsp + 0x48]
xor esi, dword [rsp + 0x88]
xor r9d, ecx
xor ebx, dword [rsp + 0x90]
xor eax, dword [rsp + 0x9c]
xor r8d, dword [rsp + 0x74]
xor r10d, dword [rsp + 0x54]
mov r13d, dword [rsp + 0xa8]
mov dword [rsp + 0xd4], r15d
mov r15d, dword [rsp + 0x34]
xor r8d, ecx
xor r10d, r13d
xor r13d, ecx
xor r15d, r9d
mov dword [rsp + 0xa8], r13d
mov r13d, dword [rsp + 0x30]
mov dword [rsp + 0xe0], r15d
mov r15d, dword [rsp + 0x44]
xor r10d, ecx
xor r13d, r10d
xor r15d, r8d
mov dword [rsp + 0xd0], r13d
mov r13d, dword [rsp + 0x58]
mov dword [rsp + 0x34], r15d
mov r15d, dword [rsp + 0x50]
xor r15d, esi
xor ebp, ebx
xor edx, eax
mov dword [rsp + 0x50], ebp
mov dword [rsp + 0xac], edx
xor r11d, edi
mov ebp, dword [rsp + 0x38]
mov edx, dword [rsp + 0x3c]
xor r12d, ebx
mov dword [rsp + 0x44], r15d
mov dword [rsp + 0x3c], r11d
xor r13d, r10d
mov r11d, dword [rsp + 0x7c]
mov dword [rsp + 0xe8], r12d
xor ebp, ecx
xor edx, r10d
mov r12d, dword [rsp + 0x84]
mov r15d, ebp
mov dword [rsp + 0x38], edx
mov ebp, dword [rsp + 0x80]
mov edx, dword [rsp + 0x40]
xor r11d, r8d
xor r12d, eax
mov dword [rsp + 0xe4], r11d
xor ebp, esi
mov r11d, r12d
mov r12d, dword [rsp + 0x48]
xor edx, r9d
mov dword [rsp + 0x7c], ebp
mov ebp, dword [rsp + 0x70]
mov dword [rsp + 0x40], edx
mov edx, dword [rsp + 0x60]
mov dword [rsp + 0x48], r13d
xor r12d, ecx
xor ebp, r9d
xor edx, edi
mov dword [rsp + 0x60], ebp
mov dword [rsp + 0x58], edx
mov r13d, dword [rsp + 0x88]
xor r9d, dword [rsp + 0x74]
mov edx, dword [rsp + 0xa4]
mov ebp, dword [rsp + 0x98]
xor r10d, dword [rsp + 0x68]
xor r13d, r8d
xor r8d, dword [rsp + 0x8c]
xor ecx, dword [rsp + 0x54]
xor edx, eax
xor eax, dword [rsp + 0xa0]
mov dword [rsp + 0x70], r13d
xor ebp, ebx
mov dword [rsp + 0x74], r9d
xor ebx, dword [rsp + 0x9c]
mov r9d, dword [rsp + 0x78]
mov r13d, dword [rsp + 0x90]
mov dword [rsp + 0x80], r8d
mov r8d, r12d
mov dword [rsp + 0x68], r10d
xor r8d, eax
mov r10d, dword [rsp + 0xe8]
xor edi, dword [rsp + 0x6c]
xor r9d, esi
mov dword [rsp + 0x90], r8d
xor r13d, esi
mov dword [rsp + 0x88], r9d
mov r8d, r9d
mov r9d, ebx
xor r9d, edx
mov dword [rsp + 0x8c], ebx
mov esi, ebp
mov dword [rsp + 0x9c], r9d
mov ebx, r15d
mov r9d, r10d
xor r8d, ebp
xor ebx, edx
xor r9d, r13d
mov dword [rsp + 0x84], r13d
xor esi, r11d
mov r13d, dword [rsp + 0xa8]
xor r10d, dword [rsp + 0xac]
mov dword [rsp + 0x98], r8d
xor r15d, r11d
mov r8d, dword [rsp + 0x50]
xor r8d, dword [rsp + 0x7c]
xor r12d, edx
xor r13d, r11d
mov dword [rsp + 0x54], ecx
mov dword [rsp + 0x6c], edi
mov dword [rsp + 0x30], eax
mov dword [rsp + 0xa0], esi
mov dword [rsp + 0xa4], r13d
mov edi, r10d
mov r10d, dword [rsp + 0xc0]
mov r13d, dword [rsp + 0xf0]
mov ecx, dword [rsp + 0x3c]
mov esi, r8d
mov eax, dword [rsp + 0x28]
xor esi, r14d
mov dword [rsp + 0xf0], esi
mov esi, dword [rsp + 0x58]
xor ecx, r11d
mov r8d, r13d
xor r8d, eax
mov ebp, ecx
xor r10d, eax
xor ebp, r8d
xor r11d, r10d
xor r11d, dword [rsp + 0x34]
mov dword [rsp + 0x78], ebp
mov ebp, dword [rsp + 0xb0]
xor esi, edx
xor ebp, eax
mov eax, dword [rsp + 0xe4]
mov ecx, ebp
xor r15d, ebp
mov ebp, dword [rsp + 0x40]
xor ebp, r11d
mov r11d, dword [rsp + 0xc8]
xor r11d, dword [rsp + 0x44]
mov dword [rsp + 0xe8], ebp
mov ebp, r11d
mov r11d, dword [rsp + 0xb8]
xor ebp, eax
mov dword [rsp + 0xe4], ebp
mov ebp, dword [rsp + 0x20]
xor edi, ebp
xor ebx, ebp
xor r8d, ebp
mov dword [rsp + 0xf8], edi
mov edi, dword [rsp + 0x28]
xor r11d, ebp
mov dword [rsp + 0x100], ebx
mov ebx, dword [rsp + 0x38]
xor edx, r8d
xor esi, r11d
xor edx, eax
xor esi, dword [rsp + 0x40]
xor edi, ebp
xor r12d, edi
xor ebx, r12d
mov r12d, dword [rsp + 0x3c]
mov dword [rsp + 0x108], ebx
mov ebx, dword [rsp + 0x48]
mov dword [rsp + 0x128], esi
mov esi, dword [rsp + 0xc8]
xor r12d, ecx
xor ebx, r12d
mov r12d, dword [rsp + 0x7c]
xor edx, dword [rsp + 0x60]
mov dword [rsp + 0x10c], ebx
mov ebx, dword [rsp + 0x70]
xor ecx, r14d
xor r11d, r14d
xor r9d, esi
xor r12d, r10d
xor ebx, r12d
mov r12d, dword [rsp + 0xa0]
xor r12d, r14d
mov ebp, r12d
mov r12d, dword [rsp + 0x90]
mov eax, dword [rsp + 0x48]
xor edi, dword [rsp + 0x58]
xor ecx, dword [rsp + 0x6c]
xor r10d, dword [rsp + 0x98]
xor r8d, dword [rsp + 0x84]
xor r12d, r14d
xor r8d, dword [rsp + 0x80]
mov dword [rsp + 0x90], r12d
mov r12d, dword [rsp + 0x20]
xor r12d, r14d
xor r12d, dword [rsp + 0x54]
xor r12d, dword [rsp + 0x30]
xor eax, r12d
mov dword [rsp + 0x48], eax
mov eax, dword [rsp + 0x68]
xor eax, edi
mov edi, dword [rsp + 0x30]
mov dword [rsp + 0x58], eax
mov eax, dword [rsp + 0x60]
xor ecx, edi
xor r11d, edi
xor r11d, dword [rsp + 0x70]
xor eax, ecx
xor r11d, dword [rsp + 0x74]
mov ecx, dword [rsp + 0x9c]
mov dword [rsp + 0x60], eax
mov eax, edx
rol eax, 2
mov dword [rsp + 0x70], eax
mov eax, ebx
xor ecx, esi
rol eax, 2
mov ebx, dword [rsp + 0xac]
mov dword [rsp + 0x98], eax
mov eax, r9d
rol eax, 2
mov dword [rsp + 0x9c], eax
mov eax, ebp
mov ebp, dword [rsp + 0xa4]
rol eax, 2
mov dword [rsp + 0xa0], eax
mov eax, r11d
rol eax, 3
mov dword [rsp + 0xc8], eax
mov eax, r8d
rol eax, 3
mov dword [rsp + 0x110], eax
mov eax, r10d
rol eax, 3
mov dword [rsp + 0x118], eax
mov eax, ecx
mov ecx, dword [rsp + 0x54]
rol eax, 3
mov dword [rsp + 0x120], eax
xor ecx, ebx
xor ecx, dword [rsp + 0xb0]
mov r12d, dword [rsp + 0x28]
mov r10d, dword [rsp + 0xa8]
mov edi, dword [rsp + 0xb8]
xor esi, ebx
mov r8d, esi
mov r11d, dword [rsp + 0xe8]
mov r9d, dword [rsp + 0xc0]
xor ebp, r12d
mov esi, dword [rsp + 0x88]
mov eax, dword [rsp + 0x30]
shl rbp, 0x20
xor r10d, ebx
or rbp, rcx
mov ecx, dword [rsp + 0xd0]
xor r10d, edi
xor r10d, dword [rsp + 0x68]
rol r11d, 1
xor esi, r14d
shl r11, 0x20
xor esi, dword [rsp + 0x34]
mov r14d, dword [rsp + 0xf8]
xor r15d, ecx
shl r15, 0x20
or r10, r15
mov r15d, dword [rsp + 0xd4]
xor edi, r15d
xor r15d, ebx
mov ebx, dword [rsp + 0x44]
mov edx, edi
mov edi, dword [rsp + 0x6c]
xor edx, dword [rsp + 0x38]
xor r9d, r15d
xor r9d, dword [rsp + 0x74]
movabs r15, 0xb6de10ed303994a6
xor edi, r13d
mov r13d, dword [rsp + 0xf0]
shl rdx, 0x20
xor edi, ecx
mov ecx, dword [rsp + 0x78]
or rdi, rdx
mov edx, dword [rsp + 0xe0]
xor r8d, edx
xor r8d, dword [rsp + 0x80]
xor ecx, edx
shl rcx, 0x20
or r9, rcx
or r8, r11
mov r11d, dword [rsp + 0xe4]
mov rdx, r8
rol r11d, 1
shl r11, 0x20
xor eax, dword [rsp + 0x50]
xor ebx, dword [rsp + 0x8c]
xor ebx, dword [rsp + 0x20]
rol r14d, 1
rol r13d, 1
shl r14, 0x20
shl r13, 0x20
or rsi, r11
xor eax, r12d
or rax, r14
or r13, rbx
movabs r14, 0x1685f3de0337818
mov r8, rax
xor ebx, ebx
mov rax, rdx
jmp 0x6f554986
lea rdx, [0x6f6fcf00]
mov r15, qword [rdx + rbx]
lea rdx, [0x6f6fcec0]
mov r14, qword [rdx + rbx]
mov rdx, rbp
mov rcx, r9
xor rdi, r9
or rdx, r10
and rcx, rbp
not r10
xor rdx, r9
xor r10, rcx
xor rcx, rdi
and rdi, rdx
xor r8, rax
not rdx
xor rdi, r10
or r10, rcx
mov r11, rdx
xor rbp, r10
mov r9, rdi
xor r11, r10
mov r12, rbp
mov rbp, rsi
and r9, r10
or rbp, r13
not r13
xor rcx, rdi
xor rbp, rax
and rax, rsi
xor r13, rax
xor rax, r8
and r8, rbp
xor r8, r13
mov rdi, rax
or r13, rax
mov r10, r8
mov rdx, rbp
xor rsi, r13
mov rax, r10
not rdx
and r8, r13
xor rax, r12
xor rdx, r13
xor rax, rdi
mov edi, r12d
rol edi, 2
mov r10, rax
xor edi, eax
rol eax, 0xe
shr r10, 0x20
xor eax, edi
rol edi, 0xa
shr r12, 0x20
rol r12d, 2
xor rsi, r11
xor edi, eax
xor r12d, r10d
rol r10d, 0xe
mov r13, rsi
xor r10d, r12d
mov ebp, r12d
mov r12d, r11d
rol ebp, 0xa
rol r12d, 2
shr r13, 0x20
xor r12d, esi
xor ebp, r10d
rol esi, 0xe
xor esi, r12d
shl rbp, 0x20
shr r11, 0x20
or rbp, rdi
rol r11d, 2
mov edi, esi
mov esi, r13d
xor r11d, r13d
rol r10d, 1
rol esi, 0xe
shl r10, 0x20
rol r12d, 0xa
xor esi, r11d
rol eax, 1
rol r11d, 0xa
or rax, r10
xor r11d, esi
mov r10d, r12d
shl r11, 0x20
xor r10d, edi
or r10, r11
rol esi, 1
xor rdx, r9
mov r12, rdx
mov r11d, r9d
shr r9, 0x20
shr r12, 0x20
rol r9d, 2
rol edi, 1
xor r9d, r12d
shl rsi, 0x20
mov r13d, r12d
or rsi, rdi
rol r11d, 2
rol r13d, 0xe
mov edi, r9d
xor r11d, edx
xor r13d, r9d
rol edx, 0xe
rol edi, 0xa
xor r8, rcx
xor edx, r11d
xor edi, r13d
rol r11d, 0xa
xor r11d, edx
shl rdi, 0x20
rol r13d, 1
or rdi, r11
mov r11d, ecx
rol edx, 1
shl r13, 0x20
rol r11d, 2
xor r11d, r8d
or r13, rdx
mov rdx, r8
rol r8d, 0xe
shr rdx, 0x20
xor r8d, r11d
rol r11d, 0xa
shr rcx, 0x20
rol ecx, 2
xor r11d, r8d
add rbx, 8
xor ecx, edx
rol edx, 0xe
rol r8d, 1
xor edx, ecx
rol ecx, 0xa
xor rbp, r15
mov r9d, ecx
xor rax, r14
xor r9d, edx
rol edx, 1
shl r9, 0x20
shl rdx, 0x20
or r9, r11
or r8, rdx
cmp rbx, 0x40
jne 0x6f554970
mov rbx, rax
mov rax, r8
mov r12, qword [rsp + 0x48]
mov dword [rsp + 0xe0], eax
shr rax, 0x20
mov r8, rbx
mov qword [rsp + 0xf8], rax
mov dword [rsp + 0x84], eax
movabs r14, 0xe028c9bfe25e72c1
mov eax, dword [rsp + 0x100]
mov rbx, qword [rsp + 0x90]
shl r12, 0x20
mov dword [rsp + 0x50], esi
shr rsi, 0x20
mov dword [rsp + 0xa8], ebp
mov qword [rsp + 0xe8], rsi
mov dword [rsp + 0x80], esi
shr rbp, 0x20
shl rbx, 0x20
mov rsi, qword [rsp + 0x60]
mov dword [rsp + 0x30], r10d
or rbx, rax
mov eax, dword [rsp + 0x108]
shr r10, 0x20
mov dword [rsp + 0xac], edi
mov dword [rsp + 0x34], r9d
shr rdi, 0x20
shr r9, 0x20
mov dword [rsp + 0x44], r8d
mov dword [rsp + 0xd4], r13d
shr r8, 0x20
shr r13, 0x20
shl rsi, 0x20
or r12, rax
mov eax, dword [rsp + 0x128]
mov qword [rsp + 0x20], rbp
mov dword [rsp + 0x38], ebp
mov qword [rsp + 0x28], r10
mov dword [rsp + 0x3c], r10d
mov qword [rsp + 0xb0], rdi
mov dword [rsp + 0xd0], edi
mov qword [rsp + 0xb8], r9
mov dword [rsp + 0x40], r9d
mov qword [rsp + 0xc0], r8
or rsi, rax
mov dword [rsp + 0x7c], r8d
mov qword [rsp + 0xf0], r13
xor r8d, r8d
mov dword [rsp + 0xe4], r13d
mov rdi, qword [rsp + 0x58]
mov r13d, dword [rsp + 0x10c]
mov r11, qword [rsp + 0xc8]
mov ecx, dword [rsp + 0x98]
mov rax, qword [rsp + 0x110]
mov ebp, dword [rsp + 0xa0]
mov edx, dword [rsp + 0x70]
shl rdi, 0x20
mov r10, qword [rsp + 0x118]
mov r9d, dword [rsp + 0x9c]
shl r11, 0x20
shl rax, 0x20
or r13, rdi
or rax, rcx
mov rcx, qword [rsp + 0x120]
shl r10, 0x20
or rdx, r11
movabs r11, 0xb213afa5fc20d9d2
or r10, r9
shl rcx, 0x20
or rbp, rcx
mov rdi, rbp
jmp 0x6f554ce8
lea rcx, [0x6f6fce40]
mov r11, qword [rcx + r8]
lea rcx, [0x6f6fce00]
mov r14, qword [rcx + r8]
mov rcx, rbx
mov rbp, r13
xor rdi, rdx
or rcx, r12
xor rbp, rsi
not r12
xor rcx, rsi
and rsi, rbx
xor r12, rsi
mov r9, rsi
mov rsi, rbp
xor r9, rbp
and rsi, rcx
not rcx
xor rsi, r12
mov r13, rcx
or r12, r9
xor r13, r12
xor r9, rsi
xor rbx, r12
and rsi, r12
mov r12, rax
mov r15, rbx
or r12, r10
not r10
xor r12, rdx
and rdx, rax
xor r10, rdx
xor rdx, rdi
and rdi, r12
mov rbx, rdi
xor rbx, r10
or r10, rdx
mov rdi, rbx
mov rbp, r10
xor rax, r10
and rdi, r10
mov r10, r12
xor rbx, r15
not r10
mov rcx, rbx
xor r10, rbp
mov ebp, r15d
xor rcx, rdx
rol ebp, 2
mov rdx, rcx
xor ebp, ecx
rol ecx, 0xe
shr rdx, 0x20
xor ecx, ebp
rol ebp, 0xa
shr r15, 0x20
rol r15d, 2
xor ebp, ecx
xor rax, r13
xor r15d, edx
rol edx, 0xe
rol ecx, 1
mov ebx, r15d
xor edx, r15d
mov r15, rax
rol ebx, 0xa
shr r15, 0x20
xor ebx, edx
rol edx, 1
shl rbx, 0x20
shl rdx, 0x20
or rbx, rbp
mov ebp, r13d
shr r13, 0x20
rol ebp, 2
or rdx, rcx
rol r13d, 2
xor ebp, eax
rol eax, 0xe
xor r13d, r15d
xor eax, ebp
rol ebp, 0xa
mov ecx, eax
mov eax, r15d
mov r12d, ebp
rol eax, 0xe
xor r12d, ecx
mov ebp, esi
xor eax, r13d
rol r13d, 0xa
xor r13d, eax
shl r13, 0x20
or r12, r13
rol eax, 1
xor r10, rsi
mov r15, r10
rol ebp, 2
rol ecx, 1
xor ebp, r10d
shr r15, 0x20
rol r10d, 0xe
shl rax, 0x20
shr rsi, 0x20
xor rdi, r9
or rax, rcx
rol esi, 2
mov ecx, r10d
mov r10d, r15d
xor esi, r15d
xor ecx, ebp
rol r10d, 0xe
rol ebp, 0xa
xor r10d, esi
rol esi, 0xa
xor ebp, ecx
mov r13d, esi
rol ecx, 1
xor r13d, r10d
rol r10d, 1
shl r13, 0x20
shl r10, 0x20
or r13, rbp
mov ebp, r9d
or r10, rcx
rol ebp, 2
mov rcx, rdi
xor ebp, edi
rol edi, 0xe
shr rcx, 0x20
xor edi, ebp
rol ebp, 0xa
shr r9, 0x20
rol r9d, 2
xor ebp, edi
add r8, 8
xor r9d, ecx
rol ecx, 0xe
rol edi, 1
mov esi, r9d
xor ecx, r9d
xor rbx, r11
rol esi, 0xa
xor rdx, r14
xor esi, ecx
rol ecx, 1
shl rsi, 0x20
shl rcx, 0x20
or rsi, rbp
or rdi, rcx
cmp r8, 0x40
jne 0x6f554cd2
mov rcx, r10
mov rbp, rdi
mov r15, rbx
shr rcx, 0x20
mov r14, r12
mov rdi, r13
mov qword [rsp + 0xc8], rcx
mov dword [rsp + 0x9c], ecx
mov rcx, rbp
shr rcx, 0x20
mov r11, rsi
mov r9, rdx
mov qword [rsp + 0x100], rcx
mov dword [rsp + 0xa0], ecx
mov r8, rax
mov ecx, dword [rsp + 0x12c]
shr r15, 0x20
shr r14, 0x20
shr rdi, 0x20
shr r11, 0x20
shr r9, 0x20
shr r8, 0x20
mov dword [rsp + 0x48], ebx
mov dword [rsp + 0x54], r15d
cmp ecx, 1
mov dword [rsp + 0x58], r12d
mov dword [rsp + 0x68], r14d
mov dword [rsp + 0x60], r13d
mov dword [rsp + 0x6c], edi
mov dword [rsp + 0x70], esi
mov dword [rsp + 0x74], r11d
mov dword [rsp + 0x88], edx
mov dword [rsp + 0x8c], r9d
mov dword [rsp + 0x90], eax
mov dword [rsp + 0x78], r8d
mov dword [rsp + 0x98], r10d
mov dword [rsp + 0xa4], ebp
je 0x6f555103
cmp ecx, 2
jne 0x6f5550c0
mov r10d, dword [rsp + 0x48]
xor r10d, dword [rsp + 0x54]
xor r10d, dword [rsp + 0xa8]
xor r10d, dword [rsp + 0x38]
bswap r10d
mov rax, qword [rsp + 0x198]
mov dword [rax + 0x20], r10d
mov eax, dword [rsp + 0x58]
xor eax, dword [rsp + 0x68]
xor eax, dword [rsp + 0x30]
xor eax, dword [rsp + 0x3c]
bswap eax
mov rbx, qword [rsp + 0x198]
mov dword [rbx + 0x24], eax
mov eax, dword [rsp + 0x60]
xor eax, dword [rsp + 0x6c]
xor eax, dword [rsp + 0xac]
xor eax, dword [rsp + 0xd0]
bswap eax
mov dword [rbx + 0x28], eax
mov eax, dword [rsp + 0x70]
xor eax, dword [rsp + 0x74]
xor eax, dword [rsp + 0x34]
xor eax, dword [rsp + 0x40]
bswap eax
mov dword [rbx + 0x2c], eax
mov rax, qword [rsp + 0x180]
mov rcx, qword [0x6f6fcf40]
mov rbx, qword [0x6f6fcf48]
mov qword [rax + 0x28], rcx
mov rcx, qword [0x6f6fcf50]
mov qword [rax + 0x30], rbx
mov rbx, qword [0x6f6fcf58]
mov qword [rax + 0x38], rcx
mov rcx, qword [0x6f6fcf60]
mov qword [rax + 0x40], rbx
mov rbx, qword [0x6f6fcf68]
mov qword [rax + 0x48], rcx
mov rcx, qword [0x6f6fcf70]
mov qword [rax + 0x50], rbx
mov rbx, qword [0x6f6fcf78]
mov qword [rax + 0x58], rcx
mov rcx, qword [0x6f6fcf80]
mov qword [rax + 0x60], rbx
mov rbx, qword [0x6f6fcf88]
mov qword [rax + 0x68], rcx
mov rcx, qword [0x6f6fcf90]
mov qword [rax + 0x70], rbx
mov rbx, qword [0x6f6fcf98]
mov qword [rax + 0x78], rcx
mov rcx, qword [0x6f6fcfa0]
mov qword [rax + 0x80], rbx
mov rbx, qword [0x6f6fcfa8]
mov qword [rax + 0x88], rcx
mov rcx, qword [0x6f6fcfb0]
mov qword [rax + 0x90], rbx
mov rbx, qword [0x6f6fcfb8]
mov qword [rax + 0x98], rcx
mov qword [rax + 0xa0], rbx
mov qword [rax + 0x20], 0
add rsp, 0x138
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret
cmp dword [rsp + 0xd8], 2
mov rax, qword [rsp + 0x180]
mov qword [rax], 0
mov qword [rax + 8], 0
mov qword [rax + 0x10], 0
mov qword [rax + 0x18], 0
je 0x6f554fdb
add qword [rsp + 0xd8], 1
jmp 0x6f5542b0
mov ecx, dword [rsp + 0x20]
xor ecx, dword [rsp + 0xa8]
xor ebx, ecx
xor ebx, r15d
bswap ebx
mov rcx, qword [rsp + 0x198]
mov dword [rcx], ebx
mov ebx, dword [rsp + 0x28]
xor ebx, dword [rsp + 0x30]
xor r12d, ebx
xor r12d, r14d
bswap r12d
mov ebx, dword [rsp + 0xb0]
xor ebx, dword [rsp + 0xac]
mov dword [rcx + 4], r12d
xor r13d, ebx
xor r13d, edi
bswap r13d
mov ebx, dword [rsp + 0xb8]
xor ebx, dword [rsp + 0x34]
mov dword [rcx + 8], r13d
xor esi, ebx
xor esi, r11d
bswap esi
mov r11d, dword [rsp + 0xc0]
xor r11d, dword [rsp + 0x44]
mov dword [rcx + 0xc], esi
xor edx, r11d
xor edx, r9d
bswap edx
mov esi, dword [rsp + 0xe8]
xor esi, dword [rsp + 0x50]
mov dword [rcx + 0x10], edx
xor eax, esi
xor eax, r8d
bswap eax
mov dword [rcx + 0x14], eax
mov eax, dword [rsp + 0xf0]
xor eax, dword [rsp + 0xd4]
xor r10d, eax
xor r10d, dword [rsp + 0xc8]
bswap r10d
mov eax, dword [rsp + 0xf8]
xor eax, dword [rsp + 0xe0]
mov dword [rcx + 0x18], r10d
xor ebp, eax
xor ebp, dword [rsp + 0x100]
bswap ebp
mov dword [rcx + 0x1c], ebp
jmp 0x6f5550f5