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

Disassembly:
mov r11, rsp
push rbp
push rdi
push r12
sub rsp, 0x150
mov rax, qword [0x1402c0040]
xor rax, rsp
mov qword [rsp + 0xc0], rax
mov eax, dword [r8 + 4]
xor r12d, r12d
mov qword [rsp + 0x88], rcx
mov rdi, r8
mov ecx, dword [r8 + 8]
mov dword [rsp + 0x50], ecx
mov ecx, dword [r8 + 0x28]
bswap ecx
shr ecx, 8
mov dword [rsp + 0x34], ecx
mov ecx, dword [r8 + 0x30]
bswap ecx
shr ecx, 8
mov dword [rsp + 0x94], ecx
mov ecx, dword [r8 + 0x2c]
bswap ecx
shr ecx, 8
mov qword [r11 + 0x20], rbx
mov rbx, rdx
mov edx, dword [r8 + 0x10]
mov qword [r11 - 0x30], r14
movsxd r14, dword [r8]
mov dword [rsp + 0xa0], ecx
mov ecx, dword [r8 + 0x34]
bswap ecx
shr ecx, 8
movaps xmmword [r11 - 0x68], xmm8
mov dword [rsp + 0x7c], eax
imul eax, r14d
mov dword [rsp + 0x90], ecx
mov rcx, rbx
movaps xmmword [r11 - 0x88], xmm10
movaps xmmword [r11 - 0x98], xmm11
mov byte [rsp + 0x30], 0
movsxd r8, eax
mov dword [rsp + 0x38], r12d
mov qword [rsp + 0xa8], r8
test edx, edx
jne 0x14019db73
lea r8, [r8*4]
call fcn.14020ba80
jmp 0x14019db7d
bswap edx
shr edx, 8
call sym.SystemInformer.exe_PhFillMemoryUlong
lea ebp, [r14 - 1]
movss xmm11, dword [0x140291b3c]
mov eax, 0x7fffffff
mov qword [rsp + 0x140], r13
xorps xmm10, xmm10
mov dword [rsp + 0x70], eax
mov dword [rsp + 0x40], eax
mov qword [rsp + 0x130], r15
mov dword [rsp + 0x6c], r12d
mov dword [rsp + 0x44], r12d
cmp dword [rdi + 0x14], r12d
jbe 0x14019dc1c
mov rax, qword [rdi + 0x18]
xorps xmm0, xmm0
xorps xmm2, xmm2
movaps xmm1, xmm11
maxss xmm0, dword [rax]
mov eax, dword [rdi + 4]
dec eax
test byte [rdi + 8], 0x10
minss xmm1, xmm0
cvtsi2ss xmm2, rax
movaps xmm0, xmm2
mulss xmm0, xmm1
cvttss2si r15, xmm0
mov qword [rsp + 0xb0], r15
je 0x14019dc17
mov rax, qword [rdi + 0x20]
xorps xmm0, xmm0
addss xmm1, dword [rax]
maxss xmm0, xmm1
movaps xmm1, xmm11
minss xmm1, xmm0
mulss xmm2, xmm1
cvttss2si r13, xmm2
jmp 0x14019dc2a
mov r13d, r15d
jmp 0x14019dc2a
mov r15d, r12d
mov r13d, r12d
mov qword [rsp + 0xb0], r15
mov r9d, dword [rsp + 0x50]
mov qword [rsp + 0x148], rsi
test r9b, 3
je 0x14019dc6d
mov ecx, dword [rdi + 0x3c]
xor edx, edx
mov eax, dword [rdi + 0x44]
imul eax, dword [rdi + 0xc]
mov esi, dword [rdi + 0x38]
movss xmm8, dword [rdi + 0x40]
mov r8d, dword [rdi + 0x48]
maxss xmm8, xmm10
bswap esi
div ecx
mov dword [rsp + 0x64], r8d
sub ecx, edx
dec ecx
shr esi, 8
jmp 0x14019dc84
mov eax, dword [rsp + 0x34]
movss xmm8, dword [rsp + 0x34]
mov ecx, dword [rsp + 0x34]
mov esi, dword [rsp + 0x34]
mov dword [rsp + 0x64], eax
mov eax, r9d
mov dword [rsp + 0x60], ecx
and eax, 6
movaps xmmword [rsp + 0xf0], xmm9
movaps xmm3, xmm8
cmp al, 6
jne 0x14019dd50
movss xmm9, dword [rdi + 0x4c]
comiss xmm9, xmm11
jbe 0x14019dd4b
movaps xmmword [rsp + 0x120], xmm6
cvtps2pd xmm0, xmm9
movaps xmmword [rsp + 0x110], xmm7
call fcn.14020b2f0
cvtps2pd xmm7, xmm8
movaps xmm6, xmm0
movaps xmm0, xmm7
call fcn.14020b2f0
xorps xmm0, xmmword [0x140291dd0]
divsd xmm0, xmm6
call fcn.1402098ec
subsd xmm0, qword [0x140291b50]
mulsd xmm0, xmm6
call fcn.14020aef0
movaps xmm6, xmmword [rsp + 0x120]
mulsd xmm7, xmm0
cvtpd2ps xmm1, xmm7
movaps xmm7, xmmword [rsp + 0x110]
comiss xmm10, xmm1
ja 0x14019dd39
movd eax, xmm1
and eax, 0x7f800000
cmp eax, 0x7f800000
setne al
cmp al, 1
je 0x14019dd3c
xorps xmm1, xmm1
mov r9d, dword [rsp + 0x50]
movaps xmm3, xmm11
minss xmm3, xmm1
jmp 0x14019dd57
xorps xmm3, xmm3
jmp 0x14019dd57
movss xmm9, dword [rsp + 0x34]
mov eax, r9d
and eax, 0x1000
mov dword [rsp + 0x78], eax
je 0x14019dd6f
mov r8d, r13d
mov dword [rsp + 0x68], r12d
jmp 0x14019dd7c
mov eax, dword [rsp + 0x34]
mov r8d, dword [rsp + 0x34]
mov dword [rsp + 0x68], eax
mov dword [rsp + 0x54], r8d
test ebp, ebp
js 0x14019e1b7
movsxd rax, ebp
mov r10, r14
mov qword [rsp + 0x80], rax
mov eax, r9d
and eax, 1
mov dword [rsp + 0x98], eax
mov eax, r9d
and eax, 2
mov dword [rsp + 0x9c], eax
mov eax, r9d
and eax, 0x10
mov dword [rsp + 0x74], eax
xor al, al
jmp 0x14019ddc5
mov r8d, dword [rsp + 0x54]
test al, al
jne 0x14019de90
mov ecx, dword ds:[rsp + 0x38]
mov r11d, r15d
inc ecx
mov r15d, r13d
mov dword [rsp + 0x38], ecx
cmp ecx, dword [rdi + 0x14]
jae 0x14019de4d
lfence
mov rax, qword [rdi + 0x18]
movaps xmm0, xmm10
xorps xmm2, xmm2
movaps xmm1, xmm11
maxss xmm0, dword [rax + rcx*4]
mov eax, dword [rdi + 4]
dec eax
test byte [rdi + 8], 0x10
minss xmm1, xmm0
cvtsi2ss xmm2, rax
movaps xmm0, xmm2
mulss xmm0, xmm1
cvttss2si rdx, xmm0
mov qword [rsp + 0xb0], rdx
je 0x14019de48
mov rax, qword [rdi + 0x20]
movaps xmm0, xmm10
addss xmm1, dword [rax + rcx*4]
maxss xmm0, xmm1
movaps xmm1, xmm11
minss xmm1, xmm0
mulss xmm2, xmm1
cvttss2si r13, xmm2
jmp 0x14019de5b
mov r13d, edx
jmp 0x14019de5b
mov edx, r12d
mov r13d, r12d
mov qword [rsp + 0xb0], rdx
lea r12d, [r11 + rdx]
shr r12d, 1
lea eax, [r15 + r13]
shr eax, 1
cmp dword [rsp + 0x78], 0
mov dword [rsp + 0x3c], r12d
mov dword [rsp + 0x58], eax
je 0x14019dea7
cmp ecx, dword [rdi + 0x6c]
jae 0x14019dea7
nop dword [rax]
cmp r8d, r13d
ja 0x14019dea7
mov dword [rsp + 0x54], r13d
mov dword [rsp + 0x68], ecx
jmp 0x14019dea7
mov r11d, dword [rsp + 0x3c]
mov r12d, r15d
mov dword [rsp + 0x3c], r15d
mov r15d, dword [rsp + 0x58]
mov dword [rsp + 0x58], r13d
mov r9d, dword [rsp + 0x6c]
lea ecx, [r12 + r11]
mov r8d, dword [rsp + 0x70]
mov eax, r11d
shr ecx, 1
mov edx, ecx
imul edx, r14d
add edx, r14d
cmp r12d, r11d
mov r12d, edx
cmovae eax, ecx
imul eax, r14d
mov dword [rsp + 0x5c], eax
mov eax, r14d
imul eax, r11d
cmp dword [rsp + 0x3c], r11d
cmovae r12d, eax
mov eax, dword [rsp + 0x3c]
cmp eax, r11d
cmovae ecx, eax
imul ecx, r14d
mov dword [rsp + 0x6c], ecx
mov ecx, r14d
imul ecx, eax
cmp eax, r11d
mov r11d, dword [rsp + 0x5c]
cmovae ecx, edx
cmp r12d, r8d
mov dword [rsp + 0x70], ecx
cmovg r12d, r8d
cmp r11d, r9d
cmovl r11d, r9d
add r12d, ebp
add r11d, ebp
cmp dword [rsp + 0x74], 0
mov dword [rsp + 0x5c], r11d
je 0x14019dffb
mov r11d, dword [rsp + 0x58]
mov eax, r15d
mov r9d, dword [rsp + 0x44]
mov r8d, dword [rsp + 0x40]
lea ecx, [r11 + r15]
shr ecx, 1
mov edx, ecx
imul edx, r14d
add edx, r14d
cmp r11d, r15d
mov r10d, edx
cmovae eax, ecx
imul eax, r14d
mov dword [rsp + 0x4c], eax
mov eax, r14d
imul eax, r15d
cmp r11d, r15d
cmovae r10d, eax
mov eax, ecx
cmovae eax, r11d
imul eax, r14d
mov dword [rsp + 0x44], eax
mov eax, r11d
imul eax, r14d
cmp r11d, r15d
mov r11d, dword [rsp + 0x5c]
mov r15d, r10d
cmovae eax, edx
mov edx, dword [rsp + 0x4c]
cmp r10d, r8d
mov dword [rsp + 0x40], eax
lea eax, [r11 + r14]
mov r10, r14
cmovg r15d, r8d
movsxd rcx, eax
cmp edx, r9d
cmovl edx, r9d
add r15d, ebp
add edx, ebp
movsxd rax, r15d
mov dword [rsp + 0x48], r15d
mov dword [rsp + 0x4c], edx
cmp rcx, rax
jge 0x14019dffb
mov r8d, dword [rsp + 0x40]
mov dword [rsp + 0x40], r8d
mov r8d, dword [rsp + 0x44]
mov dword [rsp + 0x4c], edx
mov edx, dword [rsp + 0x90]
mov dword [rsp + 0x44], r8d
mov dword [rsp + 0x48], r15d
nop dword [rax]
mov dword [rbx + rcx*4], edx
add rcx, r14
cmp rcx, rax
jl 0x14019dff0
mov r8, qword [rsp + 0x80]
movsxd rdx, r12d
mov rax, r8
cmp r8, rdx
jge 0x14019e025
mov ecx, dword [rsp + 0x94]
mov dword ds:[rbx + rax*4], ecx
add rax, r10
cmp rax, rdx
jl 0x14019e015
cmp dword [rsp + 0x98], 0
je 0x14019e073
mov r15d, dword [rsp + 0x60]
test r15d, r15d
jne 0x14019e05b
mov rcx, qword [rsp + 0xa8]
mov rax, r8
cmp r8, rcx
jge 0x14019e05b
nop dword [rax]
mov dword [rbx + rax*4], esi
add rax, r10
cmp rax, rcx
jl 0x14019e050
inc r15d
mov r12d, 0
cmp r15d, dword [rdi + 0x3c]
cmove r15d, r12d
mov dword [rsp + 0x60], r15d
jmp 0x14019e076
xor r12d, r12d
cmp dword ds:[rsp + 0x9c], 0
je 0x14019e13a
mov r9d, dword ds:[rsp + 0x7c]
dec r9d
test byte [rsp + 0x50], 4
movd xmm2, r9d
cvtdq2ps xmm2, xmm2
movaps xmm0, xmm2
je 0x14019e0e8
mulss xmm0, xmm3
movaps xmm1, xmm3
cvttss2si ecx, xmm0
cmp ecx, r9d
jg 0x14019e13a
mov r8d, dword [rsp + 0x64]
nop dword [rax + rax]
mov eax, ecx
movaps xmm0, xmm2
imul eax, r14d
divss xmm1, xmm9
add eax, ebp
cdqe
mov dword [rbx + rax*4], esi
mov eax, ecx
sub eax, r8d
mulss xmm0, xmm1
cvttss2si ecx, xmm0
cmp ecx, eax
jle 0x14019e0c0
jmp 0x14019e132
mulss xmm0, xmm8
movaps xmm1, xmm8
mov r8d, r12d
cvttss2si ecx, xmm0
cmp ecx, r9d
jge 0x14019e132
mov r10d, dword [rsp + 0x64]
lea eax, [r8 + r10]
cmp ecx, eax
jl 0x14019e11a
mov eax, ecx
mov r8d, ecx
imul eax, r14d
add eax, ebp
cdqe
mov dword [rbx + rax*4], esi
addss xmm1, xmm8
movaps xmm0, xmm2
mulss xmm0, xmm1
cvttss2si ecx, xmm0
cmp ecx, r9d
jl 0x14019e102
mov r10, r14
mov r8, qword [rsp + 0x80]
cmp dword ds:[rsp + 0x74], 0
je 0x14019e16c
movsxd rax, dword [rsp + 0x48]
movsxd rcx, dword [rsp + 0x4c]
cmp rax, rcx
jg 0x14019e16c
mov r9d, dword [rsp + 0xa0]
nop dword [rax]
mov dword [rbx + rax*4], r9d
add rax, r10
cmp rax, rcx
jle 0x14019e160
movsxd rax, r11d
cmp rdx, rax
jg 0x14019e18b
mov ecx, dword [rsp + 0x34]
nop dword [rax + rax]
mov dword [rbx + rdx*4], ecx
add rdx, r10
cmp rdx, rax
jle 0x14019e180
movzx eax, byte [rsp + 0x30]
dec r8
mov r15, qword [rsp + 0xb0]
xor al, 1
sub ebp, 1
mov byte [rsp + 0x30], al
mov qword [rsp + 0x80], r8
jns 0x14019ddc0
mov r9d, dword [rsp + 0x50]
cmp dword [rsp + 0x78], 0
movaps xmm11, xmmword [rsp + 0xd0]
movaps xmm10, xmmword [rsp + 0xe0]
movaps xmm9, xmmword [rsp + 0xf0]
movaps xmm8, xmmword [rsp + 0x100]
mov r13, qword [rsp + 0x140]
je 0x14019e359
mov r15d, dword [rsp + 0x68]
cmp r15d, dword [rdi + 0x14]
jae 0x14019e359
lfence
mov rax, qword [rdi + 0x18]
movss xmm2, dword [rax + r15*4]
test r9b, 0x10
je 0x14019e21d
lfence
mov rax, qword [rdi + 0x20]
addss xmm2, dword [rax + r15*4]
movss xmm3, dword [rdi + 0x58]
mov edx, r15d
mov rax, qword [rdi + 0x50]
mov rcx, rdi
call qword [case.0x14013dbaa.0]
mov rbp, qword ds:[rsp + 0x88]
mov rbx, rax
test rax, rax
je 0x14019e361
lfence
mov rdx, qword [rdi + 0x60]
mov rsi, r12
test rdx, rdx
je 0x14019e269
mov rcx, rbp
call qword [sym.imp.GDI32.dll_SelectObject]
mov rsi, rax
mov edx, dword [rdi + 0x68]
mov rcx, rbp
call qword [sym.imp.GDI32.dll_SetTextColor]
mov edx, 1
mov rcx, rbp
call qword [sym.imp.GDI32.dll_SetBkMode]
mov r8d, dword ds:[rbx]
lea r9, [rsp + 0xa8]
mov rdx, qword [rbx + 8]
mov rcx, rbp
shr r8d, 1
call qword [sym.imp.GDI32.dll_GetTextExtentPoint32W]
mov eax, dword [0x1402c1294]
mov edx, dword [rsp + 0x7c]
sub edx, dword [rsp + 0x54]
mov ecx, dword [rsp + 0xac]
sub edx, eax
mov dword [rsp + 0xbc], edx
sub edx, ecx
mov dword [rsp + 0xb4], edx
cmp edx, eax
jge 0x14019e2e1
mov dword [rsp + 0xb4], eax
add eax, ecx
mov dword [rsp + 0xbc], eax
mov r8d, dword [rbx]
lea eax, [r15 + r15]
mov rdx, qword [rbx + 8]
lea r9, [rsp + 0xb0]
cmp eax, r14d
mov dword [rsp + 0xb0], r12d
mov ecx, r14d
mov dword [rsp + 0x20], 0x102
cmovl ecx, eax
shr r8d, 1
sub r14d, ecx
mov rcx, rbp
sub r14d, dword [0x1402c1298]
mov dword [rsp + 0xb8], r14d
call qword [sym.imp.USER32.dll_DrawTextW]
test rsi, rsi
je 0x14019e33c
mov rdx, rsi
mov rcx, rbp
call qword [sym.imp.GDI32.dll_SelectObject]
lea rcx, [rbx - 0x10]
mov eax, 0xffffffff
lock xadd dword [rcx + 8], eax
cmp eax, 1
jne 0x14019e361
lfence
call fcn.140142200
jmp 0x14019e361
mov rbp, qword [rsp + 0x88]
cmp qword [rdi + 0x78], 0
mov r15, qword [rsp + 0x130]
mov r14, qword [rsp + 0x138]
mov rsi, qword [rsp + 0x148]
mov rbx, qword [rsp + 0x188]
je 0x14019e429
mov rdx, qword [rdi + 0xa0]
test rdx, rdx
je 0x14019e3a9
mov rcx, rbp
call qword [sym.imp.GDI32.dll_SelectObject]
mov r12, rax
mov edx, 1
mov rcx, rbp
call qword [sym.imp.GDI32.dll_SetBkMode]
mov edx, dword [rdi + 0xac]
mov rcx, rbp
call qword [sym.imp.GDI32.dll_SetDCBrushColor]
mov ecx, 0x12
call qword [sym.imp.GDI32.dll_GetStockObject]
lea rdx, ds:[rdi + 0x90]
mov rcx, rbp
mov r8, rax
call qword [sym.imp.USER32.dll_FillRect]
mov edx, dword [rdi + 0xa8]
mov rcx, rbp
call qword [sym.imp.GDI32.dll_SetTextColor]
mov r8d, dword [rdi + 0x70]
lea r9, [rdi + 0x80]
mov rdx, qword [rdi + 0x78]
mov rcx, rbp
shr r8d, 1
mov dword [rsp + 0x20], 0x100
call qword [sym.imp.USER32.dll_DrawTextW]
test r12, r12
je 0x14019e429
mov rdx, r12
mov rcx, rbp
call qword [sym.imp.GDI32.dll_SelectObject]
mov rcx, qword [rsp + 0xc0]
xor rcx, rsp
call fcn.1401e5e20
add rsp, 0x150
pop r12
pop rdi
pop rbp
ret