Function at 0x1400a90f0
Capabilities:
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, 0xf8
cmp rdx, 0xd
jb 0x1400aa219
lea rdi, [rcx + 0x60]
mov eax, dword [rcx + 0x60]
cmp eax, dword [rcx]
setb al
jne 0x1400a9124
mov eax, dword [rcx + 0x64]
cmp eax, dword [rcx + 4]
setb al
test al, al
mov rax, rdi
cmovne rax, rcx
mov edx, dword [rax]
mov r8d, dword [rax + 4]
mov rax, rcx
cmovne rax, rdi
mov rax, qword [rax]
mov qword [rsp + 0xd0], rax
mov qword [rcx], rax
mov dword [rsp + 0x58], edx
mov dword [rcx + 0x60], edx
mov dword [rsp + 4], r8d
mov dword [rcx + 0x64], r8d
lea rax, [rcx + 8]
mov qword [rsp + 0x30], rax
lea rsi, [rcx + 0x50]
mov eax, dword [rcx + 0x50]
cmp eax, dword [rcx + 8]
setb al
jne 0x1400a9179
mov eax, dword [rcx + 0x54]
cmp eax, dword [rcx + 0xc]
setb al
test al, al
mov rax, rsi
mov rdx, qword [rsp + 0x30]
cmovne rax, rdx
mov r9d, dword [rax]
mov r10d, dword [rax + 4]
mov rax, rdx
cmovne rax, rsi
mov r8, qword [rax]
mov qword [rcx + 8], r8
mov dword [rsp + 8], r9d
mov dword [rcx + 0x50], r9d
mov dword [rsp + 0xc8], r10d
mov dword [rcx + 0x54], r10d
lea rax, [rcx + 0x10]
mov qword [rsp + 0x60], rax
lea rdx, [rcx + 0x48]
mov eax, dword [rcx + 0x48]
cmp eax, dword [rcx + 0x10]
setb al
jne 0x1400a91d2
mov eax, dword [rcx + 0x4c]
cmp eax, dword [rcx + 0x14]
setb al
test al, al
mov rax, rdx
mov r9, qword [rsp + 0x60]
cmovne rax, r9
mov r10d, dword [rax]
mov r11d, dword [rax + 4]
mov rax, r9
mov qword [rsp + 0xd8], rdx
cmovne rax, rdx
mov rax, qword [rax]
mov qword [rcx + 0x10], rax
mov dword [rsp + 0x48], r10d
mov dword [rcx + 0x48], r10d
mov dword [rsp + 0x10], r11d
mov dword [rcx + 0x4c], r11d
lea rdx, [rcx + 0x18]
mov qword [rsp + 0x40], rdx
lea r10, [rcx + 0x38]
mov edx, dword [rcx + 0x38]
cmp edx, dword [rcx + 0x18]
setb dl
jne 0x1400a9230
mov edx, dword [rcx + 0x3c]
cmp edx, dword [rcx + 0x1c]
setb dl
mov r9d, edx
xor r9b, 1
movzx r9d, r9b
shl r9d, 5
test dl, dl
mov qword [rsp + 0x88], r10
cmovne r10, qword [rsp + 0x40]
movzx r11d, dl
shl r11d, 5
mov edx, dword [rcx + r9 + 0x18]
mov r9d, dword [r10 + 4]
mov r15, qword [rcx + r11 + 0x18]
mov qword [rcx + 0x18], r15
mov dword [rsp + 0xb0], edx
mov dword [rcx + 0x38], edx
mov dword [rsp], r9d
mov dword [rcx + 0x3c], r9d
lea r14, [rcx + 0x28]
lea rdx, [rcx + 0x58]
mov r10d, dword [rcx + 0x58]
cmp r10d, dword [rcx + 0x28]
setb r11b
jne 0x1400a929d
mov r10d, dword [rcx + 0x5c]
cmp r10d, dword [rcx + 0x2c]
setb r11b
mov qword [rsp + 0x20], rdi
mov qword [rsp + 0x28], rsi
mov rbx, r8
shr rbx, 0x20
mov r10, rax
shr r10, 0x20
mov rdi, r15
shr rdi, 0x20
test r11b, r11b
mov r11, rdx
cmovne r11, r14
mov ebp, dword [r11]
mov r11d, dword [r11 + 4]
mov qword [rsp + 0x90], r14
mov qword [rsp + 0x18], rdx
cmovne r14, rdx
mov rdx, qword [r14]
mov qword [rsp + 0x70], rdx
mov qword [rcx + 0x28], rdx
mov dword [rcx + 0x58], ebp
mov dword [rcx + 0x5c], r11d
lea rdx, [rcx + 0x30]
mov qword [rsp + 0x38], rdx
lea r13, [rcx + 0x40]
mov r14d, dword [rcx + 0x40]
cmp r14d, dword [rcx + 0x30]
setb r14b
jne 0x1400a9318
mov r14d, dword [rcx + 0x44]
cmp r14d, dword [rcx + 0x34]
setb r14b
mov r12d, r14d
xor r12b, 1
movzx r12d, r12b
shl r12d, 4
test r14b, r14b
mov qword [rsp + 0x80], r13
mov r9, qword [rsp + 0x38]
cmovne r13, r9
movzx r14d, r14b
shl r14d, 4
mov rsi, qword [r14 + rcx + 0x30]
mov r14, rsi
shr r14, 0x20
xor edx, edx
cmp r14d, ebx
setb dl
xor ebx, ebx
cmp esi, r8d
mov r8d, dword [r12 + rcx + 0x30]
mov r12d, dword [r13 + 4]
mov qword [rcx + 0x30], rsi
mov dword [rsp + 0xa0], r8d
mov dword [rcx + 0x40], r8d
setb bl
cmovne edx, ebx
test dl, dl
mov rdx, r9
mov r8, qword [rsp + 0x30]
cmovne rdx, r8
mov dword [rcx + 0x44], r12d
cmovne r8, r9
xor esi, esi
cmp edi, r10d
mov r9d, dword [rdx]
mov edx, dword [rdx + 4]
mov r10, qword [r8]
mov qword [rcx + 8], r10
mov dword [rsp + 0xc0], r9d
mov dword [rcx + 0x30], r9d
mov dword [rsp + 0xb8], edx
mov dword [rcx + 0x34], edx
setb sil
xor edx, edx
cmp r15d, eax
setb dl
cmovne esi, edx
mov eax, esi
xor al, 1
test sil, sil
mov rdx, qword [rsp + 0x40]
cmovne rdx, qword [rsp + 0x60]
movzx eax, al
movzx r8d, sil
mov eax, dword [rcx + rax*8 + 0x10]
mov edx, dword [rdx + 4]
mov r15, qword [rcx + r8*8 + 0x10]
mov qword [rcx + 0x10], r15
mov dword [rsp + 0xa8], eax
mov dword [rcx + 0x18], eax
mov dword [rsp + 0x98], edx
mov dword [rcx + 0x1c], edx
lea rdx, [rcx + 0x20]
cmp ebp, dword [rcx + 0x20]
setb al
jne 0x1400a9418
cmp r11d, dword [rcx + 0x24]
setb al
mov qword [rsp + 0xe0], r15
shr r15, 0x20
mov r11, r10
shr r11, 0x20
mov r8, qword [rsp + 0x70]
shr r8, 0x20
mov qword [rsp + 0x50], r8
mov qword [rsp + 0xf0], r10
mov r10, qword [rsp + 0xd0]
mov rdi, r10
shr rdi, 0x20
test al, al
mov r9, qword [rsp + 0x18]
mov rax, r9
cmovne rax, rdx
mov r8, rdx
mov r14, rdx
mov qword [rsp + 0x78], rdx
cmovne r8, r9
xor edx, edx
mov r9d, dword [rsp]
cmp dword [rsp + 0x10], r9d
setb dl
xor r9d, r9d
mov esi, dword [rsp + 0xb0]
cmp dword [rsp + 0x48], esi
setb r9b
cmove r9d, edx
mov edx, r9d
xor dl, 1
movzx esi, dl
shl esi, 4
test r9b, r9b
mov r13, qword [rsp + 0xd8]
cmovne r13, qword [rsp + 0x88]
mov edx, 0xff
and r9d, edx
shl r9d, 4
xor edx, edx
cmp dword [rsp + 0xc8], r12d
setb dl
xor ebx, ebx
mov ebp, dword [rsp + 0xa0]
cmp dword [rsp + 8], ebp
setb bl
cmove ebx, edx
mov ebp, dword [rax]
mov dword [rsp], ebp
mov eax, dword [rax + 4]
mov dword [rsp + 0xa0], eax
mov rdx, qword [r8]
mov qword [rcx + 0x20], rdx
mov dword [rcx + 0x58], ebp
mov dword [rcx + 0x5c], eax
mov r8d, dword [rsi + rcx + 0x38]
mov dword [rsp + 0x6c], r8d
mov ebp, dword [r13 + 4]
mov dword [rsp + 0xe8], ebp
mov r12, qword [r9 + rcx + 0x38]
mov qword [rcx + 0x38], r12
mov qword [rsp + 8], r12
mov dword [rcx + 0x48], r8d
mov eax, ebx
xor al, 1
movzx r9d, al
shl r9d, 4
test bl, bl
mov rsi, qword [rsp + 0x28]
cmovne rsi, qword [rsp + 0x80]
mov dword [rcx + 0x4c], ebp
mov r8d, 0xff
and ebx, r8d
shl ebx, 4
mov rax, qword [rcx + rbx + 0x40]
mov rbp, rax
shr rbp, 0x20
shr r12, 0x20
mov r13, rdx
shr r13, 0x20
xor ebx, ebx
cmp r13d, edi
setb bl
xor edi, edi
cmp edx, r10d
setb dil
cmovne ebx, edi
mov edx, dword [rcx + r9 + 0x40]
mov esi, dword [rsi + 4]
mov qword [rcx + 0x40], rax
mov dword [rcx + 0x50], edx
mov dword [rcx + 0x54], esi
mov r9d, ebx
xor r9b, 1
movzx r9d, r9b
shl r9d, 5
test bl, bl
mov rdi, r14
cmovne rdi, rcx
and ebx, r8d
shl ebx, 5
mov r14, qword [rcx + rbx]
mov r10, r14
mov qword [rsp + 0xb0], r14
shr r10, 0x20
mov qword [rsp + 0x48], r10
xor ebx, ebx
cmp r15d, r11d
setb bl
xor r11d, r11d
mov r8, qword [rsp + 0xf0]
cmp dword [rsp + 0xe0], r8d
setb r11b
cmovne ebx, r11d
mov r10d, ebx
xor r10b, 1
test bl, bl
mov r13, qword [rsp + 0x60]
cmovne r13, qword [rsp + 0x30]
mov r8d, 0xff
and ebx, r8d
xor r11d, r11d
mov r8d, dword [rsp + 0x98]
cmp dword [rsp + 0xb8], r8d
setb r11b
xor r15d, r15d
mov r8d, dword [rsp + 0xa8]
cmp dword [rsp + 0xc0], r8d
setb r15b
cmove r15d, r11d
test r15b, r15b
mov r8d, dword [rcx + r9]
mov dword [rsp + 0x98], r8d
mov r15d, dword [rdi + 4]
mov qword [rcx], r14
mov dword [rcx + 0x20], r8d
mov dword [rcx + 0x24], r15d
movzx r9d, r10b
mov r9d, dword [rcx + r9*8 + 8]
mov dword [rsp + 0xd0], r9d
mov r10d, dword [r13 + 4]
mov dword [rsp + 0xc8], r10d
mov rdi, qword [rcx + rbx*8 + 8]
mov qword [rcx + 8], rdi
mov qword [rsp + 0xc0], rdi
mov dword [rcx + 0x10], r9d
mov dword [rcx + 0x14], r10d
mov r10, qword [rsp + 0x38]
mov rbx, r10
mov r9, qword [rsp + 0x40]
cmovne rbx, r9
cmovne r9, r10
mov r11, qword [r9]
mov r10, r11
mov qword [rsp + 0xa8], r11
shr r10, 0x20
mov qword [rsp + 0x10], r10
shr rdi, 0x20
mov qword [rsp + 0xb8], rdi
xor r9d, r9d
cmp ebp, r12d
setb r9b
xor r10d, r10d
mov r8, qword [rsp + 8]
cmp eax, r8d
setb r10b
cmovne r9d, r10d
mov r10d, r9d
xor r10b, 1
test r9b, r9b
cmovne r8, rax
mov qword [rsp + 8], r8
mov rax, qword [rsp + 0x80]
cmovne rax, qword [rsp + 0x88]
xor r9d, r9d
cmp esi, dword [rsp + 0xe8]
setb r9b
xor r8d, r8d
cmp edx, dword [rsp + 0x6c]
setb r8b
cmove r8d, r9d
mov edx, r8d
xor dl, 1
test r8b, r8b
mov r9, qword [rsp + 0x28]
mov r13, qword [rsp + 0xd8]
cmovne r9, r13
mov ebp, 0xff
and r8d, ebp
xor edi, edi
mov esi, dword [rsp + 0xa0]
cmp dword [rsp + 4], esi
setb dil
xor esi, esi
mov r14d, dword [rsp]
cmp dword [rsp + 0x58], r14d
setb sil
cmove esi, edi
mov r14d, esi
xor r14b, 1
test sil, sil
mov r12, qword [rsp + 0x20]
cmovne r12, qword [rsp + 0x18]
and esi, ebp
mov edi, dword [rbx + 4]
xor ebp, ebp
cmp edi, r15d
mov r15d, dword [rbx]
setb bpl
xor ebx, ebx
cmp r15d, dword [rsp + 0x98]
mov qword [rcx + 0x18], r11
mov dword [rcx + 0x30], r15d
setb bl
cmove ebx, ebp
mov dword [rcx + 0x34], edi
movzx r10d, r10b
mov ebp, dword [rcx + r10*8 + 0x38]
mov r11d, dword [rax + 4]
mov r15, qword [rsp + 8]
mov qword [rcx + 0x38], r15
mov dword [rcx + 0x40], ebp
mov dword [rcx + 0x44], r11d
movzx eax, dl
mov eax, dword [rcx + rax*8 + 0x48]
mov dword [rsp + 0x58], eax
mov edx, dword [r9 + 4]
mov dword [rsp + 0xe0], edx
mov r10, qword [rcx + r8*8 + 0x48]
mov qword [rcx + 0x48], r10
mov dword [rcx + 0x50], eax
mov dword [rcx + 0x54], edx
movzx eax, r14b
mov r14d, dword [rcx + rax*8 + 0x58]
mov edi, dword [r12 + 4]
mov rsi, qword [rcx + rsi*8 + 0x58]
mov qword [rcx + 0x58], rsi
mov dword [rcx + 0x60], r14d
mov eax, ebx
xor al, 1
movzx r9d, al
shl r9d, 4
test bl, bl
mov rdx, qword [rsp + 0x38]
cmovne rdx, qword [rsp + 0x78]
mov dword [rcx + 0x64], edi
mov r12d, 0xff
and ebx, r12d
shl ebx, 4
mov rax, qword [rcx + rbx + 0x20]
mov rbx, rsi
shr rbx, 0x20
shr r15, 0x20
mov qword [rsp + 0xa0], r15
mov r8, rax
mov r15, rax
mov qword [rsp + 0xe8], rax
shr r8, 0x20
mov qword [rsp + 0x98], r8
mov r8, r10
shr r8, 0x20
xor eax, eax
cmp r8d, dword [rsp + 0x50]
setb al
xor r8d, r8d
cmp r10d, dword [rsp + 0x70]
setb r8b
cmovne eax, r8d
mov r8d, dword [rcx + r9 + 0x20]
mov dword [rsp + 0x50], r8d
mov r10d, dword [rdx + 4]
mov dword [rsp + 0x6c], r10d
mov qword [rcx + 0x20], r15
mov dword [rcx + 0x30], r8d
mov edx, eax
xor dl, 1
movzx r8d, dl
shl r8d, 5
test al, al
mov r15, qword [rsp + 0x90]
cmovne r13, r15
mov dword [rcx + 0x34], r10d
and eax, r12d
shl eax, 5
mov r9, qword [rax + rcx + 0x28]
mov rax, r9
shr rax, 0x20
xor r10d, r10d
cmp r11d, ebx
seta r10b
xor r11d, r11d
cmp ebp, esi
seta r11b
cmovne r10d, r11d
test r10b, r10b
mov r8d, dword [r8 + rcx + 0x28]
mov dword [rsp + 4], r8d
mov r10d, dword [r13 + 4]
mov dword [rsp], r10d
mov qword [rcx + 0x28], r9
mov dword [rcx + 0x48], r8d
mov rdx, qword [rsp + 0x18]
mov rbp, qword [rsp + 0x80]
cmovne rdx, rbp
mov dword [rcx + 0x4c], r10d
cmove rsi, qword [rcx + 0x40]
xor r10d, r10d
cmp edi, dword [rsp + 0xe0]
setb r10b
xor r8d, r8d
cmp r14d, dword [rsp + 0x58]
setb r8b
cmove r8d, r10d
mov r10d, r8d
xor r10b, 1
movzx r10d, r10b
shl r10d, 4
test r8b, r8b
mov rdi, qword [rsp + 0x20]
cmovne rdi, qword [rsp + 0x28]
mov qword [rsp + 0x20], rdi
and r8d, r12d
mov r13d, dword [rdx]
mov edx, dword [rdx + 4]
mov qword [rcx + 0x40], rsi
mov dword [rcx + 0x58], r13d
mov dword [rcx + 0x5c], edx
shl r8d, 4
mov r12, qword [r8 + rcx + 0x50]
mov rbx, rsi
shr rbx, 0x20
mov rdi, r12
shr rdi, 0x20
xor r8d, r8d
cmp eax, dword [rsp + 0x48]
setb r8b
xor eax, eax
mov r14, qword [rsp + 0xb0]
cmp r9d, r14d
setb al
cmovne r8d, eax
test r8b, r8b
mov rax, r14
cmovne rax, r9
mov r9, r15
cmovne r9, rcx
mov r8, rax
mov r15, rax
shr r8, 0x20
xor eax, eax
cmp ebx, dword [rsp + 0x10]
setb al
xor ebx, ebx
mov r14, qword [rsp + 0xa8]
cmp esi, r14d
setb bl
cmovne eax, ebx
test al, al
cmove rsi, r14
cmovne rbp, qword [rsp + 0x40]
mov rax, rsi
mov qword [rsp + 0x70], rsi
shr rax, 0x20
mov qword [rsp + 0x58], rax
xor eax, eax
mov r11, qword [rsp + 0x98]
cmp dword [rsp + 0xa0], r11d
setb al
xor ebx, ebx
mov r14, qword [rsp + 8]
mov r11, qword [rsp + 0xe8]
cmp r14d, r11d
setb bl
cmovne eax, ebx
test al, al
cmove r14, r11
mov r11, r14
mov rbx, qword [rsp + 0x88]
cmovne rbx, qword [rsp + 0x78]
xor eax, eax
cmp edx, dword [rsp + 0x6c]
setb al
xor edx, edx
cmp r13d, dword [rsp + 0x50]
mov r10d, dword [r10 + rcx + 0x50]
mov r14, qword [rsp + 0x20]
mov r14d, dword [r14 + 4]
mov qword [rcx + 0x50], r12
mov dword [rcx + 0x60], r10d
setb dl
cmove edx, eax
mov dword [rcx + 0x64], r14d
test dl, dl
mov eax, dword [r9]
mov dword [rsp + 0xa8], eax
mov r14d, dword [r9 + 4]
mov qword [rcx], r15
mov r13, r15
mov dword [rcx + 0x28], eax
mov dword [rcx + 0x2c], r14d
mov eax, dword [rbp]
mov dword [rsp + 0x20], eax
mov edx, dword [rbp + 4]
mov dword [rsp + 0x48], edx
mov qword [rcx + 0x18], rsi
mov dword [rcx + 0x40], eax
mov dword [rcx + 0x44], edx
mov eax, dword [rbx]
mov dword [rsp + 0x10], eax
mov edx, dword [rbx + 4]
mov dword [rsp + 0xb0], edx
mov qword [rsp + 8], r11
mov qword [rcx + 0x20], r11
mov dword [rcx + 0x38], eax
mov dword [rcx + 0x3c], edx
mov rdx, qword [rsp + 0x18]
mov rbx, rdx
mov rax, qword [rsp + 0x38]
cmovne rbx, rax
cmovne rax, rdx
mov rdx, qword [rax]
mov r10, rdx
shr r10, 0x20
shr r11, 0x20
mov qword [rsp + 0x50], r11
xor ebp, ebp
cmp dword [rsp], edi
seta bpl
xor r9d, r9d
cmp dword [rsp + 4], r12d
seta r9b
cmovne ebp, r9d
mov r9d, ebp
xor r9b, 1
test bpl, bpl
mov eax, dword [rbx]
mov dword [rsp + 4], eax
mov r11d, dword [rbx + 4]
mov dword [rsp], r11d
mov qword [rcx + 0x30], rdx
mov dword [rcx + 0x58], eax
mov rdi, qword [rsp + 0x28]
mov rsi, qword [rsp + 0xd8]
cmovne rdi, rsi
mov dword [rcx + 0x5c], r11d
mov r15, r12
cmove r15, qword [rcx + 0x48]
mov rbp, r15
shr rbp, 0x20
xor ebx, ebx
cmp dword [rsp + 0xb8], r8d
setb bl
xor r8d, r8d
mov rax, qword [rsp + 0xc0]
mov r11, r13
cmp eax, r11d
setb r8b
cmovne ebx, r8d
mov r12d, ebx
xor r12b, 1
test bl, bl
cmovne r11, rax
mov rbx, qword [rsp + 0x30]
cmovne rbx, rcx
xor r13d, r13d
cmp r14d, dword [rsp + 0xc8]
setb r13b
xor eax, eax
mov r8d, dword [rsp + 0xa8]
cmp r8d, dword [rsp + 0xd0]
movzx r8d, r9b
mov r9d, dword [rcx + r8*8 + 0x48]
mov r8d, dword [rdi + 4]
mov qword [rcx + 0x48], r15
mov dword [rcx + 0x50], r9d
mov dword [rcx + 0x54], r8d
movzx edi, r12b
mov r14d, dword [rcx + rdi*8]
mov r12d, dword [rbx + 4]
mov qword [rcx], r11
setb al
cmove eax, r13d
test al, al
mov r11, qword [rsp + 0x90]
mov r13, r11
mov rax, qword [rsp + 0x60]
cmovne r13, rax
mov dword [rcx + 8], r14d
cmovne rax, r11
mov dword [rcx + 0xc], r12d
mov rbx, qword [rax]
mov r11, rbx
shr r11, 0x20
xor eax, eax
cmp ebp, r10d
setb al
xor r10d, r10d
cmp r15d, edx
setb r10b
cmovne eax, r10d
test al, al
cmove r15, rdx
mov rdx, rsi
cmovne rdx, qword [rsp + 0x38]
xor eax, eax
mov r10d, dword [rsp + 0xb0]
cmp dword [rsp + 0x48], r10d
setb al
xor r10d, r10d
mov esi, dword [rsp + 0x10]
cmp dword [rsp + 0x20], esi
setb r10b
cmove r10d, eax
mov ebp, r10d
xor bpl, 1
test r10b, r10b
mov r10, qword [rsp + 0x80]
mov rax, r10
mov rdi, qword [rsp + 0x88]
cmovne rax, rdi
cmovne rdi, r10
xor r10d, r10d
cmp dword [rsp], r8d
setb r10b
xor r8d, r8d
cmp dword [rsp + 4], r9d
setb r8b
cmove r8d, r10d
mov r10d, r8d
xor r10b, 1
test r8b, r8b
mov r8d, dword [r13]
mov dword [rsp + 0x10], r8d
mov r13d, dword [r13 + 4]
mov qword [rcx + 0x10], rbx
mov dword [rcx + 0x28], r8d
mov dword [rcx + 0x2c], r13d
mov r8d, dword [rdx]
mov dword [rsp + 0xc0], r8d
mov edx, dword [rdx + 4]
mov dword [rsp + 0xb8], edx
mov qword [rcx + 0x30], r15
mov dword [rcx + 0x48], r8d
mov dword [rcx + 0x4c], edx
movzx edx, bpl
mov edx, dword [rcx + rdx*8 + 0x38]
mov dword [rsp + 0x20], edx
mov eax, dword [rax + 4]
mov dword [rsp + 4], eax
mov r8, qword [rdi]
mov qword [rcx + 0x38], r8
mov rsi, r8
mov qword [rsp + 0xd0], r8
mov dword [rcx + 0x40], edx
mov dword [rcx + 0x44], eax
mov r8, qword [rsp + 0x18]
mov rax, r8
mov rdx, qword [rsp + 0x28]
cmovne rax, rdx
cmove r8, rdx
mov rbp, qword [r8]
mov qword [rsp + 0x18], rbp
mov r9, r15
shr r9, 0x20
mov rdi, rbp
shr rdi, 0x20
shr rsi, 0x20
mov qword [rsp + 0xc8], rsi
xor edx, edx
cmp r12d, dword [rsp + 0x58]
movzx r8d, r10b
mov r8d, dword [rcx + r8*8 + 0x50]
mov eax, dword [rax + 4]
mov qword [rcx + 0x50], rbp
mov dword [rcx + 0x58], r8d
seta dl
xor r8d, r8d
mov r10, qword [rsp + 0x70]
cmp r14d, r10d
seta r8b
mov dword [rcx + 0x5c], eax
cmove r8d, edx
mov eax, r8d
xor al, 1
movzx r14d, al
shl r14d, 4
test r8b, r8b
mov rdx, r10
cmove rdx, qword [rcx + 8]
mov r12, qword [rsp + 0x40]
cmovne r12, qword [rsp + 0x30]
mov r8, rdx
mov qword [rsp + 0x70], rdx
shr r8, 0x20
mov qword [rsp + 0x48], r8
xor r8d, r8d
cmp dword [rsp + 0x50], r11d
setb r8b
xor eax, eax
mov rsi, qword [rsp + 8]
cmp esi, ebx
setb al
cmovne r8d, eax
mov eax, r8d
xor al, 1
movzx eax, al
shl eax, 4
test r8b, r8b
cmove rsi, rbx
mov r8, qword [rsp + 0x78]
cmovne r8, qword [rsp + 0x60]
mov r10, rsi
mov qword [rsp + 8], rsi
shr r10, 0x20
xor ebp, ebp
cmp r13d, r9d
seta bpl
xor r9d, r9d
cmp dword [rsp + 0x10], r15d
seta r9b
cmovne ebp, r9d
mov ebx, ebp
xor bl, 1
test bpl, bpl
mov r9d, dword [rcx + r14 + 8]
mov dword [rsp + 0x10], r9d
mov r14d, dword [r12 + 4]
mov qword [rcx + 8], rdx
mov dword [rcx + 0x18], r9d
mov dword [rcx + 0x1c], r14d
mov r12d, dword [rax + rcx + 0x10]
mov r9d, dword [r8 + 4]
mov qword [rcx + 0x10], rsi
mov dword [rcx + 0x20], r12d
mov r8, qword [rsp + 0x38]
cmovne r8, qword [rsp + 0x90]
mov dword [rcx + 0x24], r9d
cmove r15, qword [rcx + 0x28]
mov rbp, r15
mov rdx, r15
mov qword [rsp + 0x50], r15
shr rbp, 0x20
xor r15d, r15d
cmp dword [rsp + 0xb8], edi
seta r15b
xor edi, edi
mov rax, qword [rsp + 0x18]
cmp dword [rsp + 0xc0], eax
seta dil
cmovne r15d, edi
mov r13d, r15d
xor r13b, 1
test r15b, r15b
movzx edi, bl
mov r11d, dword [rcx + rdi*8 + 0x28]
mov dword [rsp + 0x58], r11d
mov r15d, dword [r8 + 4]
mov qword [rcx + 0x28], rdx
mov dword [rcx + 0x30], r11d
mov dword [rcx + 0x34], r15d
mov rdi, rax
cmove rdi, qword [rcx + 0x48]
mov rax, qword [rsp + 0x28]
cmovne rax, qword [rsp + 0xd8]
mov rsi, rdi
mov qword [rsp + 0x18], rdi
shr rsi, 0x20
mov qword [rsp + 0x28], rsi
xor r8d, r8d
cmp r10d, dword [rsp + 0x48]
setb r8b
xor edx, edx
mov r10, qword [rsp + 0x70]
mov r11, qword [rsp + 8]
cmp r11d, r10d
setb dl
cmovne r8d, edx
mov edx, r8d
xor dl, 1
test r8b, r8b
cmove r11, r10
mov rbx, qword [rsp + 0x30]
cmove rbx, qword [rsp + 0x60]
xor esi, esi
cmp r9d, r14d
setb sil
xor r9d, r9d
cmp r12d, dword [rsp + 0x10]
movzx r8d, r13b
mov r8d, dword [rcx + r8*8 + 0x48]
mov r10d, dword [rax + 4]
mov qword [rcx + 0x48], rdi
mov dword [rcx + 0x50], r8d
mov dword [rcx + 0x54], r10d
movzx edx, dl
mov r8d, dword [rcx + rdx*8 + 8]
mov dword [rsp + 8], r8d
mov r10d, dword [rbx + 4]
mov dword [rsp + 0x30], r10d
mov qword [rcx + 8], r11
setb r9b
cmove r9d, esi
mov ebx, r9d
xor bl, 1
test r9b, r9b
mov rax, qword [rsp + 0x78]
mov r12, rax
mov rdx, qword [rsp + 0x40]
cmovne r12, rdx
mov dword [rcx + 0x10], r8d
cmovne rdx, rax
mov dword [rcx + 0x14], r10d
mov r14, qword [rdx]
mov r8, r14
shr r8, 0x20
xor edx, edx
cmp dword [rsp + 0xc8], ebp
setb dl
xor eax, eax
mov r9, qword [rsp + 0xd0]
mov r10, qword [rsp + 0x50]
cmp r9d, r10d
setb al
cmovne edx, eax
mov eax, edx
xor al, 1
movzx eax, al
shl eax, 4
test dl, dl
cmovne r10, r9
mov rdx, qword [rsp + 0x88]
cmovne rdx, qword [rsp + 0x90]
xor esi, esi
cmp dword [rsp + 4], r15d
setb sil
xor edi, edi
mov r9d, dword [rsp + 0x58]
cmp dword [rsp + 0x20], r9d
setb dil
cmove edi, esi
mov esi, edi
xor sil, 1
movzx esi, sil
shl esi, 4
test dil, dil
movzx edi, bl
mov ebp, dword [rcx + rdi*8 + 0x18]
mov r15d, dword [r12 + 4]
mov qword [rcx + 0x18], r14
mov dword [rcx + 0x20], ebp
mov dword [rcx + 0x24], r15d
mov edi, dword [rcx + rax + 0x28]
mov ebx, dword [rdx + 4]
mov qword [rcx + 0x28], r10
mov r11, qword [rsp + 0x80]
mov r9, r11
mov rdx, qword [rsp + 0x38]
cmovne r9, rdx
mov dword [rcx + 0x38], edi
cmovne rdx, r11
mov dword [rcx + 0x3c], ebx
mov r12, qword [rdx]
mov r13, r10
shr r13, 0x20
mov rdx, r12
shr rdx, 0x20
xor eax, eax
cmp dword [rsp + 0x30], r8d
seta al
xor r8d, r8d
cmp dword [rsp + 8], r14d
seta r8b
cmovne eax, r8d
mov r8d, eax
xor r8b, 1
test al, al
mov eax, dword [rsi + rcx + 0x30]
mov dword [rsp + 8], eax
mov r11d, dword [r9 + 4]
mov qword [rcx + 0x30], r12
mov dword [rcx + 0x40], eax
mov dword [rcx + 0x44], r11d
cmove r14, qword [rcx + 0x10]
mov rax, qword [rsp + 0x60]
cmove rax, qword [rsp + 0x40]
xor r9d, r9d
cmp r15d, r13d
seta r9b
xor esi, esi
cmp ebp, r10d
seta sil
cmovne r9d, esi
movzx r8d, r8b
mov r13d, dword [rcx + r8*8 + 0x10]
mov ebp, dword [rax + 4]
mov qword [rcx + 0x10], r14
mov r8d, r9d
xor r8b, 1
test r9b, r9b
mov dword [rcx + 0x18], r13d
mov rsi, qword [rsp + 0x90]
cmovne rsi, qword [rsp + 0x78]
mov dword [rcx + 0x1c], ebp
cmove r10, qword [rcx + 0x20]
mov r15, r10
mov r14, r10
shr r15, 0x20
xor r9d, r9d
cmp ebx, edx
setb r9b
xor edx, edx
cmp edi, r12d
setb dl
cmovne r9d, edx
mov edx, r9d
xor dl, 1
test r9b, r9b
movzx r8d, r8b
mov r9d, dword [rcx + r8*8 + 0x20]
mov edi, dword [rsi + 4]
mov qword [rcx + 0x20], r10
mov dword [rcx + 0x28], r9d
mov rsi, qword [rsp + 0x88]
mov r10, qword [rsp + 0x38]
cmovne rsi, r10
mov dword [rcx + 0x2c], edi
cmovne r12, qword [rcx + 0x38]
mov rbx, r12
shr rbx, 0x20
xor r8d, r8d
cmp r11d, dword [rsp + 0x28]
movzx eax, dl
mov eax, dword [rcx + rax*8 + 0x30]
mov edx, dword [rsi + 4]
mov qword [rcx + 0x30], r12
mov dword [rcx + 0x38], eax
mov dword [rcx + 0x3c], edx
seta r8b
xor eax, eax
mov r11, qword [rsp + 0x18]
cmp dword [rsp + 8], r11d
seta al
cmove eax, r8d
mov edx, eax
xor dl, 1
test al, al
cmove r11, qword [rcx + 0x40]
mov r8, qword [rsp + 0xd8]
cmovne r8, qword [rsp + 0x80]
xor eax, eax
cmp ebp, r15d
movzx edx, dl
mov edx, dword [rcx + rdx*8 + 0x40]
mov r8d, dword [r8 + 4]
mov qword [rcx + 0x40], r11
mov dword [rcx + 0x48], edx
mov dword [rcx + 0x4c], r8d
seta al
xor edx, edx
cmp r13d, r14d
seta dl
cmovne eax, edx
mov edx, eax
xor dl, 1
test al, al
cmove r14, qword [rcx + 0x18]
mov r8, qword [rsp + 0x78]
cmovne r8, qword [rsp + 0x40]
xor eax, eax
cmp edi, ebx
movzx edx, dl
mov edx, dword [rcx + rdx*8 + 0x18]
mov r8d, dword [r8 + 4]
mov qword [rcx + 0x18], r14
mov dword [rcx + 0x20], edx
mov dword [rcx + 0x24], r8d
seta al
xor edx, edx
cmp r9d, r12d
seta dl
cmovne eax, edx
mov edx, eax
xor dl, 1
test al, al
mov r8, r10
cmovne r8, qword [rsp + 0x90]
movzx eax, dl
mov eax, dword [rcx + rax*8 + 0x28]
cmove r12, qword [rcx + 0x28]
mov edx, dword [r8 + 4]
mov qword [rcx + 0x28], r12
mov dword [rcx + 0x30], eax
mov dword [rcx + 0x34], edx
add rsp, 0xf8
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
ud2