Function at 0x14000e15c
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, 0x328
movdqa xmmword [rsp + 0x310], xmm8
movdqa xmmword [rsp + 0x300], xmm7
movdqa xmmword [rsp + 0x2f0], xmm6
mov qword [rsp + 0x30], r8
mov qword [rsp + 0x38], rdx
mov rsi, rcx
movsxd rax, dword [rcx + 0x3c]
add rcx, rax
xor edx, edx
cmp word [rax + rsi + 0x18], 0x10b
setne dl
shl edx, 4
movsxd rax, dword [rdx + rcx + 0x78]
mov r12d, dword [rax + rsi + 0x18]
movsxd rcx, dword [rax + rsi + 0x1c]
mov qword [rsp + 0x98], rcx
movsxd r14, dword [rax + rsi + 0x20]
movsxd rax, dword [rax + rsi + 0x24]
mov qword [rsp + 0xc0], rax
add r14, rsi
xor eax, eax
test r12d, r12d
cmovle r12d, eax
lea rbx, [rsp + 0x180]
xor edi, edi
cmp rdi, r12
je 0x14000e2b4
movsxd r15, dword [r14 + rdi*4]
add r15, rsi
mov edx, 1
mov rcx, rbx
xor r8d, r8d
call fcn.140008192
movzx edx, byte [r15]
test edx, edx
je 0x14000e222
mov rcx, rbx
call fcn.14000ee6a
inc r15
jmp 0x14000e20d
mov r13, qword [rsp + 0x188]
mov r8, qword [rsp + 0x190]
lea rcx, [rsp + 0x60]
mov rdx, r13
call fcn.140008485
lea rcx, [rsp + 0xf0]
mov rdx, qword [rsp + 0x38]
mov r8, qword [rsp + 0x30]
call fcn.140008485
mov rbp, qword [rsp + 0x68]
mov rdx, qword [rsp + 0x70]
mov r15, qword [rsp + 0xf8]
mov r9, qword [rsp + 0x100]
mov rcx, rbp
mov r8, r15
call fcn.14000d7fb
test al, al
jne 0x14000e2bb
inc rdi
mov rcx, qword [rsp + 0xf0]
mov rdx, r15
call fcn.140007f19
mov rcx, qword [rsp + 0x60]
mov rdx, rbp
call fcn.140007f19
mov rcx, qword [rsp + 0x180]
mov rdx, r13
call fcn.140007f19
jmp 0x14000e1ed
xor ebx, ebx
jmp 0x14000ede0
mov rcx, qword [rsp + 0xf0]
mov rdx, r15
call fcn.140007f19
mov rcx, qword [rsp + 0x60]
mov rdx, rbp
call fcn.140007f19
mov rax, qword [rsp + 0xc0]
add rax, rsi
movsx rax, word [rax + rdi*2]
mov rcx, qword [rsp + 0x98]
add rcx, rsi
movsxd rbx, dword [rcx + rax*4]
add rbx, rsi
xor edi, edi
lea rsi, [rsp + 0xd8]
mov edx, 1
mov rcx, rsi
xor r8d, r8d
call fcn.140008192
movzx edx, byte [rbx + rdi]
test edx, edx
je 0x14000e331
mov rcx, rsi
call fcn.14000ee6a
inc rdi
cmp edi, 0x64
jne 0x14000e314
jmp 0x14000edb6
mov rdx, qword [rsp + 0xe0]
mov rsi, qword [rsp + 0xe8]
mov qword [rsp + 0x20], 1
lea r9, [0x1400ef3ae]
lea rdi, [rsp + 0x270]
mov rcx, rdi
mov r8, rsi
call fcn.14000c8f4
and qword [rdi + 0x68], 0
mov qword [rdi + 0x70], rsi
mov word [rdi + 0x78], 1
mov rcx, rdi
call fcn.14000d3a1
test rax, rax
je 0x14000ea96
mov rsi, rax
mov rdi, rdx
mov qword [rsp + 0xb8], rbx
mov ecx, 4
mov edx, 8
mov r8d, 0x10
call fcn.140001560
mov r15, rdx
mov qword [rdx], rsi
mov qword [rdx + 8], rdi
lea rbx, [rsp + 0x60]
mov qword [rbx], rax
mov qword [rbx + 8], rdx
mov qword [rbx + 0x10], 1
lea r14, [rsp + 0xf0]
lea rsi, [rsp + 0x270]
mov ecx, 0x10
mov rdi, r14
rep movsq qword [rdi], qword [rsi]
mov esi, 1
mov r13d, 0x18
mov rcx, r14
call fcn.14000d3a1
test rax, rax
je 0x14000e438
mov rdi, rax
mov r12, rdx
cmp rsi, qword [rsp + 0x60]
jne 0x14000e421
mov r8d, 1
mov r9d, 0x10
mov rcx, rbx
mov rdx, rsi
call fcn.140026519
mov r15, qword [rsp + 0x68]
mov qword [r15 + r13 - 8], rdi
mov qword [r15 + r13], r12
inc rsi
mov qword [rsp + 0x70], rsi
add r13, 0x10
jmp 0x14000e3eb
mov rcx, qword [rsp + 0x60]
mov rdi, qword [rsp + 0x68]
cmp rsi, 2
jne 0x14000eaa2
mov qword [rsp + 0xc8], rcx
mov rdx, qword [rdi]
mov r8, qword [rdi + 8]
lea rcx, [rsp + 0x40]
call fcn.140008192
mov rdx, qword [rdi + 0x10]
mov qword [rsp + 0xd0], rdi
mov r8, qword [rdi + 0x18]
lea rcx, [rsp + 0x198]
call fcn.140008192
call qword [sym.imp.kernel32.dll_GetCurrentProcess]
mov rsi, rax
xorps xmm0, xmm0
movaps xmmword [rsp + 0x260], xmm0
movaps xmmword [rsp + 0x250], xmm0
movaps xmmword [rsp + 0x240], xmm0
lea rdx, [0x140099848]
lea rdi, [rsp + 0xf0]
mov r8d, 9
mov rcx, rdi
call fcn.14000db12
mov rbx, qword [rdi + 8]
mov rdx, qword [rdi + 0x10]
mov rcx, rbx
call fcn.14000dc5b
mov r14, rax
mov rcx, qword [rdi]
mov rdx, rbx
call fcn.140007f19
lea rdx, [0x1400998c1]
lea rbx, [rsp + 0xf0]
mov r8d, 0x19
mov rcx, rbx
call fcn.14000db12
mov r15, qword [rbx + 8]
mov r8, qword [rbx + 0x10]
mov rcx, r14
mov rdx, r15
call fcn.14000e15c
mov rdi, rax
mov rcx, qword [rbx]
mov rdx, r15
call fcn.140007f19
test rdi, rdi
je 0x14000e53f
and qword [rsp + 0x20], 0
lea r8, [rsp + 0x240]
mov rcx, rsi
xor edx, edx
mov r9d, 0x30
call rdi
lea rdx, [0x140099851]
lea rdi, [rsp + 0xf0]
mov r8d, 0xc
mov rcx, rdi
call fcn.14000db12
mov rbx, qword [rdi + 8]
mov rdx, qword [rdi + 0x10]
mov rcx, rbx
call fcn.14000dc5b
mov r14, rax
mov rcx, qword [rdi]
mov rdx, rbx
call fcn.140007f19
lea rdx, [0x140099869]
lea rbx, [rsp + 0xf0]
mov r8d, 0xb
mov rcx, rbx
call fcn.14000db12
mov r15, qword [rbx + 8]
mov r8, qword [rbx + 0x10]
mov rcx, r14
mov rdx, r15
call fcn.14000e15c
mov rdi, rax
mov rcx, qword [rbx]
mov rdx, r15
call fcn.140007f19
test rdi, rdi
je 0x14000e5c2
mov rcx, rsi
call rdi
xor ebp, ebp
xor ecx, ecx
call fcn.14002124d
mov rcx, qword [rax]
mov rdx, qword [rax + 8]
lea r8, [rcx + 1]
mov qword [rax], r8
movups xmm0, xmmword [0x1400eeef0]
lea rax, [rsp + 0x80]
movaps xmmword [rax - 0x10], xmm0
movdqu xmm0, xmmword [0x1400eeee0]
movdqa xmmword [rax - 0x20], xmm0
mov qword [rax], rcx
mov qword [rax + 8], rdx
mov rax, qword [rsp + 0x248]
mov rax, qword [rax + 0x68]
mov ecx, dword [rax + 0xc]
movsxd rdx, dword [rax + 0x10]
mov qword [rsp + 0x38], rax
add rdx, rax
mov qword [rsp + 0x178], rdx
test ecx, ecx
cmovle ecx, ebp
mov qword [rsp + 0xc0], rcx
lea rbx, [rsp + 0x1b0]
lea r13, [rsp + 0xf0]
pcmpeqd xmm6, xmm6
cmp rbp, qword [rsp + 0xc0]
je 0x14000eaaf
mov rax, rbp
movabs rcx, 0x1800000000
imul rax, rcx
sar rax, 0x20
mov rcx, qword [rsp + 0x178]
movsxd rdi, dword [rcx + rax + 4]
movsxd r14, dword [rcx + rax + 0x10]
mov esi, dword [rcx + rax + 8]
mov r12d, dword [rcx + rax + 0x14]
add rdi, qword [rsp + 0x38]
xor r15d, r15d
mov edx, 1
mov rcx, rbx
xor r8d, r8d
call fcn.140008192
mov eax, esi
cdq
mov ecx, 2
idiv ecx
mov esi, eax
cmp r15d, esi
jge 0x14000e6c2
movzx edx, byte [rdi]
test edx, edx
je 0x14000e6bd
mov rcx, rbx
call fcn.14000ee6a
inc r15d
inc rdi
jmp 0x14000e6a6
mov r15, qword [rsp + 0x1b8]
mov rsi, qword [rsp + 0x1c0]
lea r8, [rsi - 2]
mov rcx, r15
mov rdx, rsi
call fcn.14000d589
mov qword [rsp + 0x1f0], rax
mov qword [rsp + 0x1f8], rdx
lea rax, [0x140099828]
mov qword [rsp + 0xf0], rax
mov qword [rsp + 0xf8], 2
and qword [rsp + 0x110], 0
lea rax, [rsp + 0x1f0]
mov qword [rsp + 0x1e0], rax
lea rax, [fcn.14000c15d]
mov qword [rsp + 0x1e8], rax
lea rax, [rsp + 0x1e0]
mov qword [rsp + 0x100], rax
mov qword [rsp + 0x108], 1
lea rcx, [rsp + 0xa0]
mov rdx, r13
call fcn.14000d5a5
cmp r12d, 1
jne 0x14000e76d
add r14, qword [rsp + 0x38]
jmp 0x14000e7d8
mov qword [rsp + 0x30], rbp
add r14, qword [rsp + 0x38]
mov rbx, r14
xor ebp, ebp
sub r12, 1
jb 0x14000e7cc
mov edx, 1
mov rcx, r13
xor r8d, r8d
call fcn.140008192
mov rdi, qword [rsp + 0xf8]
mov rdx, qword [rsp + 0x100]
mov rcx, rdi
mov r8, r15
mov r9, rsi
call fcn.14000d7fb
test al, al
cmove rbp, rbx
mov rcx, qword [rsp + 0xf0]
mov rdx, rdi
call fcn.140007f19
add rbx, 0x14
jmp 0x14000e77c
test rbp, rbp
cmovne r14, rbp
mov rbp, qword [rsp + 0x30]
movsxd rdi, dword [r14 + 0xc]
mov esi, dword [r14 + 0x10]
mov edx, 1
lea r14, [rsp + 0x1c8]
mov rcx, r14
xor r8d, r8d
call fcn.140008192
test esi, esi
je 0x14000e829
add rdi, qword [rsp + 0x38]
mov eax, esi
cdq
mov ecx, 2
idiv ecx
mov esi, eax
xor ebx, ebx
cmp ebx, esi
jge 0x14000e829
movzx edx, byte [rdi]
test edx, edx
je 0x14000e824
mov rcx, r14
call fcn.14000ee6a
inc ebx
inc rdi
jmp 0x14000e80f
mov rcx, qword [rsp + 0x80]
mov rdx, qword [rsp + 0x88]
mov r8, qword [rsp + 0xa8]
mov r9, qword [rsp + 0xb0]
call fcn.14000d5ea
mov rsi, rax
cmp qword [rsp + 0x70], 0
je 0x14000e9c2
inc rbp
mov qword [rsp + 0x30], rbp
mov r12, qword [rsp + 0x60]
mov rbx, qword [rsp + 0x68]
mov rdi, rbx
and rdi, rsi
shr rsi, 0x39
movd xmm0, esi
punpcklbw xmm0, xmm0
pshuflw xmm0, xmm0, 0
pshufd xmm7, xmm0, 0
xor ebp, ebp
mov qword [rsp + 0x98], 0
movdqu xmm8, xmmword [r12 + rdi]
movdqa xmm0, xmm7
pcmpeqb xmm0, xmm8
pmovmskb eax, xmm0
mov word [rsp + 0xf0], ax
mov rcx, r13
call fcn.14001724e
test rax, rax
je 0x14000e8eb
add rdx, rdi
and rdx, rbx
neg rdx
imul r14, rdx, 0x30
mov rdx, qword [r12 + r14 - 0x28]
mov r8, qword [r12 + r14 - 0x20]
lea rcx, [rsp + 0xa0]
call fcn.14000da55
test al, al
je 0x14000e8b4
jmp 0x14000e947
test byte [rsp + 0x98], 1
jne 0x14000e922
movdqa xmmword [rsp + 0x230], xmm8
mov rcx, rbx
lea rdx, [rsp + 0x230]
mov r8, rdi
call fcn.14000da6b
mov qword [rsp + 0x98], rax
mov qword [rsp + 0x170], rdx
pcmpeqb xmm8, xmm6
pmovmskb eax, xmm8
test eax, eax
jne 0x14000e9d9
add rdi, rbp
add rdi, 0x10
add rbp, 0x10
and rdi, rbx
jmp 0x14000e899
add r12, r14
mov rsi, qword [r12 - 0x18]
mov rdi, qword [r12 - 0x10]
mov rax, qword [rsp + 0x1d8]
mov qword [r12 - 8], rax
movdqu xmm0, xmmword [rsp + 0x1c8]
movdqu xmmword [r12 - 0x18], xmm0
mov rcx, qword [rsp + 0xa0]
mov rdx, qword [rsp + 0xa8]
call fcn.140007f19
movabs rax, 0x8000000000000000
cmp rsi, rax
mov rbp, qword [rsp + 0x30]
je 0x14000e9a5
mov rcx, rsi
mov rdx, rdi
call fcn.140007f19
mov rcx, qword [rsp + 0x1b0]
mov rdx, r15
call fcn.140007f19
lea rbx, [rsp + 0x1b0]
jmp 0x14000e644
lea rcx, [rsp + 0x60]
lea rdx, [rsp + 0x80]
call fcn.140092a94
jmp 0x14000e85d
mov r8, qword [rsp + 0x170]
mov al, byte [r12 + r8]
test al, al
js 0x14000e9fb
movdqa xmm0, xmmword [r12]
pmovmskb eax, xmm0
bsf r8d, eax
mov al, byte [r12 + r8]
mov rcx, qword [rsp + 0xb0]
mov qword [rsp + 0x100], rcx
movups xmm0, xmmword [rsp + 0xa0]
movaps xmmword [rsp + 0xf0], xmm0
mov rcx, qword [rsp + 0x1d8]
lea rdx, [rsp + 0x108]
mov qword [rdx + 0x10], rcx
movups xmm0, xmmword [rsp + 0x1c8]
and al, 1
movzx eax, al
sub qword [rsp + 0x70], rax
movups xmmword [rdx], xmm0
lea rax, [r8 - 0x10]
and rbx, rax
mov byte [r12 + r8], sil
mov byte [r12 + rbx + 0x10], sil
inc qword [rsp + 0x78]
neg r8
imul rax, r8, 0x30
movdqa xmm0, xmmword [rsp + 0xf0]
movaps xmm1, xmmword [rsp + 0x100]
movaps xmm2, xmmword [rsp + 0x110]
movups xmmword [r12 + rax - 0x10], xmm2
movups xmmword [r12 + rax - 0x20], xmm1
movdqu xmmword [r12 + rax - 0x30], xmm0
mov rbp, qword [rsp + 0x30]
jmp 0x14000e9a5
mov edi, 8
xor ecx, ecx
jmp 0x14000edae
mov rbx, qword [rsp + 0xb8]
jmp 0x14000edae
movaps xmm0, xmmword [rsp + 0x60]
movaps xmm1, xmmword [rsp + 0x70]
movaps xmm2, xmmword [rsp + 0x80]
movaps xmmword [rsp + 0x220], xmm2
movaps xmmword [rsp + 0x210], xmm1
movaps xmmword [rsp + 0x200], xmm0
lea rsi, [rsp + 0xf0]
mov rcx, rsi
call fcn.14008381d
mov rcx, qword [rsi + 8]
mov rdi, qword [rcx + 8]
mov rsi, qword [rcx + 0x10]
and qword [rcx + 8], 0
call fcn.14002af78
test rdi, rdi
jne 0x14000eb1a
mov edx, 1
xor ecx, ecx
call fcn.14007dc30
mov rdi, rax
lea rsi, [0x1400ee608]
mov qword [rsp + 0x30], rsi
lea rdx, [0x1400997f0]
mov ebp, 1
mov ecx, 1
call fcn.1400837af
mov rbx, qword [rsp + 0x48]
mov r12, qword [rsp + 0x50]
lea r13, [r12 - 2]
mov rcx, rbx
mov rdx, r12
mov r8, r13
call fcn.14000d589
lea rsi, [rsp + 0x240]
mov qword [rsi], rax
mov qword [rsi + 8], rdx
lea r15, [rsp + 0xf0]
lea rax, [0x140099828]
mov qword [r15], rax
mov eax, 2
mov qword [r15 + 8], rax
and qword [r15 + 0x20], 0
mov qword [rsp + 0xa0], rsi
lea r14, [fcn.14000c15d]
mov qword [rsp + 0xa8], r14
lea rax, [rsp + 0xa0]
mov qword [r15 + 0x10], rax
mov qword [r15 + 0x18], rbp
lea rbp, [rsp + 0x60]
mov rcx, rbp
mov rdx, r15
call fcn.14000d5a5
mov rcx, qword [rbp]
mov rdx, qword [rbp + 8]
mov rbp, rbx
call fcn.140007f19
mov rcx, rdi
mov rdx, qword [rsp + 0x30]
call fcn.1400837af
mov rcx, rbx
mov rdx, r12
mov r8, r13
call fcn.14000d589
mov qword [rsi], rax
mov qword [rsi + 8], rdx
lea rax, [0x140099828]
mov qword [r15], rax
mov eax, 2
mov qword [r15 + 8], rax
and qword [r15 + 0x20], 0
mov qword [rsp + 0xa0], rsi
mov qword [rsp + 0xa8], r14
lea rax, [rsp + 0xa0]
mov qword [r15 + 0x10], rax
mov eax, 1
mov qword [r15 + 0x18], rax
lea rdi, [rsp + 0x60]
lea rdx, [rsp + 0xf0]
mov rcx, rdi
call fcn.14000d5a5
lea rcx, [rsp + 0x200]
mov rdx, rdi
call fcn.14000d941
test rax, rax
je 0x14000ec94
lea rcx, [rsp + 0x200]
lea rdx, [rsp + 0x60]
call fcn.14000d941
test rax, rax
mov rbx, qword [rsp + 0xb8]
je 0x14000ecde
mov rdx, qword [rax + 0x20]
mov r8, qword [rax + 0x28]
lea rcx, [rsp + 0xf0]
call fcn.140008a23
mov rcx, qword [rsp + 0x40]
mov rdx, rbp
call fcn.140007f19
jmp 0x14000ecf8
mov rax, qword [rsp + 0x50]
lea rsi, [rsp + 0xf0]
mov qword [rsi + 0x10], rax
movaps xmm0, xmmword [rsp + 0x40]
movaps xmmword [rsi], xmm0
lea rdx, str..dll
lea r8, [0x140099824]
mov rcx, rsi
call fcn.140007bbe
mov rax, qword [rsi + 0x10]
mov qword [rsp + 0x50], rax
movaps xmm0, xmmword [rsi]
movaps xmmword [rsp + 0x40], xmm0
mov rbx, qword [rsp + 0xb8]
jmp 0x14000ed12
mov rax, qword [rsp + 0x50]
mov qword [rsp + 0x100], rax
movups xmm0, xmmword [rsp + 0x40]
movaps xmmword [rsp + 0xf0], xmm0
mov rax, qword [rsp + 0x100]
mov qword [rsp + 0x50], rax
movaps xmm0, xmmword [rsp + 0xf0]
movaps xmmword [rsp + 0x40], xmm0
mov rsi, qword [rsp + 0x48]
mov rdi, qword [rsp + 0x50]
mov rcx, rsi
mov rdx, rdi
call fcn.14000dc5b
test rax, rax
jne 0x14000ed40
mov rcx, rsi
mov rdx, rdi
call fcn.14000eed4
test rax, rax
je 0x14000ee10
mov rdi, qword [rsp + 0x1a0]
mov r8, qword [rsp + 0x1a8]
mov rcx, rax
mov rdx, rdi
call fcn.14000e15c
mov rbx, rax
mov rcx, qword [rsp + 0x60]
mov rdx, qword [rsp + 0x68]
call fcn.140007f19
xor ecx, ecx
call fcn.14000efc6
lea rcx, [rsp + 0x200]
call fcn.14000d81a
mov rcx, qword [rsp + 0x198]
mov rdx, rdi
call fcn.140007f19
mov rcx, qword [rsp + 0x40]
mov rdx, rsi
call fcn.140007f19
mov rdi, qword [rsp + 0xd0]
mov rcx, qword [rsp + 0xc8]
mov rdx, rdi
call fcn.14002fdb3
mov rcx, qword [rsp + 0xd8]
mov rdx, qword [rsp + 0xe0]
call fcn.140007f19
mov rcx, qword [rsp + 0x180]
mov rdx, qword [rsp + 0x188]
call fcn.140007f19
mov rax, rbx
movaps xmm6, xmmword [rsp + 0x2f0]
movaps xmm7, xmmword [rsp + 0x300]
movaps xmm8, xmmword [rsp + 0x310]
add rsp, 0x328
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
mov rcx, qword [rsp + 0x60]
mov rdx, qword [rsp + 0x68]
call fcn.140007f19
xor ecx, ecx
call fcn.14000efc6
lea rcx, [rsp + 0x200]
call fcn.14000d81a
mov rcx, qword [rsp + 0x198]
mov rdx, qword [rsp + 0x1a0]
call fcn.140007f19
mov rcx, qword [rsp + 0x40]
mov rdx, rsi
call fcn.140007f19
mov rcx, qword [rsp + 0xc8]
mov rdx, qword [rsp + 0xd0]
jmp 0x14000edb1