Function at 0x1402e7820
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, 0x488
mov r15d, r9d
mov edi, r8d
mov rbx, rcx
mov dword [rsp + 0x20], 0x1ef49ea1
xor r8d, r8d
mov r9d, 0xa38daae7
call fcn.1400aa9b0
test rax, rax
je 0x1402e7bd6
mov rsi, rax
add rax, 0xb0
cmp dword [rsi + 0xb8], 0
sete cl
cmp qword [rsi + 0xb8], 0
sete dl
xor r13d, r13d
test cl, dl
cmove r13, rax
jne 0x1402e7bcd
mov rcx, rsi
mov edx, 0x193f665
mov r8d, 0xfd64c0f8
call fcn.1402e9630
test al, al
je 0x1402e7bcd
mov r14, qword [rsp + 0x510]
movsxd rax, edi
mov rcx, qword [rbx + 0x370]
lea rax, [rax + rax*4]
shl rax, 5
lea rdx, [rcx + rax]
xor r8d, r8d
test byte [rcx + rax], 2
sete r8b
mov ebp, dword [rdx + r8*4 + 0x14]
mov eax, dword [rsi + 8]
cmp eax, 0x100
je 0x1402e7bf3
cmp eax, 0x200
je 0x1402e78f1
cmp eax, 0x400
jne 0x1402e819a
cmp qword [0x140534158], 0
jne 0x1402e794e
mov ecx, 0xb0
mov edx, 0xaa2caa53
mov r8d, 0xb249c95e
call fcn.1400a83d0
xorps xmm0, xmm0
movups xmmword [rax], xmm0
movups xmmword [rax + 0x10], xmm0
movups xmmword [rax + 0x20], xmm0
movups xmmword [rax + 0x30], xmm0
movups xmmword [rax + 0x40], xmm0
movups xmmword [rax + 0x50], xmm0
movups xmmword [rax + 0x60], xmm0
movups xmmword [rax + 0x70], xmm0
movups xmmword [rax + 0x80], xmm0
movups xmmword [rax + 0x90], xmm0
movups xmmword [rax + 0x9d], xmm0
mov qword [0x140534158], rax
mov rax, qword [0x140534158]
mov rcx, qword [r13 + 8]
mov byte [r14 + 8], 1
mov qword [rsp + 0x40], rax
mov rax, qword [rax + 0x48]
lea r8, [rsp + 0x58]
mov qword [rsp + 0x48], rcx
mov edx, 3
mov r9d, 0x30
call qword [case.0x1401138cb.0]
test eax, eax
je 0x1402e7f68
movzx ecx, byte [rsp + 0x508]
mov rdx, r14
movzx r12d, byte [rsp + 0x500]
mov eax, dword [rsp + 0x84]
mov rbx, qword [0x14050e120]
movsxd r14, dword [rbx]
mov edi, dword [0x140421820]
sub eax, dword [rsp + 0x64]
mov dword [rdx + 0x1c], eax
test cl, cl
je 0x1402e7a62
test r15d, r15d
je 0x1402e79e1
mov ecx, dword [rsp + 0x4f0]
cmp ecx, 0xffffffff
je 0x1402e79e1
imul edx, ecx, 0xe10
mov cl, 1
cmp edx, eax
jae 0x1402e79fc
mov rax, qword [rsp + 0x40]
mov rax, qword [rax + 0x60]
mov rcx, qword [rsp + 0x48]
xor edx, edx
call qword [case.0x1401138cb.0]
test eax, eax
setne cl
cmp r15d, 0xffffffff
je 0x1402e7a62
test r15d, r15d
setne al
or al, cl
cmp al, 1
jne 0x1402e7a56
mov rax, qword [rsp + 0x40]
mov rax, qword [rax + 0x48]
lea r8, [rsp + 0x58]
mov rcx, qword [rsp + 0x48]
mov edx, 3
mov r9d, 0x30
call qword [case.0x1401138cb.0]
mov eax, dword [rsp + 0x84]
sub eax, dword [rsp + 0x64]
mov rcx, qword [rsp + 0x510]
mov dword [rcx + 0x1c], eax
imul ecx, r15d, 0xe10
add ecx, 0x3c
cmp ecx, eax
jae 0x1402e7a62
mov rax, qword [rsp + 0x510]
mov byte [rax + 9], 1
test r12b, r12b
mov r12, qword [rsp + 0x510]
je 0x1402e7b31
mov eax, dword [rsp + 0x84]
cmp eax, dword [rsp + 0x4f8]
jae 0x1402e7b31
mov dword [rsp + 0x54], ebp
mov rbp, qword [rsp + 0x40]
mov rax, qword [rbp]
mov r12, qword [rsp + 0x48]
mov rcx, r12
call qword [case.0x1401138cb.0]
mov r15d, 0x7d
cmp eax, 0x40a0000
jb 0x1402e8189
mov rax, qword [rbp + 0x50]
mov dword [rsp + 0x28], 0
mov qword [rsp + 0x20], 0
lea r8, [rsp + 0x4f8]
mov rcx, r12
mov edx, 0x7f
mov r9d, 4
call qword [case.0x1401138cb.0]
test eax, eax
mov ebp, dword [rsp + 0x54]
mov r12, qword [rsp + 0x510]
je 0x1402e7f68
mov rax, qword [rsp + 0x40]
mov rax, qword [rax + 0x48]
lea r8, [rsp + 0x58]
mov rcx, qword [rsp + 0x48]
mov edx, 3
mov r9d, 0x30
call qword [case.0x1401138cb.0]
cmp byte [0x140531658], 0
jne 0x1402e7f68
test eax, eax
je 0x1402e7f68
add r14, rbx
mov eax, dword [rsp + 0x84]
mov ecx, 0x88888889
imul rcx, rax
shr rcx, 0x25
mov dword [r12 + 0x20], ecx
mov ecx, dword [0x14050e110]
mov edx, ecx
xor edx, 0xff00493d
mov r8d, ecx
and r8d, 0x7f00493d
lea edx, [rdx + r8*2]
add edx, 0xffb6c4
mov dword [0x14050e110], edx
mov ebx, ecx
not ebx
mov r8d, edx
not r8d
lea r9, [fcn.1402e7820]
add r9d, r9d
add r9d, 0x3200
mov r10d, r9d
not r10d
nop word cs:[rax + rax]
mov r11d, dword [0x14053414c]
lea r15d, [r11 - 1]
imul r15d, r11d
test r15b, 1
jne 0x1402e7bbe
test r10d, r9d
je 0x1402e7e11
mov r11d, dword [0x140534150]
cmp r11d, 0x22
jge 0x1402e7ba0
jmp 0x1402e7bb5
mov r15d, dword [rsi + 0xd8]
jmp 0x1402e7bdc
mov r15d, 0xfffffffe
mov eax, r15d
add rsp, 0x488
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
cmp qword [0x1405341a0], 0
jne 0x1402e7c3b
mov ecx, 0x80
mov edx, 0xaa2caa53
mov r8d, 0xb249c95e
call fcn.1400a83d0
xorps xmm0, xmm0
movups xmmword [rax], xmm0
movups xmmword [rax + 0x10], xmm0
movups xmmword [rax + 0x20], xmm0
movups xmmword [rax + 0x30], xmm0
movups xmmword [rax + 0x40], xmm0
movups xmmword [rax + 0x50], xmm0
movups xmmword [rax + 0x60], xmm0
movups xmmword [rax + 0x69], xmm0
mov qword [0x1405341a0], rax
mov rbx, qword [0x1405341a0]
mov dword [rsp + 0x38], 0x82688c27
mov dword [rsp + 0x30], 0x60c700ff
mov dword [rsp + 0x28], 0x862ad1b7
mov qword [rsp + 0x20], 0
xor r15d, r15d
xor ecx, ecx
xor edx, edx
xor r8d, r8d
mov r9d, ebp
call fcn.1402e9a90
mov edi, eax
mov ecx, dword [r13 + 0x10]
xorps xmm0, xmm0
movups xmmword [rsp + 0x148], xmm0
movups xmmword [rsp + 0x13c], xmm0
movups xmmword [rsp + 0x12c], xmm0
movups xmmword [rsp + 0x11c], xmm0
movups xmmword [rsp + 0x10c], xmm0
movups xmmword [rsp + 0xfc], xmm0
movups xmmword [rsp + 0xec], xmm0
movups xmmword [rsp + 0xdc], xmm0
movups xmmword [rsp + 0xcc], xmm0
movups xmmword [rsp + 0xbc], xmm0
movups xmmword [rsp + 0xac], xmm0
movups xmmword [rsp + 0x9c], xmm0
movups xmmword [rsp + 0x8c], xmm0
mov dword [rsp + 0x88], 0x100
mov rax, qword [rbx + 0x50]
lea r8, [rsp + 0x88]
mov edx, 0x120
mov r9d, 0xd0
call qword [case.0x1401138cb.0]
test eax, eax
je 0x1402e7f93
movzx edx, word [rsp + 0x8e]
test rdx, rdx
je 0x1402e8189
mov eax, edi
mov ecx, dword [0x1405336c0]
add ecx, dword [r14 + 0x10]
add ecx, dword [0x1405330d4]
and eax, 0x20000000
lea rdx, [rdx + rdx*4]
lea rdx, [rdx*4 - 0x14]
xor r8d, r8d
test edi, edi
jns 0x1402e7d90
jmp 0x1402e7d68
add r8, 0x14
test edi, edi
jns 0x1402e7d90
test byte [rsp + r8 + 0x91], 0x10
je 0x1402e7d90
add ecx, dword [rsp + r8 + 0x9c]
mov dword [r14 + 0x10], ecx
mov byte [r14 + 0xa], 1
jmp 0x1402e7e00
test eax, eax
je 0x1402e7e00
mov r9d, dword [rsp + r8 + 0x90]
mov r10d, r9d
not r10d
xor r9d, 0x4000
and r10d, 0xffffbfff
or r10d, r9d
cmp r10d, 0xffffffff
je 0x1402e7e00
mov r9d, dword [rsp + r8 + 0xa0]
mov r10d, r9d
not r10d
mov r11d, r9d
xor r11d, 0xffff
and r10d, 0xffff0000
or r10d, r11d
cmp r10d, 0xffff0000
je 0x1402e7e00
imul r9d, r9d, 0x15180
mov dword [r14 + 0x14], r9d
mov byte [r14 + 0xb], 1
nop word cs:[rax + rax]
cmp edx, r8d
jne 0x1402e7d60
xor r15d, r15d
jmp 0x1402e8189
and ebx, r8d
nop word cs:[rax + rax]
mov r8d, dword [0x140534150]
cmp r8d, 0x41
jg 0x1402e7e20
mov r8d, edx
xor r8d, edx
not r8d
and r8d, ecx
xor ebx, edx
xor ebx, r8d
not ebx
xor r12d, r12d
test ebx, ebx
jne 0x1402e7e69
mov ecx, dword [0x140534150]
nop dword [rax]
mov ecx, dword [0x14053414c]
lea edx, [rcx - 1]
imul edx, ecx
test dl, 1
jne 0x1402e7e50
test edi, edi
jg 0x1402e7fa5
mov ecx, dword [rsp + 0x64]
sub eax, ecx
mov ecx, 0x91a2b3c5
imul rcx, rax
shr rcx, 0x2b
mov rax, qword [rsp + 0x510]
mov dword [rax + 0x1c], ecx
mov r14d, ebp
xor r14d, 0xefffffff
mov r15d, ebp
not r15d
mov edi, ebp
xor edi, 0x1000000
and r15d, 0xfeffffff
lea rcx, [rsp + 0x88]
mov r8d, 0x400
xor edx, edx
call fcn.1403e40c0
cmp qword [0x140534158], 0
jne 0x1402e7f18
mov ecx, 0xb0
mov edx, 0xaa2caa53
mov r8d, 0xb249c95e
call fcn.1400a83d0
xorps xmm0, xmm0
movups xmmword [rax], xmm0
movups xmmword [rax + 0x10], xmm0
movups xmmword [rax + 0x20], xmm0
movups xmmword [rax + 0x30], xmm0
movups xmmword [rax + 0x40], xmm0
movups xmmword [rax + 0x50], xmm0
movups xmmword [rax + 0x60], xmm0
movups xmmword [rax + 0x70], xmm0
movups xmmword [rax + 0x80], xmm0
movups xmmword [rax + 0x90], xmm0
movups xmmword [rax + 0x9d], xmm0
mov qword [0x140534158], rax
or edi, r15d
mov rcx, qword [0x140534158]
mov r8d, dword [r13 + 0x18]
mov rdx, qword [r13 + 8]
mov dword [rsp + 0x28], 0x1868cc42
mov dword [rsp + 0x20], 0xf3a63ff9
lea r9, [rsp + 0x88]
call fcn.1400aad00
mov r15d, eax
mov r11b, 1
test r14d, ebp
mov rdx, qword [rsp + 0x48]
jne 0x1402e7fe7
test ebp, 0x20000000
je 0x1402e7fd6
xor r11d, r11d
jmp 0x1402e7fe7
mov dword [rsp + 0x20], 0x7c505e9c
mov rcx, qword [rsp + 0x40]
mov rdx, qword [rsp + 0x48]
mov r8d, 0xfd64c0f8
mov r9d, 0xff89d6fa
call fcn.1402e9b10
mov r15d, eax
jmp 0x1402e8189
mov rax, qword [rbx + 0x38]
call qword [case.0x1401138cb.0]
mov r15d, eax
jmp 0x1402e8189
xor r12d, r12d
mov ecx, 4
nop dword [rax]
lea edx, [rcx - 4]
movsxd rdx, edx
mov edx, dword [r14 + rdx]
mov r8d, edx
xor r8d, edx
not r8d
and r12d, r8d
xor r12d, edx
cmp ecx, edi
jge 0x1402e7e69
add ecx, 4
jmp 0x1402e7fb0
movzx r11d, byte [rsp + 0x308]
and r11b, 0x10
shr r11b, 4
not edi
mov r10d, dword [0x140421830]
mov eax, dword [0x14053414c]
lea r8d, [rax - 1]
imul r8d, eax
test r8b, 1
jne 0x1402e8020
xor eax, eax
test ebx, ebx
sete r8b
mov r9d, dword [0x140534150]
cmp r9d, 0x2b
jl 0x1402e802d
nop dword [rax]
mov eax, dword [0x140534150]
cmp eax, 0x60
jge 0x1402e8020
jmp 0x1402e8004
mov al, r8b
neg eax
sub r10d, r12d
and r10d, eax
xor eax, eax
test al, al
jne 0x1402e8070
test r10d, r10d
setne al
or al, byte [0x140531658]
and al, 1
mov byte [0x140531658], al
mov eax, dword [0x14053414c]
lea r8d, [rax - 1]
imul r8d, eax
test r8b, 1
je 0x1402e80a2
nop word cs:[rax + rax]
test r10d, r10d
setne r8b
movzx eax, byte [0x140531658]
sub al, r8b
mul r8b
sub al, r8b
mul r8b
or al, r8b
and al, 1
mov byte [0x140531658], al
mov eax, dword [0x140534150]
cmp eax, 0x57
jge 0x1402e8070
jmp 0x1402e803e
mov al, 1
test edi, edi
mov rdi, qword [rsp + 0x510]
mov rcx, qword [rsp + 0x40]
jne 0x1402e80d5
test ebp, 0x2000000
jne 0x1402e80d3
mov eax, dword [rsp + 0x308]
not eax
or eax, 0xfffff7fb
cmp eax, 0xffffffff
setne al
jmp 0x1402e80d5
xor eax, eax
test r15d, r15d
jne 0x1402e8189
test r11b, r11b
je 0x1402e8112
mov r9d, dword [rsp + 0x308]
mov r8d, r9d
not r8d
xor r9d, 0x10
and r8d, 0xffffffef
or r8d, r9d
cmp r8d, 0xffffffff
je 0x1402e8112
mov r8d, dword [rsp + 0x334]
add dword [rdi + 0x10], r8d
mov byte [rdi + 0xa], 1
test al, al
je 0x1402e8189
mov eax, dword [rsp + 0x308]
test al, 4
je 0x1402e8140
mov r9d, dword [rsp + 0x344]
xor r8d, r8d
sub r9d, dword [rsp + 0x84]
cmovb r9d, r8d
mov dword [rdi + 0x14], r9d
mov byte [rdi + 0xb], 1
test eax, 0x800
je 0x1402e8189
mov dword [rsp + 0x50], 0
lea r9, [rdi + 0xd]
lea rax, [rsp + 0x58]
mov qword [rsp + 0x20], rax
mov dword [rsp + 0x38], 0xf7c60a89
mov dword [rsp + 0x30], 0x9c003c36
mov dword [rsp + 0x28], 0x42c87db6
lea r8, [rsp + 0x50]
call fcn.1402e9a60
mov byte [rdi + 0xc], al
mov eax, dword [rsp + 0x50]
mov dword [rdi + 0x18], eax
test r15d, r15d
je 0x1402e819a
mov dword [rsi + 0xd8], r15d
jmp 0x1402e7bdc
xor r15d, r15d
jmp 0x1402e7bdc