Function at 0x1400312a0
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, 0x38
mov edi, dword [rcx]
mov dword [rdx], edi
mov esi, dword [rcx + 4]
mov dword [rdx + 4], esi
mov ebp, dword [rcx + 8]
mov dword [rdx + 8], ebp
mov ebx, dword [rcx + 0xc]
movzx ecx, bh
lea r11, [0x1402ef4f0]
mov rax, rbx
shr rax, 0xe
and eax, 0x3fc
mov eax, dword [rax + r11 + 0x400]
xor eax, dword [r11 + rcx*4]
mov rcx, rbx
mov r12, rbx
shr rcx, 0x18
xor eax, dword [r11 + rcx*4 + 0x800]
movzx ecx, r12b
xor eax, dword [r11 + rcx*4 + 0xc00]
xor eax, dword [0x1402ee4c0]
xor ebx, ebp
mov dword [rsp + 4], ebx
mov ecx, edi
xor ecx, esi
xor ecx, ebx
xor ecx, eax
mov dword [rsp], ecx
xor eax, edi
movzx ecx, al
mov qword [rsp + 0x10], rcx
movzx edi, ah
mov r10d, eax
mov r8d, eax
xor eax, esi
movzx ecx, al
mov qword [rsp + 0x30], rcx
movzx ecx, ah
mov qword [rsp + 0x28], rcx
mov ecx, eax
mov dword [rsp + 0xc], eax
mov qword [rsp + 0x20], rcx
xor eax, ebp
movzx ecx, al
mov qword [rsp + 0x18], rcx
movzx ebp, ah
mov dword [rsp + 8], eax
mov r13d, eax
xor eax, r12d
lea r9, [0x1402f24f0]
movzx ebx, ah
mov r14d, dword [r9 + rbx*4 + 0x400]
movzx ebx, al
xor r14d, dword [r9 + rbx*4]
mov ebx, eax
shr ebx, 0x10
movzx ebx, bl
xor r14d, dword [r9 + rbx*4 + 0x800]
shr eax, 0x18
xor r14d, dword [r9 + rax*4 + 0xc00]
mov r15d, dword [r9 + rdi*4 + 0x400]
mov rax, qword [rsp + 0x10]
xor r15d, dword [r9 + rax*4]
shr r10d, 0x10
movzx eax, r10b
xor r15d, dword [r9 + rax*4 + 0x800]
shr r8d, 0x18
xor r15d, dword [r9 + r8*4 + 0xc00]
mov ebx, dword [rsp]
mov eax, ebx
shr eax, 0x10
movzx eax, al
movzx edi, bh
mov ecx, ebx
mov eax, dword [r11 + rax*4 + 0x400]
xor eax, dword [r11 + rdi*4]
shr ebx, 0x18
xor eax, dword [r11 + rbx*4 + 0x800]
movzx ebx, cl
mov r8d, ecx
xor eax, dword [r11 + rbx*4 + 0xc00]
mov dword [rdx + 0xc], r12d
xor eax, dword [reloc.OLEAUT32.dll_SysReAllocString]
mov dword [rdx + 0x10], r15d
movzx ebx, al
xor r15d, dword [r9 + rbx*4]
movzx edi, ah
xor r15d, dword [r9 + rdi*4 + 0x400]
mov ebx, r12d
xor ebx, esi
mov edi, eax
shr edi, 0x10
movzx edi, dil
xor r15d, dword [r9 + rdi*4 + 0x800]
xor ebx, eax
shr eax, 0x18
xor r15d, dword [r9 + rax*4 + 0xc00]
mov eax, ebx
shr eax, 0x10
movzx eax, al
movzx esi, bh
mov eax, dword [r11 + rax*4 + 0x400]
xor eax, dword [r11 + rsi*4]
mov edi, ebx
shr edi, 0x18
xor eax, dword [r11 + rdi*4 + 0x800]
movzx edi, bl
xor eax, dword [r11 + rdi*4 + 0xc00]
xor eax, dword [reloc.OLEAUT32.dll_SysReAllocStringLen]
movzx esi, ah
mov r10d, dword [r9 + rsi*4 + 0x400]
movzx edi, al
xor r10d, dword [r9 + rdi*4]
mov edi, eax
shr edi, 0x10
movzx edi, dil
xor r10d, dword [r9 + rdi*4 + 0x800]
mov ecx, dword [rsp + 4]
xor ecx, eax
mov dword [rsp + 4], ecx
shr eax, 0x18
xor r10d, dword [r9 + rax*4 + 0xc00]
mov eax, ecx
shr eax, 0x10
movzx eax, al
movzx esi, ch
mov eax, dword [r11 + rax*4 + 0x400]
xor eax, dword [r11 + rsi*4]
mov edi, ecx
shr edi, 0x18
xor eax, dword [r11 + rdi*4 + 0x800]
movzx edi, cl
xor eax, dword [r11 + rdi*4 + 0xc00]
xor eax, dword [reloc.OLEAUT32.dll_VariantClear]
mov ecx, eax
xor ecx, r12d
mov rsi, qword [rsp + 0x28]
mov edi, dword [r9 + rsi*4 + 0x400]
mov rsi, qword [rsp + 0x30]
xor edi, dword [r9 + rsi*4]
mov esi, dword [rsp + 0xc]
shr esi, 0x10
movzx esi, sil
xor edi, dword [r9 + rsi*4 + 0x800]
mov rsi, qword [rsp + 0x20]
shr esi, 0x18
xor edi, dword [r9 + rsi*4 + 0xc00]
mov esi, dword [r9 + rbp*4 + 0x400]
mov rbp, qword [rsp + 0x18]
xor esi, dword [r9 + rbp*4]
mov dword [rdx + 0x14], edi
mov ebp, dword [rsp + 8]
shr ebp, 0x10
movzx ebp, bpl
xor esi, dword [r9 + rbp*4 + 0x800]
shr r13d, 0x18
xor esi, dword [r9 + r13*4 + 0xc00]
mov dword [rdx + 0x18], esi
mov dword [rdx + 0x1c], r14d
mov dword [rdx + 0x20], r15d
mov r12d, r15d
xor r12d, edi
mov dword [rdx + 0x24], r12d
xor r12d, esi
mov dword [rdx + 0x28], r12d
mov ebp, r12d
xor ebp, r14d
mov dword [rdx + 0x2c], ebp
xor r15d, r10d
mov dword [rdx + 0x30], r15d
movzx ebp, al
xor r15d, dword [r9 + rbp*4]
movzx esi, ah
mov ebp, eax
shr ebp, 0x10
movzx ebp, bpl
shr eax, 0x18
xor r15d, dword [r9 + rsi*4 + 0x400]
xor r15d, dword [r9 + rbp*4 + 0x800]
xor r15d, dword [r9 + rax*4 + 0xc00]
movzx esi, ch
mov eax, ecx
shr eax, 0x10
movzx eax, al
mov eax, dword [r11 + rax*4 + 0x400]
xor eax, dword [r11 + rsi*4]
mov ebp, ecx
shr ebp, 0x18
xor eax, dword [r11 + rbp*4 + 0x800]
movzx ebp, cl
mov r13d, ecx
xor eax, dword [r11 + rbp*4 + 0xc00]
xor eax, dword [reloc.OLEAUT32.dll_SafeArrayGetDim]
mov ecx, r8d
xor ecx, eax
mov dword [rsp], ecx
movzx esi, al
movzx ebp, ah
mov r8d, dword [r9 + rbp*4 + 0x400]
xor r8d, dword [r9 + rsi*4]
mov esi, eax
shr esi, 0x10
movzx esi, sil
xor r8d, dword [r9 + rsi*4 + 0x800]
shr eax, 0x18
xor r8d, dword [r9 + rax*4 + 0xc00]
xor r10d, edi
mov dword [rdx + 0x34], r10d
mov eax, r10d
xor eax, r12d
mov dword [rdx + 0x38], eax
mov eax, r10d
xor eax, r14d
mov dword [rdx + 0x3c], eax
mov dword [rdx + 0x40], r15d
mov esi, r15d
xor esi, r10d
mov dword [rdx + 0x44], esi
xor r12d, r15d
mov dword [rdx + 0x48], r12d
xor eax, r12d
mov dword [rdx + 0x4c], eax
xor r15d, r8d
mov dword [rdx + 0x50], r15d
movzx esi, ch
mov eax, ecx
shr eax, 0x10
movzx eax, al
mov eax, dword [r11 + rax*4 + 0x400]
xor eax, dword [r11 + rsi*4]
mov esi, ecx
shr esi, 0x18
xor eax, dword [r11 + rsi*4 + 0x800]
movzx esi, cl
xor eax, dword [r11 + rsi*4 + 0xc00]
xor eax, dword [0x1402ee4d4]
xor ebx, eax
movzx esi, al
xor r15d, dword [r9 + rsi*4]
movzx esi, ah
mov edi, eax
shr edi, 0x10
movzx edi, dil
shr eax, 0x18
xor r15d, dword [r9 + rsi*4 + 0x400]
xor r15d, dword [r9 + rdi*4 + 0x800]
xor r15d, dword [r9 + rax*4 + 0xc00]
movzx esi, bh
mov eax, ebx
shr eax, 0x10
movzx eax, al
mov eax, dword [r11 + rax*4 + 0x400]
xor eax, dword [r11 + rsi*4]
mov esi, ebx
shr esi, 0x18
xor eax, dword [r11 + rsi*4 + 0x800]
movzx esi, bl
xor eax, dword [r11 + rsi*4 + 0xc00]
xor eax, dword [0x1402ee4d8]
mov ecx, dword [rsp + 4]
xor ecx, eax
movzx esi, al
movzx edi, ah
mov ebp, dword [r9 + rdi*4 + 0x400]
xor ebp, dword [r9 + rsi*4]
mov esi, eax
shr esi, 0x10
movzx esi, sil
xor ebp, dword [r9 + rsi*4 + 0x800]
shr eax, 0x18
xor ebp, dword [r9 + rax*4 + 0xc00]
xor r10d, r8d
mov dword [rdx + 0x54], r10d
mov eax, r10d
xor eax, r12d
mov dword [rdx + 0x58], eax
xor r8d, r14d
mov dword [rdx + 0x5c], r8d
mov dword [rdx + 0x60], r15d
mov eax, r15d
xor eax, r10d
mov dword [rdx + 0x64], eax
xor r12d, r15d
mov dword [rdx + 0x68], r12d
mov eax, r12d
xor eax, r8d
mov dword [rdx + 0x6c], eax
xor r15d, ebp
mov dword [rdx + 0x70], r15d
movzx esi, ch
mov eax, ecx
shr eax, 0x10
movzx eax, al
mov eax, dword [r11 + rax*4 + 0x400]
xor eax, dword [r11 + rsi*4]
mov esi, ecx
shr esi, 0x18
xor eax, dword [r11 + rsi*4 + 0x800]
movzx esi, cl
mov r14d, ecx
xor eax, dword [r11 + rsi*4 + 0xc00]
xor eax, dword [0x1402ee4dc]
mov ecx, r13d
xor ecx, eax
movzx esi, al
xor r15d, dword [r9 + rsi*4]
movzx esi, ah
mov edi, eax
shr edi, 0x10
movzx edi, dil
shr eax, 0x18
xor r15d, dword [r9 + rsi*4 + 0x400]
xor r15d, dword [r9 + rdi*4 + 0x800]
xor r15d, dword [r9 + rax*4 + 0xc00]
movzx esi, ch
mov eax, ecx
shr eax, 0x10
movzx eax, al
mov eax, dword [r11 + rax*4 + 0x400]
xor eax, dword [r11 + rsi*4]
mov esi, ecx
shr esi, 0x18
xor eax, dword [r11 + rsi*4 + 0x800]
movzx esi, cl
mov r13d, ecx
xor eax, dword [r11 + rsi*4 + 0xc00]
xor eax, dword [reloc.OLEAUT32.dll_DispGetParam]
movzx esi, al
movzx edi, ah
mov edi, dword [r9 + rdi*4 + 0x400]
xor edi, dword [r9 + rsi*4]
mov esi, eax
shr esi, 0x10
movzx esi, sil
xor edi, dword [r9 + rsi*4 + 0x800]
mov ecx, dword [rsp]
xor ecx, eax
shr eax, 0x18
xor edi, dword [r9 + rax*4 + 0xc00]
xor ebp, r10d
mov dword [rdx + 0x74], ebp
movzx eax, ch
xor ebx, dword [r11 + rax*4]
mov eax, ecx
shr eax, 0x10
movzx eax, al
xor ebx, dword [r11 + rax*4 + 0x400]
mov eax, ecx
shr eax, 0x18
xor ebx, dword [r11 + rax*4 + 0x800]
mov eax, ebp
xor eax, r12d
mov dword [rdx + 0x78], eax
movzx eax, cl
mov esi, ecx
xor ebx, dword [r11 + rax*4 + 0xc00]
mov eax, ebp
xor eax, r8d
mov dword [rdx + 0x7c], eax
mov dword [rdx + 0x80], r15d
mov ecx, r15d
xor ecx, ebp
mov dword [rdx + 0x84], ecx
xor r12d, r15d
mov dword [rdx + 0x88], r12d
xor eax, r12d
mov dword [rdx + 0x8c], eax
xor r15d, edi
mov dword [rdx + 0x90], r15d
xor ebp, edi
mov dword [rdx + 0x94], ebp
xor ebp, r12d
mov dword [rdx + 0x98], ebp
xor edi, r8d
mov dword [rdx + 0x9c], edi
xor ebx, dword [0x1402ee4e4]
mov ecx, esi
xor ecx, ebx
mov eax, r14d
xor eax, r13d
xor eax, ecx
mov dword [rdx + 0xa0], eax
mov eax, r13d
xor eax, ebx
mov dword [rdx + 0xa4], eax
mov dword [rdx + 0xa8], ecx
mov dword [rdx + 0xac], ebx
mov dword [rdx + 0xf0], 0xa
add rsp, 0x38
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0xc8
mov r10, rdx
mov edi, dword [rcx]
mov dword [rdx], edi
mov r8d, dword [rcx + 4]
mov dword [rdx + 4], r8d
mov r15d, dword [rcx + 8]
mov dword [rdx + 8], r15d
mov eax, dword [rcx + 0xc]
mov dword [rdx + 0xc], eax
mov r12d, eax
mov eax, dword [rcx + 0x10]
movzx edx, al
lea r14, [0x1402f24f0]
movzx esi, ah
mov ebp, dword [r14 + rsi*4 + 0x400]
xor ebp, dword [r14 + rdx*4]
mov rdx, rax
shr rdx, 0xe
and edx, 0x3fc
xor ebp, dword [rdx + r14 + 0x800]
mov rdx, rax
shr rdx, 0x18
xor ebp, dword [r14 + rdx*4 + 0xc00]
mov dword [r10 + 0x10], ebp
mov ebx, dword [rcx + 0x14]
movzx r9d, bl
movzx edx, bh
mov ebp, dword [r14 + rdx*4 + 0x400]
xor ebp, dword [r14 + r9*4]
mov rsi, rbx
shr rsi, 0xe
and esi, 0x3fc
xor ebp, dword [rsi + r14 + 0x800]
mov rcx, rbx
mov r13, rbx
shr rcx, 0x18
xor ebp, dword [r14 + rcx*4 + 0xc00]
mov dword [rsp + 0x30], ebp
lea r11, [0x1402ef4f0]
xor edi, dword [r11 + rdx*4]
xor edi, dword [rsi + r11 + 0x400]
xor edi, dword [r11 + rcx*4 + 0x800]
xor edi, dword [r11 + r9*4 + 0xc00]
xor edi, dword [0x1402ee4c0]
mov ebx, edi
xor ebx, r8d
movzx ecx, bl
mov qword [rsp + 0x18], rcx
movzx ecx, bh
mov qword [rsp + 0xc0], rcx
mov dword [rsp + 0x3c], ebx
mov ecx, ebx
mov qword [rsp + 0xb8], rcx
xor ebx, r15d
mov ecx, ebx
mov dword [rsp + 4], r12d
xor ecx, r12d
movzx edx, cl
mov qword [rsp + 0xb0], rdx
movzx edx, ch
mov qword [rsp + 0xa8], rdx
mov dword [rsp + 0x38], ecx
mov edx, ecx
mov qword [rsp + 0xa0], rdx
xor ecx, eax
mov eax, ecx
mov r15d, ecx
mov dword [rsp + 8], ecx
xor eax, r13d
mov ecx, eax
shr ecx, 0x10
movzx esi, cl
movzx edx, ah
mov ebp, dword [r14 + rdx*4 + 0x400]
mov ecx, dword [r11 + rsi*4 + 0x400]
xor ecx, dword [r11 + rdx*4]
movzx edx, al
xor ebp, dword [r14 + rdx*4]
xor ebp, dword [r14 + rsi*4 + 0x800]
shr eax, 0x18
xor ebp, dword [r14 + rax*4 + 0xc00]
mov dword [rsp + 0x14], ebp
xor ecx, dword [r11 + rax*4 + 0x800]
xor ecx, dword [r11 + rdx*4 + 0xc00]
xor ecx, dword [reloc.OLEAUT32.dll_SysReAllocString]
mov eax, edi
movzx edx, al
mov qword [rsp + 0x80], rdx
mov dword [rsp + 0x28], edi
mov edx, edi
mov qword [rsp + 0x88], rdx
movzx edx, ah
mov qword [rsp + 0x78], rdx
xor eax, ecx
mov r9d, eax
movzx eax, cl
mov qword [rsp + 0x90], rax
mov dword [rsp + 0x34], ecx
mov eax, ecx
mov qword [rsp + 0x98], rax
movzx eax, ch
mov qword [rsp + 0x70], rax
mov esi, ecx
xor esi, r8d
mov rdx, r13
xor edx, r12d
xor edx, esi
mov eax, edx
shr eax, 0x10
movzx eax, al
movzx ecx, dh
mov r12, r11
mov eax, dword [r11 + rax*4 + 0x400]
xor eax, dword [r11 + rcx*4]
mov ecx, edx
shr ecx, 0x18
xor eax, dword [r11 + rcx*4 + 0x800]
movzx ecx, dl
mov rbp, rdx
xor eax, dword [r11 + rcx*4 + 0xc00]
xor eax, dword [reloc.OLEAUT32.dll_SysReAllocStringLen]
movzx ecx, ah
mov r13d, dword [r14 + rcx*4 + 0x400]
movzx ecx, al
xor r13d, dword [r14 + rcx*4]
mov ecx, eax
shr ecx, 0x10
movzx ecx, cl
xor r13d, dword [r14 + rcx*4 + 0x800]
xor r9d, eax
shr eax, 0x18
xor r13d, dword [r14 + rax*4 + 0xc00]
movzx edx, bl
mov qword [rsp + 0x60], rdx
mov edi, ebx
mov r11d, ebx
movzx edx, bh
mov qword [rsp + 0x58], rdx
xor ebx, r9d
mov dword [rsp + 0x10], ebx
mov eax, ebp
mov qword [rsp + 0x68], rbp
xor eax, r15d
xor eax, ebx
mov ecx, eax
shr ecx, 0x10
movzx ecx, cl
movzx edx, ah
mov ebx, dword [r12 + rcx*4 + 0x400]
xor ebx, dword [r12 + rdx*4]
mov edx, eax
movzx eax, al
shr edx, 0x18
xor ebx, dword [r12 + rdx*4 + 0x800]
xor ebx, dword [r12 + rax*4 + 0xc00]
xor ebx, dword [reloc.OLEAUT32.dll_VariantClear]
xor r9d, ebx
xor esi, ebx
mov dword [rsp + 0xc], esi
movzx eax, bl
mov qword [rsp + 0x48], rax
mov dword [rsp + 0x2c], ebx
mov eax, ebx
mov qword [rsp + 0x50], rax
movzx eax, bh
mov qword [rsp + 0x40], rax
xor ebx, dword [rsp + 4]
mov dword [rsp + 4], ebx
xor ebx, ebp
mov eax, ebx
shr eax, 0x10
movzx eax, al
movzx ecx, bh
mov eax, dword [r12 + rax*4 + 0x400]
xor eax, dword [r12 + rcx*4]
mov ecx, ebx
shr ecx, 0x18
xor eax, dword [r12 + rcx*4 + 0x800]
movzx ecx, bl
xor eax, dword [r12 + rcx*4 + 0xc00]
xor eax, dword [reloc.OLEAUT32.dll_SafeArrayGetDim]
movzx ecx, ah
mov r12d, dword [r14 + rcx*4 + 0x400]
movzx ecx, al
xor r12d, dword [r14 + rcx*4]
mov ecx, eax
shr ecx, 0x10
movzx ecx, cl
xor r12d, dword [r14 + rcx*4 + 0x800]
xor r9d, eax
mov dword [rsp + 0x24], r9d
shr eax, 0x18
xor r12d, dword [r14 + rax*4 + 0xc00]
mov rax, r14
mov rcx, qword [rsp + 0x78]
mov r15d, dword [r14 + rcx*4 + 0x400]
mov rcx, qword [rsp + 0x80]
xor r15d, dword [r14 + rcx*4]
mov ecx, dword [rsp + 0x28]
shr ecx, 0x10
movzx ecx, cl
xor r15d, dword [r14 + rcx*4 + 0x800]
mov rcx, qword [rsp + 0xc0]
mov r8d, dword [r14 + rcx*4 + 0x400]
mov rcx, qword [rsp + 0x88]
shr ecx, 0x18
xor r15d, dword [r14 + rcx*4 + 0xc00]
mov ecx, dword [rsp + 0x30]
mov dword [r10 + 0x14], ecx
mov dword [r10 + 0x18], r15d
mov rcx, qword [rsp + 0x90]
xor r15d, dword [r14 + rcx*4]
mov rcx, qword [rsp + 0x70]
xor r15d, dword [r14 + rcx*4 + 0x400]
mov rcx, qword [rsp + 0x18]
xor r8d, dword [r14 + rcx*4]
mov ecx, dword [rsp + 0x3c]
shr ecx, 0x10
movzx ecx, cl
xor r8d, dword [r14 + rcx*4 + 0x800]
mov rcx, qword [rsp + 0x58]
mov esi, dword [r14 + rcx*4 + 0x400]
mov rcx, qword [rsp + 0xb8]
shr ecx, 0x18
xor r8d, dword [r14 + rcx*4 + 0xc00]
mov rcx, qword [rsp + 0xa8]
mov r14d, dword [r14 + rcx*4 + 0x400]
mov rcx, qword [rsp + 0x60]
xor esi, dword [rax + rcx*4]
shr edi, 0x10
movzx ecx, dil
xor esi, dword [rax + rcx*4 + 0x800]
shr r11d, 0x18
xor esi, dword [rax + r11*4 + 0xc00]
mov rcx, qword [rsp + 0xb0]
xor r14d, dword [rax + rcx*4]
mov ecx, dword [rsp + 0x38]
shr ecx, 0x10
movzx ecx, cl
xor r14d, dword [rax + rcx*4 + 0x800]
mov rcx, qword [rsp + 0xa0]
shr ecx, 0x18
xor r14d, dword [rax + rcx*4 + 0xc00]
mov edx, dword [rsp + 8]
movzx ecx, dh
mov ecx, dword [rax + rcx*4 + 0x400]
movzx ebp, dl
xor ecx, dword [rax + rbp*4]
mov ebp, edx
shr ebp, 0x10
movzx ebp, bpl
xor ecx, dword [rax + rbp*4 + 0x800]
mov ebp, edx
shr ebp, 0x18
xor ecx, dword [rax + rbp*4 + 0xc00]
mov ebp, dword [rsp + 0x34]
shr ebp, 0x10
movzx ebp, bpl
xor r15d, dword [rax + rbp*4 + 0x800]
mov rdi, rax
xor edx, r9d
mov dword [rsp + 8], edx
xor ebx, edx
mov r11d, ebx
movzx eax, bl
mov qword [rsp + 0x18], rax
mov r9d, ebx
movzx ebx, bh
mov rax, qword [rsp + 0x98]
shr eax, 0x18
xor r15d, dword [rdi + rax*4 + 0xc00]
mov dword [r10 + 0x1c], r8d
mov dword [r10 + 0x20], esi
mov dword [r10 + 0x24], r14d
mov dword [r10 + 0x28], ecx
mov eax, dword [rsp + 0x14]
mov dword [r10 + 0x2c], eax
mov dword [r10 + 0x30], r15d
mov ebp, r15d
xor ebp, r8d
mov dword [r10 + 0x34], ebp
xor ebp, esi
mov dword [r10 + 0x38], ebp
mov esi, ebp
xor esi, r14d
mov dword [r10 + 0x3c], esi
xor esi, ecx
mov dword [r10 + 0x40], esi
mov ecx, esi
xor ecx, eax
mov dword [r10 + 0x44], ecx
xor r15d, r13d
mov dword [r10 + 0x48], r15d
mov rcx, qword [rsp + 0x48]
xor r15d, dword [rdi + rcx*4]
mov rcx, qword [rsp + 0x40]
xor r15d, dword [rdi + rcx*4 + 0x400]
shr r9d, 0x10
movzx ecx, r9b
lea rdx, [0x1402ef4f0]
mov ecx, dword [rdx + rcx*4 + 0x400]
xor ecx, dword [rdx + rbx*4]
mov r9, rdx
xor r13d, r8d
mov dword [r10 + 0x4c], r13d
mov edx, r13d
xor edx, ebp
mov dword [r10 + 0x50], edx
mov ebx, r13d
xor ebx, r14d
mov dword [r10 + 0x54], ebx
mov edx, ebx
xor edx, esi
mov dword [r10 + 0x58], edx
mov edx, dword [rsp + 0x2c]
shr edx, 0x10
movzx edx, dl
xor r15d, dword [rdi + rdx*4 + 0x800]
mov rdx, qword [rsp + 0x50]
shr edx, 0x18
xor r15d, dword [rdi + rdx*4 + 0xc00]
xor eax, ebx
mov dword [r10 + 0x5c], eax
mov dword [rsp + 0x14], eax
mov dword [r10 + 0x60], r15d
mov edx, r15d
xor edx, r13d
mov dword [r10 + 0x64], edx
xor ebp, r15d
mov dword [r10 + 0x68], ebp
xor ebx, ebp
mov dword [r10 + 0x6c], ebx
mov r8d, ebp
xor r8d, esi
mov dword [r10 + 0x70], r8d
mov edx, r8d
xor edx, eax
mov dword [r10 + 0x74], edx
shr r11d, 0x18
xor ecx, dword [r9 + r11*4 + 0x800]
mov rax, qword [rsp + 0x18]
xor ecx, dword [r9 + rax*4 + 0xc00]
mov rbx, r9
xor r15d, r12d
mov dword [r10 + 0x78], r15d
xor ecx, dword [0x1402ee4d4]
movzx edx, cl
xor r15d, dword [rdi + rdx*4]
movzx edx, ch
xor r15d, dword [rdi + rdx*4 + 0x400]
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x168
mov r13, rdx
mov edi, dword [rcx]
mov dword [rdx], edi
mov r14d, dword [rcx + 4]
mov dword [rdx + 4], r14d
mov r9d, dword [rcx + 8]
mov dword [rdx + 8], r9d
mov r15d, dword [rcx + 0xc]
mov dword [rdx + 0xc], r15d
mov r8d, r15d
mov edx, dword [rcx + 0x10]
movzx ebp, dl
lea r11, [0x1402f24f0]
movzx esi, dh
mov esi, dword [r11 + rsi*4 + 0x400]
xor esi, dword [r11 + rbp*4]
mov rbx, rdx
shr rbx, 0xe
and ebx, 0x3fc
xor esi, dword [rbx + r11 + 0x800]
mov rbx, rdx
shr rbx, 0x18
xor esi, dword [r11 + rbx*4 + 0xc00]
mov dword [r13 + 0x10], esi
mov eax, dword [rcx + 0x14]
movzx ebp, al
movzx esi, ah
mov ebx, dword [r11 + rsi*4 + 0x400]
xor ebx, dword [r11 + rbp*4]
mov rbp, rax
mov r15, rax
shr rbp, 0xe
and ebp, 0x3fc
xor ebx, dword [rbp + r11 + 0x800]
shr rax, 0x18
xor ebx, dword [r11 + rax*4 + 0xc00]
mov dword [r13 + 0x14], ebx
mov ebx, dword [rcx + 0x18]
mov qword [rsp + 0x10], rbx
movzx eax, bl
movzx esi, bh
mov ebp, dword [r11 + rsi*4 + 0x400]
xor ebp, dword [r11 + rax*4]
mov rax, rbx
shr rax, 0xe
and eax, 0x3fc
xor ebp, dword [rax + r11 + 0x800]
mov rax, rbx
shr rax, 0x18
xor ebp, dword [r11 + rax*4 + 0xc00]
mov dword [r13 + 0x18], ebp
mov ebx, dword [rcx + 0x1c]
movzx r10d, bl
movzx ecx, bh
mov esi, dword [r11 + rcx*4 + 0x400]
xor esi, dword [r11 + r10*4]
mov rbp, rbx
mov r12, rbx
shr rbp, 0xe
and ebp, 0x3fc
xor esi, dword [rbp + r11 + 0x800]
lea rbx, [0x1402ef4f0]
xor edi, dword [rbx + rcx*4]
mov rcx, r12
shr rcx, 0x18
xor esi, dword [r11 + rcx*4 + 0xc00]
mov dword [rsp + 0x60], esi
xor edi, dword [rbp + rbx + 0x400]
xor edi, dword [rbx + rcx*4 + 0x800]
xor edi, dword [rbx + r10*4 + 0xc00]
xor edi, dword [0x1402ee4c0]
mov ecx, edi
xor ecx, r14d
movzx eax, cl
mov qword [rsp + 0x18], rax
movzx eax, ch
mov qword [rsp + 0x158], rax
mov dword [rsp + 0x28], ecx
mov eax, ecx
mov qword [rsp + 0x20], rax
xor ecx, r9d
mov dword [rsp + 8], ecx
mov esi, r8d
mov dword [rsp], r8d
xor ecx, r8d
movzx ebp, cl
mov r8d, dword [rbx + rbp*4]
xor r8d, edx
movzx edx, ch
mov eax, dword [r11 + rdx*4 + 0x400]
xor r8d, dword [rbx + rdx*4 + 0x400]
xor eax, dword [r11 + rbp*4]
mov edx, ecx
shr edx, 0x10
movzx edx, dl
xor eax, dword [r11 + rdx*4 + 0x800]
xor r8d, dword [rbx + rdx*4 + 0x800]
shr ecx, 0x18
xor eax, dword [r11 + rcx*4 + 0xc00]
mov dword [rsp + 0xc], eax
xor r8d, dword [rbx + rcx*4 + 0xc00]
mov ecx, r8d
xor ecx, r15d
movzx eax, cl
mov qword [rsp + 0x160], rax
mov dword [rsp + 0x64], ecx
mov eax, ecx
mov qword [rsp + 0x150], rax
movzx eax, ch
mov qword [rsp + 0x148], rax
xor ecx, dword [rsp + 0x10]
mov eax, ecx
mov dword [rsp + 4], ecx
xor eax, r12d
mov dword [rsp + 0x10], eax
mov ecx, eax
shr ecx, 0x10
movzx ecx, cl
mov qword [rsp + 0x140], rcx
movzx edx, ah
mov qword [rsp + 0x130], rdx
mov r10, rbx
mov ecx, dword [rbx + rcx*4 + 0x400]
xor ecx, dword [rbx + rdx*4]
mov edx, eax
shr edx, 0x18
mov qword [rsp + 0x138], rdx
xor ecx, dword [rbx + rdx*4 + 0x800]
movzx edx, al
mov qword [rsp + 0x128], rdx
xor ecx, dword [rbx + rdx*4 + 0xc00]
xor ecx, dword [reloc.OLEAUT32.dll_SysReAllocString]
mov eax, edi
movzx edx, al
mov qword [rsp + 0x118], rdx
mov dword [rsp + 0x58], edi
mov edx, edi
mov qword [rsp + 0x110], rdx
movzx edx, ah
mov qword [rsp + 0x100], rdx
xor eax, ecx
mov r9d, eax
movzx eax, cl
mov qword [rsp + 0x108], rax
mov dword [rsp + 0x5c], ecx
mov eax, ecx
mov qword [rsp + 0x120], rax
movzx eax, ch
mov qword [rsp + 0xf8], rax
xor ecx, r14d
mov eax, ecx
mov edi, ecx
xor eax, esi
movzx ebp, al
movzx edx, ah
mov edx, dword [rbx + rdx*4 + 0x400]
xor edx, dword [rbx + rbp*4]
mov ebp, eax
shr ebp, 0x10
movzx ebp, bpl
xor edx, dword [rbx + rbp*4 + 0x800]
mov ecx, eax
shr ecx, 0x18
xor edx, dword [rbx + rcx*4 + 0xc00]
xor r15d, r12d
xor r15d, edx
mov rbx, r15
mov ecx, ebx
shr ecx, 0x10
movzx ecx, cl
movzx esi, bh
mov rbp, r15
mov ebx, dword [r10 + rcx*4 + 0x400]
xor ebx, dword [r10 + rsi*4]
mov ecx, ebp
shr ecx, 0x18
xor ebx, dword [r10 + rcx*4 + 0x800]
movzx ecx, bpl
mov qword [rsp + 0xf0], r15
xor ebx, dword [r10 + rcx*4 + 0xc00]
xor ebx, dword [reloc.OLEAUT32.dll_SysReAllocStringLen]
movzx ecx, bh
mov esi, dword [r11 + rcx*4 + 0x400]
movzx ecx, bl
xor esi, dword [r11 + rcx*4]
mov ecx, ebx
shr ecx, 0x10
movzx ecx, cl
xor esi, dword [r11 + rcx*4 + 0x800]
xor r9d, ebx
shr ebx, 0x18
xor esi, dword [r11 + rbx*4 + 0xc00]
mov dword [rsp + 0x54], esi
mov ecx, dword [rsp + 8]
movzx esi, cl
mov qword [rsp + 0xe8], rsi
mov dword [rsp + 0x50], ecx
mov esi, ecx
mov qword [rsp + 0xe0], rsi
movzx esi, ch
mov qword [rsp + 0xd8], rsi
mov r14d, ecx
xor r14d, r9d
xor eax, r14d
movzx ecx, al
movzx esi, ah
mov esi, dword [r10 + rsi*4 + 0x400]
xor esi, dword [r10 + rcx*4]
mov ecx, eax
shr ecx, 0x10
movzx ecx, cl
xor esi, dword [r10 + rcx*4 + 0x800]
shr eax, 0x18
xor esi, dword [r10 + rax*4 + 0xc00]
mov dword [rsp + 0x44], esi
mov ebx, r8d
movzx eax, bl
mov qword [rsp + 0xd0], rax
mov dword [rsp + 0x48], r8d
mov eax, r8d
mov qword [rsp + 0xc8], rax
movzx eax, bh
mov qword [rsp + 0xc0], rax
xor ebx, edx
mov r8d, dword [rsp + 4]
xor ebx, r8d
xor ebx, ebp
xor ebx, esi
mov eax, ebx
shr eax, 0x10
movzx eax, al
movzx ecx, bh
mov eax, dword [r10 + rax*4 + 0x400]
xor eax, dword [r10 + rcx*4]
mov ebp, ebx
movzx ecx, bl
shr ebp, 0x18
xor eax, dword [r10 + rbp*4 + 0x800]
mov ebx, eax
xor ebx, dword [r10 + rcx*4 + 0xc00]
xor ebx, dword [reloc.OLEAUT32.dll_VariantClear]
xor r9d, ebx
xor edi, ebx
mov dword [rsp + 0x4c], edi
movzx ecx, bl
mov qword [rsp + 0xa8], rcx
mov dword [rsp + 0x40], ebx
mov ecx, ebx
mov qword [rsp + 0xb8], rcx
movzx ecx, bh
mov qword [rsp + 0xb0], rcx
xor ebx, dword [rsp]
movzx ecx, bl
movzx eax, bh
mov eax, dword [r10 + rax*4 + 0x400]
xor eax, dword [r10 + rcx*4]
mov ecx, ebx
shr ecx, 0x10
movzx ecx, cl
xor eax, dword [r10 + rcx*4 + 0x800]
mov ecx, ebx
mov dword [rsp], ebx
shr ecx, 0x18
xor eax, dword [r10 + rcx*4 + 0xc00]
movzx ecx, al
mov qword [rsp + 0xa0], rcx
mov dword [rsp + 0x3c], eax
mov ecx, eax
mov qword [rsp + 0x98], rcx
movzx ecx, ah
mov qword [rsp + 0x90], rcx
xor eax, r12d
mov ecx, eax
movzx ebp, al
movzx esi, ah
shr eax, 0x10
movzx eax, al
mov eax, dword [r10 + rax*4 + 0x400]
xor eax, dword [r10 + rsi*4]
shr ecx, 0x18
xor eax, dword [r10 + rcx*4 + 0x800]
mov ecx, r8d
movzx edi, cl
mov qword [rsp + 0x80], rdi
mov edi, r8d
mov qword [rsp + 0x68], rdi
movzx esi, ch
mov qword [rsp + 0x78], rsi
xor eax, dword [r10 + rbp*4 + 0xc00]
movzx esi, dl
mov ecx, edx
mov qword [rsp + 0x88], rcx
movzx ecx, dh
mov qword [rsp + 0x70], rcx
mov dword [rsp + 0x30], edx
xor eax, dword [reloc.OLEAUT32.dll_SafeArrayGetDim]
movzx ecx, ah
mov edx, dword [r11 + rcx*4 + 0x400]
movzx ecx, al
xor edx, dword [r11 + rcx*4]
mov ecx, eax
shr ecx, 0x10
movzx ecx, cl
xor edx, dword [r11 + rcx*4 + 0x800]
xor r9d, eax
mov dword [rsp + 4], r9d
shr eax, 0x18
xor edx, dword [r11 + rax*4 + 0xc00]
mov dword [rsp + 0x38], edx
xor r14d, r9d
mov dword [rsp + 8], r14d
mov ecx, r14d
xor ecx, ebx
movzx edx, cl
movzx eax, ch
mov eax, dword [r10 + rax*4 + 0x400]
xor eax, dword [r10 + rdx*4]
mov edx, ecx
shr edx, 0x10
movzx edx, dl
xor eax, dword [r10 + rdx*4 + 0x800]
shr ecx, 0x18
xor eax, dword [r10 + rcx*4 + 0xc00]
movzx ecx, ah
mov edx, dword [r11 + rcx*4 + 0x400]
movzx ecx, al
xor edx, dword [r11 + rcx*4]
mov ecx, eax
shr ecx, 0x10
movzx ecx, cl
xor edx, dword [r11 + rcx*4 + 0x800]
xor dword [rsp + 0x10], eax
shr eax, 0x18
mov r14, r11
xor edx, dword [r11 + rax*4 + 0xc00]
mov dword [rsp + 0x34], edx
mov rax, qword [rsp + 0x100]
mov r9d, dword [r11 + rax*4 + 0x400]
mov rax, qword [rsp + 0x158]
mov r8d, dword [r11 + rax*4 + 0x400]
mov eax, dword [rsp + 0x60]
mov dword [r13 + 0x1c], eax
mov rax, qword [rsp + 0x118]
xor r9d, dword [r11 + rax*4]
mov eax, dword [rsp + 0x58]
shr eax, 0x10
movzx eax, al
xor r9d, dword [r11 + rax*4 + 0x800]
mov rax, qword [rsp + 0x110]
shr eax, 0x18
xor r9d, dword [r11 + rax*4 + 0xc00]
mov dword [r13 + 0x20], r9d
mov rax, qword [rsp + 0x108]
xor r9d, dword [r11 + rax*4]
mov rax, qword [rsp + 0xf8]
xor r9d, dword [r11 + rax*4 + 0x400]
mov rax, qword [rsp + 0xd8]
mov eax, dword [r11 + rax*4 + 0x400]
mov rcx, qword [rsp + 0x18]
xor r8d, dword [r11 + rcx*4]
mov r15d, dword [rsp + 0x28]
shr r15d, 0x10
movzx edx, r15b
xor r8d, dword [r11 + rdx*4 + 0x800]
mov rcx, qword [rsp + 0x20]
shr ecx, 0x18
xor r8d, dword [r11 + rcx*4 + 0xc00]
mov rcx, qword [rsp + 0xe8]
xor eax, dword [r11 + rcx*4]
mov ecx, dword [rsp + 0x50]
shr ecx, 0x10
movzx edx, cl
xor eax, dword [r11 + rdx*4 + 0x800]
mov rcx, qword [rsp + 0xc0]
mov r15d, dword [r11 + rcx*4 + 0x400]
mov rcx, qword [rsp + 0xe0]
shr ecx, 0x18
xor eax, dword [r11 + rcx*4 + 0xc00]
mov rcx, qword [rsp + 0x148]
mov edx, dword [r11 + rcx*4 + 0x400]
mov rcx, qword [rsp + 0xd0]
xor r15d, dword [r11 + rcx*4]
mov ecx, dword [rsp + 0x48]
shr ecx, 0x10
movzx ebp, cl
xor r15d, dword [r11 + rbp*4 + 0x800]
mov rcx, qword [rsp + 0xc8]
shr ecx, 0x18
xor r15d, dword [r11 + rcx*4 + 0xc00]
mov dword [r13 + 0x24], r8d
mov dword [r13 + 0x28], eax
mov ecx, dword [rsp + 0xc]
mov dword [r13 + 0x2c], ecx
mov dword [r13 + 0x30], r15d
xor r15d, dword [r11 + rsi*4]
mov rbp, qword [rsp + 0x70]
xor r15d, dword [r11 + rbp*4 + 0x400]
mov rsi, qword [rsp + 0x160]
xor edx, dword [r11 + rsi*4]
mov esi, dword [rsp + 0x64]
shr esi, 0x10
movzx ebp, sil
xor edx, dword [r11 + rbp*4 + 0x800]
mov rbp, qword [rsp + 0x78]
mov ebp, dword [r11 + rbp*4 + 0x400]
mov rsi, qword [rsp + 0x150]
shr esi, 0x18
xor edx, dword [r11 + rsi*4 + 0xc00]
mov rsi, qword [rsp + 0x130]
mov esi, dword [r11 + rsi*4 + 0x400]
mov rbx, qword [rsp + 0x80]
xor ebp, dword [r11 + rbx*4]
shr edi, 0x10
movzx edi, dil
xor ebp, dword [r11 + rdi*4 + 0x800]
mov rbx, qword [rsp + 0x68]
shr ebx, 0x18
xor ebp, dword [r11 + rbx*4 + 0xc00]
mov rbx, qword [rsp + 0x128]
xor esi, dword [r11 + rbx*4]
mov rbx, qword [rsp + 0x140]
xor esi, dword [r11 + rbx*4 + 0x800]
mov rbx, qword [rsp + 0x138]
xor esi, dword [r11 + rbx*4 + 0xc00]
mov ebx, dword [rsp + 0x5c]
shr ebx, 0x10
movzx edi, bl
xor r9d, dword [r11 + rdi*4 + 0x800]
mov rbx, qword [rsp + 0x120]
shr ebx, 0x18
xor r9d, dword [r11 + rbx*4 + 0xc00]
mov dword [r13 + 0x34], edx
mov dword [r13 + 0x38], ebp
mov dword [rsp + 0x18], esi
mov dword [r13 + 0x3c], esi
mov dword [r13 + 0x40], r9d
mov r11d, r9d
xor r11d, r8d
mov dword [r13 + 0x44], r11d
xor r11d, eax
mov eax, dword [rsp + 0x30]
shr eax, 0x10
movzx eax, al
xor r15d, dword [r14 + rax*4 + 0x800]
mov dword [r13 + 0x48], r11d
mov eax, r11d
xor eax, ecx
mov dword [r13 + 0x4c], eax
mov rax, qword [rsp + 0x88]
shr eax, 0x18
xor r15d, dword [r14 + rax*4 + 0xc00]
mov dword [r13 + 0x50], r15d
mov r10d, r15d
xor r10d, edx
mov dword [r13 + 0x54], r10d
xor r10d, ebp
mov dword [r13 + 0x58], r10d
mov eax, r10d
xor eax, esi
mov dword [r13 + 0x5c], eax
mov ebp, dword [rsp + 0x54]
xor r9d, ebp
mov dword [r13 + 0x60], r9d
mov rax, qword [rsp + 0xa8]
xor r9d, dword [r14 + rax*4]
mov eax, dword [rsp + 0x44]
movzx ecx, al
mov qword [rsp + 0x20], rcx
mov esi, eax
mov ecx, eax
movzx eax, ah
mov r12, rax
mov rax, qword [rsp + 0xb0]
xor r9d, dword [r14 + rax*4 + 0x400]
mov eax, dword [rsp + 0x10]
mov ebx, eax
movzx edi, al
mov qword [rsp + 0x28], rdi
mov edi, eax
movzx eax, ah
mov qword [rsp + 0x10], rax
mov r12d, dword [r14 + r12*4 + 0x400]
mov eax, ebp
xor eax, r8d
mov dword [r13 + 0x64], eax
mov ebp, eax
mov r8d, eax
xor ebp, r11d
mov dword [r13 + 0x68], ebp
mov rax, qword [rsp + 0x20]
xor r12d, dword [r14 + rax*4]
shr ecx, 0x10
movzx eax, cl
xor r12d, dword [r14 + rax*4 + 0x800]
shr esi, 0x18
xor r12d, dword [r14 + rsi*4 + 0xc00]
xor r15d, r12d
xor r12d, edx
mov eax, r8d
xor eax, dword [rsp + 0xc]
mov dword [r13 + 0x6c], eax
mov dword [r13 + 0x70], r15d
mov dword [r13 + 0x74], r12d
mov edx, r12d
xor edx, r10d
mov dword [r13 + 0x78], edx
mov ecx, dword [rsp + 0x40]
shr ecx, 0x10
movzx edx, cl
xor r9d, dword [r14 + rdx*4 + 0x800]
mov rcx, qword [rsp + 0xb8]
shr ecx, 0x18
xor r9d, dword [r14 + rcx*4 + 0xc00]
mov rcx, qword [rsp + 0xa0]
xor r15d, dword [r14 + rcx*4]
mov edx, r12d
xor edx, dword [rsp + 0x18]
mov dword [r13 + 0x7c], edx
mov dword [r13 + 0x80], r9d
mov ecx, r9d
xor ecx, r8d
mov dword [r13 + 0x84], ecx
xor r11d, r9d
mov dword [r13 + 0x88], r11d
xor eax, r11d
mov dword [r13 + 0x8c], eax
mov rax, qword [rsp + 0x90]
xor r15d, dword [r14 + rax*4 + 0x400]
mov eax, dword [rsp + 0x3c]
shr eax, 0x10
movzx eax, al
xor r15d, dword [r14 + rax*4 + 0x800]
mov rax, qword [rsp + 0x98]
shr eax, 0x18
xor r15d, dword [r14 + rax*4 + 0xc00]
mov dword [r13 + 0x90], r15d
mov eax, r15d
xor eax, r12d
mov dword [r13 + 0x94], eax
xor r10d, r15d
mov dword [r13 + 0x98], r10d
xor edx, r10d
mov dword [r13 + 0x9c], edx
mov esi, dword [rsp + 0x38]
xor r9d, esi
mov dword [r13 + 0xa0], r9d
mov ecx, r8d
xor ecx, esi
mov dword [r13 + 0xa4], ecx
mov eax, ecx
mov r8d, ecx
xor eax, r11d
mov dword [r13 + 0xa8], eax
shr edi, 0x10
movzx eax, dil
lea rbp, [0x1402ef4f0]
mov edx, dword [rbp + rax*4 + 0x400]
mov rax, qword [rsp + 0x10]
xor edx, dword [rbp + rax*4]
xor esi, dword [rsp + 0xc]
shr ebx, 0x18
xor edx, dword [rbp + rbx*4 + 0x800]
mov rax, qword [rsp + 0x28]
xor edx, dword [rbp + rax*4 + 0xc00]
xor edx, dword [0x1402ee4d4]
mov edi, dword [rsp + 0x4c]
xor edi, edx
mov ebx, dword [rsp]
xor ebx, edi
movzx ecx, bl
mov dword [rsp], ebx
movzx eax, bh
mov eax, dword [rbp + rax*4 + 0x400]
xor eax, dword [rbp + rcx*4]
mov ecx, ebx
shr ecx, 0x10
movzx ecx, cl
xor eax, dword [rbp + rcx*4 + 0x800]
mov ecx, ebx
shr ecx, 0x18
xor eax, dword [rbp + rcx*4 + 0xc00]
mov dword [r13 + 0xac], esi
mov ebx, dword [rsp + 0x34]
xor r15d, ebx
mov dword [r13 + 0xb0], r15d
movzx ecx, al
xor r15d, dword [r14 + rcx*4]
movzx ecx, ah
xor r15d, dword [r14 + rcx*4 + 0x400]
mov ecx, eax
shr ecx, 0x10
movzx ecx, cl
xor r15d, dword [r14 + rcx*4 + 0x800]
mov rcx, qword [rsp + 0xf0]
xor ecx, eax
shr eax, 0x18
xor r15d, dword [r14 + rax*4 + 0xc00]
movzx eax, dl
xor r9d, dword [r14 + rax*4]
movzx eax, dh
xor r9d, dword [r14 + rax*4 + 0x400]
mov eax, edx
shr eax, 0x10
movzx eax, al
xor r9d, dword [r14 + rax*4 + 0x800]
mov eax, edx
shr eax, 0x18
xor r9d, dword [r14 + rax*4 + 0xc00]
xor edx, dword [rsp + 4]
movzx eax, ch
xor edx, dword [rbp + rax*4]
mov eax, ecx
shr eax, 0x10
movzx eax, al
xor edx, dword [rbp + rax*4 + 0x400]
mov eax, ecx
movzx ecx, cl
shr eax, 0x18
xor edx, dword [rbp + rax*4 + 0x800]
xor edx, dword [rbp + rcx*4 + 0xc00]
mov ecx, ebx
xor r12d, ebx
mov dword [r13 + 0xb4], r12d
mov eax, r12d
xor eax, r10d
mov dword [r13 + 0xb8], eax
xor ecx, dword [rsp + 0x18]
mov dword [r13 + 0xbc], ecx
mov dword [r13 + 0xc0], r9d
xor r8d, r9d
mov dword [r13 + 0xc4], r8d
xor r9d, r11d
mov dword [r13 + 0xc8], r9d
xor r9d, esi
mov dword [r13 + 0xcc], r9d
mov dword [r13 + 0xd0], r15d
xor r12d, r15d
mov dword [r13 + 0xd4], r12d
xor r15d, r10d
mov dword [r13 + 0xd8], r15d
xor r15d, ecx
mov dword [r13 + 0xdc], r15d
xor edx, dword [0x1402ee4d8]
mov dword [r13 + 0xe0], edx
xor edi, edx
mov dword [r13 + 0xe4], edi
xor edx, dword [rsp + 8]
mov dword [r13 + 0xe8], edx
xor edx, dword [rsp]
mov dword [r13 + 0xec], edx
mov dword [r13 + 0xf0], SafeArrayGetLBound
add rsp, 0x168
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
cmp rdx, 0x7f
jg 0x1400312ba
cmp rdx, 0x10
je 0x1400312d5
cmp rdx, 0x18
je 0x1400312e5
cmp rdx, 0x20
je 0x1400312dd
jmp 0x1400312ed
cmp rdx, 0x100
je 0x1400312dd
cmp rdx, 0xc0
je 0x1400312e5
cmp rdx, 0x80
jne 0x1400312ed
mov rdx, r8
jmp 0x14002f840
mov rdx, r8
jmp 0x1400306a0
mov rdx, r8
jmp 0x14002feb0
ret