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

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rsi
mov qword [rsp + 0x20], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0xb0]
sub rsp, 0x1b0
mov rax, qword [0x14007c040]
xor rax, rsp
mov qword [rbp + 0xa8], rax
mov r12, rcx
xorps xmm0, xmm0
movups xmmword [rbp - 0x58], xmm0
movdqa xmm1, xmmword [0x140071580]
movdqu xmmword [rbp - 0x48], xmm1
mov rax, qword [str.iSpells]
mov dword [rbp - 0x58], eax
movzx eax, word [0x140070824]
mov word [rbp - 0x54], ax
movzx eax, byte [0x140070826]
mov byte [rbp - 0x52], al
mov byte [rbp - 0x51], 0
lea rdx, [rbp - 0x58]
call fcn.140017fc0
mov rdi, rax
cmp byte [rax + 0x5c], 0
je 0x1400269eb
mov bl, 1
jmp 0x140027409
xor ecx, ecx
mov qword [rax + 0x10], rcx
mov dword [rax], ecx
mov dword [rax + 4], 2
mov word [rax + 0x60], 0x100
mov byte [rax + 0x5d], 1
mov byte [rax + 0x5f], 1
xorps xmm0, xmm0
movups xmmword [rsp + 0x48], xmm0
mov qword [rsp + 0x58], rcx
mov qword [rsp + 0x60], rcx
xor r8d, r8d
lea rdx, [0x140069f98]
lea rcx, [rsp + 0x48]
call fcn.1400026f0
lea rcx, [r12 + 0x60]
lea rax, [rsp + 0x48]
mov qword [rsp + 0x38], rax
call fcn.1400337f0
xorps xmm0, xmm0
mov ecx, 0xa0
test al, al
je 0x140026d0f
movups xmmword [rbp - 0x18], xmm0
call fcn.140036524
mov rbx, rax
mov qword [rbp - 0x18], rax
mov qword [rbp - 8], 0x9b
mov r13d, 0x9f
mov qword [rbp], r13
movaps xmm0, xmmword [str.83_3D_F9_01_00_00_01_75_0D_83_79_1C_01_7E_07_C7_41_1C_01_00_00_00_83_3D_E7_01_00_00_01_75_0D_83_79_24_01_7E_07_C7_41_24_01_00_00_00_80_79_30_00_48_8B_41_08]
movups xmmword [rax], xmm0
movaps xmm1, xmmword [0x140070840]
movups xmmword [rax + 0x10], xmm1
movaps xmm0, xmmword [0x140070850]
movups xmmword [rax + 0x20], xmm0
movaps xmm1, xmmword [0x140070860]
movups xmmword [rax + 0x30], xmm1
movaps xmm0, xmmword [0x140070870]
movups xmmword [rax + 0x40], xmm0
movaps xmm1, xmmword [0x140070880]
movups xmmword [rax + 0x50], xmm1
movaps xmm0, xmmword [0x140070890]
movups xmmword [rax + 0x60], xmm0
movaps xmm1, xmmword [0x1400708a0]
movups xmmword [rax + 0x70], xmm1
movaps xmm0, xmmword [0x1400708b0]
movups xmmword [rax + 0x80], xmm0
movsd xmm0, qword [0x1400708c0]
movsd qword [rax + 0x90], xmm0
movzx eax, word [0x1400708c8]
mov word [rbx + 0x98], ax
movzx eax, byte [0x1400708ca]
mov byte [rbx + 0x9a], al
mov byte [rbx + 0x9b], 0
xorps xmm0, xmm0
movups xmmword [rbp + 8], xmm0
lea ecx, [r13 - 0x7f]
call fcn.140036524
mov rsi, rax
mov qword [rbp + 8], rax
mov qword [rbp + 0x18], reloc.OLEAUT32.dll_SafeArrayUnaccessData
mov qword [rbp + 0x20], 0x1f
movups xmm0, xmmword [str.80_79_30_00_48_8B_41_08]
movups xmmword [rax], xmm0
mov eax, dword [0x1400708e0]
mov dword [rsi + 0x10], eax
movzx eax, word [0x1400708e4]
mov word [rsi + 0x14], ax
movzx eax, byte [0x1400708e6]
mov byte [rsi + 0x16], al
mov byte [rsi + 0x17], 0
xorps xmm0, xmm0
movups xmmword [rbp - 0x38], xmm0
lea ecx, [r13 - 0x6f]
call fcn.140036524
mov r14, rax
mov qword [rbp - 0x38], rax
mov qword [rbp - 0x28], 0x2c
mov r15d, 0x2f
mov qword [rbp - 0x20], r15
movups xmm0, xmmword [str.80_79_30_00_48_8B_41_08_74__F3_0F_10___C3]
movups xmmword [rax], xmm0
movups xmm1, xmmword [0x1400708f8]
movups xmmword [rax + 0x10], xmm1
movsd xmm0, qword [0x140070908]
movsd qword [rax + 0x20], xmm0
mov eax, dword [0x140070910]
mov dword [r14 + 0x28], eax
mov byte [r14 + 0x2c], 0
xor eax, eax
mov dword [rdi], eax
cmp dword [rdi + 4], 2
je 0x140026bc5
mov dword [rdi + 4], eax
lea rcx, [rdi + 0x68]
lea rax, [rbp - 0x38]
cmp rcx, rax
je 0x140026be8
mov r8d, 0x2c
mov rdx, r14
call fcn.140001f30
mov r15, qword [rbp - 0x20]
mov r14, qword [rbp - 0x38]
lea rcx, [rdi + 0x88]
lea rax, [rbp + 8]
cmp rcx, rax
je 0x140026c0a
mov r8d, reloc.OLEAUT32.dll_SafeArrayUnaccessData
mov rdx, rsi
call fcn.140001f30
mov rsi, qword [rbp + 8]
lea rcx, [rdi + 0xa8]
lea rax, [rbp - 0x18]
cmp rcx, rax
je 0x140026c30
mov r8d, 0x9b
mov rdx, rbx
call fcn.140001f30
mov r13, qword [rbp]
mov rbx, qword [rbp - 0x18]
cmp r15, 0xf
jbe 0x140026c68
lea rdx, [r15 + 1]
mov rax, r14
cmp rdx, 0x1000
jb 0x140026c5f
add rdx, 0x27
mov r14, qword [r14 - 8]
sub rax, r14
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140027479
mov rcx, r14
call fcn.1400364f0
nop
mov rdx, qword [rbp + 0x20]
cmp rdx, 0xf
jbe 0x140026ca3
inc rdx
mov rax, rsi
cmp rdx, 0x1000
jb 0x140026c9a
add rdx, 0x27
mov rsi, qword [rsi - 8]
sub rax, rsi
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14002747f
mov rcx, rsi
call fcn.1400364f0
nop
cmp r13, 0xf
jbe 0x140026cda
lea rdx, [r13 + 1]
mov rax, rbx
cmp rdx, 0x1000
jb 0x140026cd2
add rdx, 0x27
mov rbx, qword [rbx - 8]
sub rax, rbx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14002749d
mov rcx, rbx
call fcn.1400364f0
lea rbx, [r12 + 0xf8]
xor r15d, r15d
mov qword [rsp + 0x30], r15
mov qword [rsp + 0x28], r15
xor r9d, r9d
mov r8b, 1
mov rdx, rdi
mov rcx, rbx
call fcn.140031cf0
test al, al
jne 0x140027265
xor bl, bl
jmp 0x140027409
movups xmmword [rbp + 0x48], xmm0
call fcn.140036524
mov rbx, rax
mov qword [rbp + 0x48], rax
mov qword [rbp + 0x58], 0x92
mov r13d, 0x9f
mov qword [rbp + 0x60], r13
movaps xmm0, xmmword [str.83_3D_F9_01_00_00_01_75_0D_83_79_24_01_7E_07_C7_41_24_01_00_00_00_83_3D_E7_01_00_00_01_75_0D_83_79_28_01_7E_07_C7_41_28_01_00_00_00_66_0F_6E_49_24]
movups xmmword [rax], xmm0
movaps xmm1, xmmword [0x140070930]
movups xmmword [rax + 0x10], xmm1
movaps xmm0, xmmword [0x140070940]
movups xmmword [rax + 0x20], xmm0
movaps xmm1, xmmword [0x140070950]
movups xmmword [rax + 0x30], xmm1
movaps xmm0, xmmword [0x140070960]
movups xmmword [rax + 0x40], xmm0
movaps xmm1, xmmword [0x140070970]
movups xmmword [rax + 0x50], xmm1
movaps xmm0, xmmword [0x140070980]
movups xmmword [rax + 0x60], xmm0
movaps xmm1, xmmword [0x140070990]
movups xmmword [rax + 0x70], xmm1
movaps xmm0, xmmword [0x1400709a0]
movups xmmword [rax + 0x80], xmm0
movzx eax, word [0x1400709b0]
mov word [rbx + 0x90], ax
mov byte [rbx + 0x92], 0
xorps xmm0, xmm0
movups xmmword [rsp + 0x68], xmm0
mov qword [rsp + 0x78], SafeArrayDestroy
mov eax, reloc.OLEAUT32.dll_SafeArrayDestroy
mov qword [rsp + 0x40], rax
mov r15d, eax
mov qword [rbp - 0x80], rax
movsd xmm0, qword [str.66_0F_6E_49_24]
movsd qword [rsp + 0x68], xmm0
mov eax, dword [0x1400709c0]
mov dword [rsp + 0x70], eax
movzx eax, word [0x1400709c4]
mov word [rsp + 0x74], ax
mov byte [rsp + 0x76], 0
xorps xmm0, xmm0
movups xmmword [rbp + 0x28], xmm0
lea ecx, [r13 - 0x4f]
call fcn.140036524
mov rsi, rax
mov qword [rbp + 0x28], rax
mov qword [rbp + 0x38], 0x42
mov r14d, 0x4f
mov qword [rbp + 0x40], r14
movaps xmm0, xmmword [str.66_0F_6E_49_24_0F_5B_C9_F3_48_0F_2A_C0_F3_0F_59______F3_0F_59]
movups xmmword [rax], xmm0
movaps xmm1, xmmword [0x1400709e0]
movups xmmword [rax + 0x10], xmm1
movaps xmm0, xmmword [0x1400709f0]
movups xmmword [rax + 0x20], xmm0
movaps xmm1, xmmword [0x140070a00]
movups xmmword [rax + 0x30], xmm1
movzx eax, word [0x140070a10]
mov word [rsi + 0x40], ax
mov byte [rsi + 0x42], 0
xor eax, eax
mov dword [rdi], eax
cmp dword [rdi + 4], 2
je 0x140026e66
mov dword [rdi + 4], eax
lea rax, [rdi + 0x68]
lea rcx, [rbp + 0x28]
cmp rax, rcx
je 0x140026e8c
mov r8d, 0x42
mov rdx, rsi
mov rcx, rax
call fcn.140001f30
mov r14, qword [rbp + 0x40]
mov rsi, qword [rbp + 0x28]
lea rax, [rdi + 0x88]
lea rcx, [rsp + 0x68]
cmp rax, rcx
je 0x140026eb4
mov r8d, SafeArrayDestroy
lea rdx, [rsp + 0x68]
mov rcx, rax
call fcn.140001f30
mov r15, qword [rbp - 0x80]
lea rax, [rdi + 0xa8]
lea rcx, [rbp + 0x48]
cmp rax, rcx
je 0x140026ed9
mov r8d, 0x92
mov rdx, rbx
mov rcx, rax
call fcn.140001f30
mov rbx, qword [rbp + 0x48]
cmp r14, 0xf
jbe 0x140026f11
lea rdx, [r14 + 1]
mov rax, rsi
cmp rdx, 0x1000
jb 0x140026f08
add rdx, 0x27
mov rsi, qword [rsi - 8]
sub rax, rsi
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140027485
mov rcx, rsi
call fcn.1400364f0
nop
cmp r15, 0xf
jbe 0x140026f4b
lea rdx, [r15 + 1]
mov rcx, qword [rsp + 0x68]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140026f45
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14002748b
call fcn.1400364f0
nop
mov rdx, qword [rbp + 0x60]
cmp rdx, 0xf
jbe 0x140026f85
inc rdx
mov rax, rbx
cmp rdx, 0x1000
jb 0x140026f7d
add rdx, 0x27
mov rbx, qword [rbx - 8]
sub rax, rbx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14002749d
mov rcx, rbx
call fcn.1400364f0
lea rbx, [r12 + 0xf8]
xor r15d, r15d
mov qword [rsp + 0x30], r15
mov qword [rsp + 0x28], r15
xor r9d, r9d
xor r8d, r8d
mov rdx, rdi
lea rcx, [r12 + 0xf8]
call fcn.140031cf0
test al, al
jne 0x140027265
xorps xmm0, xmm0
movups xmmword [rbp + 0x88], xmm0
mov ecx, 0xa0
call fcn.140036524
mov rbx, rax
mov qword [rbp + 0x88], rax
mov qword [rbp + 0x98], 0x92
mov qword [rbp + 0xa0], r13
movaps xmm0, xmmword [str.83_3D_F9_01_00_00_01_75_0D_83_79_24_01_7E_07_C7_41_24_01_00_00_00_83_3D_E7_01_00_00_01_75_0D_83_79_28_01_7E_07_C7_41_28_01_00_00_00_66_0F_6E_49_24]
movups xmmword [rax], xmm0
movaps xmm1, xmmword [0x140070930]
movups xmmword [rax + 0x10], xmm1
movaps xmm0, xmmword [0x140070940]
movups xmmword [rax + 0x20], xmm0
movaps xmm1, xmmword [0x140070950]
movups xmmword [rax + 0x30], xmm1
movaps xmm0, xmmword [0x140070960]
movups xmmword [rax + 0x40], xmm0
movaps xmm1, xmmword [0x140070970]
movups xmmword [rax + 0x50], xmm1
movaps xmm0, xmmword [0x140070980]
movups xmmword [rax + 0x60], xmm0
movaps xmm1, xmmword [0x140070990]
movups xmmword [rax + 0x70], xmm1
movaps xmm0, xmmword [0x1400709a0]
movups xmmword [rax + 0x80], xmm0
movzx eax, word [0x1400709b0]
mov word [rbx + 0x90], ax
mov byte [rbx + 0x92], r15b
xorps xmm0, xmm0
movups xmmword [rbp - 0x78], xmm0
mov qword [rbp - 0x68], SafeArrayDestroy
mov eax, reloc.OLEAUT32.dll_SafeArrayDestroy
mov qword [rbp - 0x60], rax
movsd xmm0, qword [str.66_0F_6E_49_24]
movsd qword [rbp - 0x78], xmm0
mov eax, dword [0x1400709c0]
mov dword [rbp - 0x70], eax
movzx eax, word [0x1400709c4]
mov word [rbp - 0x6c], ax
mov byte [rbp - 0x6a], r15b
xorps xmm0, xmm0
movups xmmword [rbp + 0x68], xmm0
lea ecx, [r15 + 0x30]
call fcn.140036524
mov rsi, rax
mov qword [rbp + 0x68], rax
mov qword [rbp + 0x78], 0x26
mov r15d, 0x2f
mov qword [rbp + 0x80], r15
movups xmm0, xmmword [str.66_0F_6E_49_24_0F_57_C0_F3_48_0F_2A_C0]
movups xmmword [rax], xmm0
movups xmm1, xmmword [0x140070a28]
movups xmmword [rax + 0x10], xmm1
mov eax, dword [0x140070a38]
mov dword [rsi + 0x20], eax
movzx eax, word [0x140070a3c]
mov word [rsi + 0x24], ax
mov byte [rsi + 0x26], 0
xor eax, eax
mov dword [rdi], eax
cmp dword [rdi + 4], 2
je 0x140027105
mov dword [rdi + 4], eax
lea rax, [rbp + 0x68]
lea rcx, [rdi + 0x68]
cmp rcx, rax
je 0x14002712b
mov r8d, 0x26
mov rdx, rsi
call fcn.140001f30
mov r15, qword [rbp + 0x80]
mov rsi, qword [rbp + 0x68]
lea rax, [rbp - 0x78]
lea rcx, [rdi + 0x88]
cmp rcx, rax
je 0x140027153
mov r8d, SafeArrayDestroy
lea rdx, [rbp - 0x78]
call fcn.140001f30
mov rax, qword [rbp - 0x60]
mov qword [rsp + 0x40], rax
lea rax, [rbp + 0x88]
lea rcx, [rdi + 0xa8]
cmp rcx, rax
je 0x140027182
mov r8d, 0x92
mov rdx, rbx
call fcn.140001f30
mov r13, qword [rbp + 0xa0]
mov rbx, qword [rbp + 0x88]
cmp r15, 0xf
jbe 0x1400271ba
lea rdx, [r15 + 1]
mov rax, rsi
cmp rdx, 0x1000
jb 0x1400271b1
add rdx, 0x27
mov rsi, qword [rsi - 8]
sub rax, rsi
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140027491
mov rcx, rsi
call fcn.1400364f0
nop
mov rax, qword [rsp + 0x40]
cmp rax, 0xf
jbe 0x1400271f8
lea rdx, [rax + 1]
mov rcx, qword [rbp - 0x78]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400271f2
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140027497
call fcn.1400364f0
nop
cmp r13, 0xf
jbe 0x14002722f
lea rdx, [r13 + 1]
mov rax, rbx
cmp rdx, 0x1000
jb 0x140027227
add rdx, 0x27
mov rbx, qword [rbx - 8]
sub rax, rbx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14002749d
mov rcx, rbx
call fcn.1400364f0
lea rbx, [r12 + 0xf8]
xor r15d, r15d
mov qword [rsp + 0x30], r15
mov qword [rsp + 0x28], r15
xor r9d, r9d
mov r8b, 1
mov rdx, rdi
lea rcx, [r12 + 0xf8]
call fcn.140031cf0
test al, al
jne 0x140027265
xor bl, bl
jmp 0x140027409
mov r9b, 1
mov rdx, 0xffffffffffffffff
mov r8d, 0x800
mov rcx, rbx
call fcn.140031160
mov qword [rdi + 0x18], rax
xorps xmm0, xmm0
movups xmmword [rsp + 0x48], xmm0
movdqa xmm1, xmmword [reloc.OLEAUT32.dll_SysReAllocString]
movdqu xmmword [rsp + 0x58], xmm1
mov ecx, 0x3443
mov word [rsp + 0x48], cx
mov byte [rsp + 0x4a], 0
lea rbx, [rax + 0x200]
lea rdx, [rsp + 0x48]
mov rcx, r12
call fcn.14002c8f0
mov qword [rax + 0x10], rbx
mov esi, 1
mov dword [rax + 0x3c], esi
mov ecx, dword [rax + 0x4c]
mov edx, esi
cmp ecx, 0x7fffffff
je 0x1400272dc
cmp ecx, edx
jge 0x1400272dc
mov dword [rax + 0x3c], ecx
mov edx, ecx
mov r8d, dword [rax + 0x50]
cmp r8d, 0x80000000
je 0x1400272f1
cmp edx, ecx
jge 0x1400272f1
mov dword [rax + 0x3c], r8d
mov dword [rax + 0x40], r15d
mov byte [rax + 0x60], sil
mov byte [rax + 0x5e], 0
mov dword [rax], 2
mov rdx, qword [rsp + 0x60]
cmp rdx, 0xf
jbe 0x140027340
inc rdx
mov rcx, qword [rsp + 0x48]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14002733b
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400274a3
call fcn.1400364f0
xorps xmm0, xmm0
movups xmmword [rsp + 0x48], xmm0
movdqa xmm1, xmmword [reloc.OLEAUT32.dll_SysReAllocString]
movdqu xmmword [rsp + 0x58], xmm1
mov eax, 0x3343
mov word [rsp + 0x48], ax
mov byte [rsp + 0x4a], 0
mov rbx, qword [rdi + 0x18]
add rbx, 0x204
lea rdx, [rsp + 0x48]
mov rcx, r12
call fcn.14002c8f0
mov qword [rax + 0x10], rbx
mov dword [rax + 0x3c], esi
mov ecx, dword [rax + 0x4c]
cmp ecx, 0x7fffffff
je 0x140027399
cmp ecx, 1
jge 0x140027399
mov dword [rax + 0x3c], ecx
mov esi, ecx
mov edx, dword [rax + 0x50]
cmp edx, 0x80000000
je 0x1400273ab
cmp esi, ecx
jge 0x1400273ab
mov dword [rax + 0x3c], edx
mov dword [rax + 0x40], r15d
mov byte [rax + 0x60], 1
mov byte [rax + 0x5e], 0
mov dword [rax], 2
mov rdx, qword [rsp + 0x60]
cmp rdx, 0xf
jbe 0x1400273fa
inc rdx
mov rcx, qword [rsp + 0x48]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400273f5
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400274a9
call fcn.1400364f0
lea rdx, [rbp - 0x58]
mov rcx, r12
call fcn.140028f00
movzx ebx, al
mov rdx, qword [rbp - 0x40]
cmp rdx, 0xf
jbe 0x140027440
inc rdx
mov rcx, qword [rbp - 0x58]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14002743b
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140027473
call fcn.1400364f0
movzx eax, bl
mov rcx, qword [rbp + 0xa8]
xor rcx, rsp
call fcn.1400364d0
lea r11, [rsp + 0x1b0]
mov rbx, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
mov rdi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret
call fcn.14003d3ec
nop
call fcn.14003d3ec
nop
call fcn.14003d3ec
nop
call fcn.14003d3ec
nop
call fcn.14003d3ec
nop
call fcn.14003d3ec
nop
call fcn.14003d3ec
nop
call fcn.14003d3ec
int3
call fcn.14003d3ec
int3
call fcn.14003d3ec
int3