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

Disassembly:
mov rax, rsp
mov qword [rax + 8], rcx
push rsi
push r12
sub rsp, 0x148
mov r10d, dword [r8 + 8]
mov rsi, r8
mov qword [rax - 0x18], rbx
mov rbx, rdx
mov qword [rax - 0x28], rdi
mov qword [rax - 0x38], r14
movsxd r14, dword [r8]
mov edx, dword [rsi + 0x10]
mov qword [rax - 0x40], r15
movaps xmmword [rax - 0x78], xmm8
movaps xmmword [rax - 0x98], xmm10
movaps xmmword [rax - 0xa8], xmm11
mov eax, dword [r8 + 4]
mov r12d, eax
mov dword [rsp + 0x6c], eax
xor r8d, r8d
mov eax, dword [rsi + 0x28]
bswap eax
shr eax, 8
mov dword [rsp + 0xa4], eax
mov eax, dword [rsi + 0x30]
bswap eax
shr eax, 8
mov dword [rsp + 0x94], eax
mov eax, dword [rsi + 0x2c]
bswap eax
shr eax, 8
mov dword [rsp + 0xa0], eax
mov eax, dword [rsi + 0x34]
bswap eax
shr eax, 8
imul r12d, r14d
mov dword [rsp + 0x40], r10d
mov byte [rsp + 0x168], 0
mov dword [rsp + 0x170], r8d
mov dword [rsp + 0x90], eax
test edx, edx
jne 0x140100c7d
lea eax, [r12*4]
mov rcx, rbx
movsxd r8, eax
call fcn.140131400
mov r10d, dword [rsp + 0x40]
xor r8d, r8d
jmp 0x140100d41
bswap edx
shr edx, 8
mov rax, rbx
cmp byte [0x14018dbaa], 1
movsxd rcx, r12d
jae 0x140100ca6
test r12d, r12d
je 0x140100d41
mov eax, edx
mov rdi, rbx
rep stosd dword [rdi], eax
jmp 0x140100d41
mov rdi, rbx
and edi, 0xf
je 0x140100cef
cmp rdi, 4
je 0x140100cc2
cmp rdi, 8
je 0x140100cd1
cmp rdi, 0xc
je 0x140100ce0
jmp 0x140100cef
cmp rcx, 1
jb 0x140100cef
mov dword [rbx], edx
lea rax, [rbx + 4]
dec rcx
cmp rcx, 1
jb 0x140100cef
mov dword [rax], edx
add rax, 4
dec rcx
cmp rcx, 1
jb 0x140100cef
mov dword [rax], edx
add rax, 4
dec rcx
mov rdi, rcx
movd xmm0, edx
shr rdi, 2
pshufd xmm0, xmm0, 0
test rdi, rdi
je 0x140100d1e
nop dword [rax]
nop dword [rax + rax]
movdqu xmmword [rax], xmm0
add rax, 0x10
sub rdi, 1
jne 0x140100d10
and ecx, 3
sub rcx, 1
je 0x140100d3f
sub rcx, 1
je 0x140100d39
cmp rcx, 1
jne 0x140100d41
mov dword [rax], edx
add rax, 4
mov dword [rax], edx
add rax, 4
mov dword [rax], edx
cmp dword [rsi + 0x14], 0
lea r15d, [r14 - 1]
movss xmm11, dword [0x14016ae40]
mov eax, 0x7fffffff
mov dword [rsp + 0x60], eax
xorps xmm10, xmm10
mov dword [rsp + 0x30], eax
mov qword [rsp + 0x128], r13
mov dword [rsp + 0x5c], r8d
mov dword [rsp + 0x34], r8d
jbe 0x140100dd5
mov rax, qword [rsi + 0x18]
xorps xmm0, xmm0
xorps xmm2, xmm2
movaps xmm1, xmm11
maxss xmm0, dword [rax]
mov eax, dword [rsi + 4]
dec eax
test byte [rsi + 8], 0x10
minss xmm1, xmm0
cvtsi2ss xmm2, rax
movaps xmm0, xmm2
mulss xmm0, xmm1
cvttss2si rax, xmm0
mov qword [rsp + 0x70], rax
je 0x140100dd0
mov rax, qword [rsi + 0x20]
xorps xmm0, xmm0
addss xmm1, dword [rax]
maxss xmm0, xmm1
movaps xmm1, xmm11
minss xmm1, xmm0
mulss xmm1, xmm2
cvttss2si r13, xmm1
jmp 0x140100ddd
mov r13d, eax
jmp 0x140100ddd
mov dword [rsp + 0x70], r8d
mov r13d, r8d
mov qword [rsp + 0x138], rbp
test r10b, 3
je 0x140100e19
mov ecx, dword [rsi + 0x3c]
xor edx, edx
mov eax, dword [rsi + 0x44]
imul eax, dword [rsi + 0xc]
mov ebp, dword [rsi + 0x38]
movss xmm8, dword [rsi + 0x40]
mov edi, dword [rsi + 0x48]
maxss xmm8, xmm10
bswap ebp
div ecx
mov dword [rsp + 0x54], edi
sub ecx, edx
dec ecx
shr ebp, 8
jmp 0x140100e3c
mov eax, dword [rsp + 0x168]
movss xmm8, dword [rsp + 0x168]
mov ecx, dword [rsp + 0x168]
mov ebp, dword [rsp + 0x168]
mov dword [rsp + 0x54], eax
mov eax, r10d
mov dword [rsp + 0x50], ecx
and eax, 6
movaps xmmword [rsp + 0xd0], xmm9
movaps xmm3, xmm8
cmp al, 6
jne 0x140100f01
movss xmm9, dword [rsi + 0x4c]
comiss xmm9, xmm11
jbe 0x140100efc
movaps xmmword [rsp + 0x100], xmm6
cvtps2pd xmm0, xmm9
movaps xmmword [rsp + 0xf0], xmm7
call fcn.140130c70
cvtps2pd xmm7, xmm8
movaps xmm6, xmm0
movaps xmm0, xmm7
call fcn.140130c70
xorps xmm0, xmmword [0x14016afe0]
divsd xmm0, xmm6
call fcn.14012da44
subsd xmm0, qword [0x14016ae58]
mulsd xmm0, xmm6
call fcn.140130870
movaps xmm6, xmmword [rsp + 0x100]
mulsd xmm7, xmm0
cvtpd2ps xmm1, xmm7
movaps xmm7, xmmword [rsp + 0xf0]
comiss xmm10, xmm1
ja 0x140100ee7
movd eax, xmm1
and eax, 0x7f800000
cmp eax, 0x7f800000
setne al
cmp al, 1
je 0x140100eea
xorps xmm1, xmm1
mov r10d, dword [rsp + 0x40]
movaps xmm3, xmm11
minss xmm3, xmm1
xor r8d, r8d
jmp 0x140100f0b
xorps xmm3, xmm3
jmp 0x140100f0b
movss xmm9, dword [rsp + 0x168]
mov eax, r10d
and eax, 0x1000
mov dword [rsp + 0x68], eax
je 0x140100f23
mov edi, r13d
mov dword [rsp + 0x58], r8d
jmp 0x140100f35
mov eax, dword [rsp + 0x168]
mov edi, dword [rsp + 0x168]
mov dword [rsp + 0x58], eax
movsxd rax, r12d
mov qword [rsp + 0x80], rax
mov dword [rsp + 0x44], edi
test r15d, r15d
js 0x140101355
movsxd rax, r15d
mov r9, r14
mov qword [rsp + 0x78], rax
mov eax, r10d
and eax, 1
mov dword [rsp + 0x98], eax
mov eax, r10d
and eax, 2
mov dword [rsp + 0x9c], eax
mov eax, r10d
and eax, 0x10
mov dword [rsp + 0x64], eax
xor al, al
jmp 0x140100f87
mov edi, dword [rsp + 0x44]
xor r8d, r8d
test al, al
jne 0x14010104e
mov ecx, dword [rsp + 0x170]
mov r11d, r13d
mov r10d, dword [rsp + 0x70]
inc ecx
mov dword [rsp + 0x170], ecx
cmp ecx, dword [rsi + 0x14]
jae 0x14010100e
mov rax, qword [rsi + 0x18]
movaps xmm0, xmm10
xorps xmm2, xmm2
movaps xmm1, xmm11
maxss xmm0, dword [rax + rcx*4]
mov eax, dword [rsi + 4]
dec eax
test byte [rsi + 8], 0x10
minss xmm1, xmm0
cvtsi2ss xmm2, rax
movaps xmm0, xmm2
mulss xmm0, xmm1
cvttss2si rdx, xmm0
mov qword [rsp + 0x70], rdx
je 0x140101009
mov rax, qword [rsi + 0x20]
movaps xmm0, xmm10
addss xmm1, dword [rax + rcx*4]
maxss xmm0, xmm1
movaps xmm1, xmm11
minss xmm1, xmm0
mulss xmm1, xmm2
cvttss2si r13, xmm1
jmp 0x140101019
mov r13d, edx
jmp 0x140101019
mov edx, r8d
mov r13d, r8d
mov qword [rsp + 0x70], rdx
lea r12d, [r10 + rdx]
shr r12d, 1
lea eax, [r11 + r13]
shr eax, 1
cmp dword [rsp + 0x68], 0
mov dword [rsp + 0x178], r12d
mov dword [rsp + 0x48], eax
je 0x14010106d
cmp ecx, dword [rsi + 0x6c]
jae 0x14010106d
cmp edi, r13d
ja 0x14010106d
mov dword [rsp + 0x44], r13d
mov dword [rsp + 0x58], ecx
jmp 0x14010106d
mov r10d, dword [rsp + 0x178]
mov r12d, dword [rsp + 0x70]
mov r11d, dword [rsp + 0x48]
mov dword [rsp + 0x178], r12d
mov dword [rsp + 0x48], r13d
mov r8d, dword [rsp + 0x5c]
lea ecx, [r12 + r10]
mov edi, dword [rsp + 0x60]
mov eax, r10d
shr ecx, 1
mov edx, ecx
imul edx, r14d
add edx, r14d
cmp r12d, r10d
mov r12d, edx
cmovae eax, ecx
imul eax, r14d
mov dword [rsp + 0x4c], eax
mov eax, r10d
imul eax, r14d
cmp dword [rsp + 0x178], r10d
cmovae r12d, eax
mov eax, dword [rsp + 0x178]
cmp eax, r10d
cmovae ecx, eax
imul ecx, r14d
mov dword [rsp + 0x5c], ecx
mov ecx, eax
imul ecx, r14d
cmp eax, r10d
mov r10d, dword [rsp + 0x4c]
cmovae ecx, edx
cmp r12d, edi
mov dword [rsp + 0x60], ecx
cmovg r12d, edi
cmp r10d, r8d
cmovl r10d, r8d
add r12d, r15d
add r10d, r15d
cmp dword [rsp + 0x64], 0
mov dword [rsp + 0x4c], r10d
je 0x1401011c0
mov r10d, dword [rsp + 0x48]
mov eax, r11d
mov r8d, dword [rsp + 0x34]
mov edi, dword [rsp + 0x30]
lea ecx, [r10 + r11]
shr ecx, 1
mov edx, ecx
imul edx, r14d
add edx, r14d
cmp r10d, r11d
mov r9d, edx
cmovae eax, ecx
imul eax, r14d
mov dword [rsp + 0x38], eax
mov eax, r11d
imul eax, r14d
cmp r10d, r11d
cmovae r9d, eax
mov eax, ecx
cmovae eax, r10d
imul eax, r14d
mov dword [rsp + 0x34], eax
mov eax, r10d
imul eax, r14d
cmp r10d, r11d
mov r11d, dword [rsp + 0x38]
mov r10d, dword [rsp + 0x4c]
cmovae eax, edx
cmp r9d, edi
mov edx, r9d
mov dword [rsp + 0x30], eax
cmovg edx, edi
lea eax, [r10 + r14]
cmp r11d, r8d
movsxd rcx, eax
mov r9, r14
cmovl r11d, r8d
add edx, r15d
add r11d, r15d
movsxd rax, edx
mov dword [rsp + 0x3c], edx
mov dword [rsp + 0x38], r11d
cmp rcx, rax
jge 0x1401011c5
mov edi, dword [rsp + 0x30]
mov dword [rsp + 0x30], edi
mov edi, dword [rsp + 0x34]
mov dword [rsp + 0x3c], edx
mov edx, dword [rsp + 0x90]
mov dword [rsp + 0x34], edi
mov dword [rsp + 0x38], r11d
mov dword [rbx + rcx*4], edx
add rcx, r14
cmp rcx, rax
jl 0x1401011b3
jmp 0x1401011c5
mov r11d, dword [rsp + 0x38]
mov rdi, qword [rsp + 0x78]
movsxd rdx, r12d
mov rax, rdi
cmp rdi, rdx
jge 0x1401011eb
mov ecx, dword [rsp + 0x94]
nop dword [rax]
mov dword [rbx + rax*4], ecx
add rax, r9
cmp rax, rdx
jl 0x1401011e0
cmp dword [rsp + 0x98], 0
je 0x140101230
mov ecx, dword [rsp + 0x50]
test ecx, ecx
jne 0x14010121b
mov r8, qword [rsp + 0x80]
mov rax, rdi
cmp rdi, r8
jge 0x14010121b
nop dword [rax]
mov dword [rbx + rax*4], ebp
add rax, r9
cmp rax, r8
jl 0x140101210
inc ecx
mov r12d, 0
cmp ecx, dword [rsi + 0x3c]
cmove ecx, r12d
mov dword [rsp + 0x50], ecx
jmp 0x140101233
xor r12d, r12d
cmp dword [rsp + 0x9c], 0
je 0x1401012e7
mov r8d, dword [rsp + 0x6c]
dec r8d
test byte [rsp + 0x40], 4
movd xmm2, r8d
cvtdq2ps xmm2, xmm2
movaps xmm0, xmm2
je 0x140101298
mulss xmm0, xmm3
movaps xmm1, xmm3
cvttss2si ecx, xmm0
cmp ecx, r8d
jg 0x1401012e7
mov edi, dword [rsp + 0x54]
nop
mov eax, ecx
movaps xmm0, xmm2
imul eax, r14d
divss xmm1, xmm9
add eax, r15d
cdqe
mov dword [rbx + rax*4], ebp
mov eax, ecx
sub eax, edi
mulss xmm0, xmm1
cvttss2si ecx, xmm0
cmp ecx, eax
jle 0x140101270
jmp 0x1401012e2
mulss xmm0, xmm8
movaps xmm1, xmm8
mov edi, r12d
cvttss2si ecx, xmm0
cmp ecx, r8d
jge 0x1401012e2
mov r9d, dword [rsp + 0x54]
lea eax, [rdi + r9]
cmp ecx, eax
jl 0x1401012ca
mov eax, ecx
mov edi, ecx
imul eax, r14d
add eax, r15d
cdqe
mov dword [rbx + rax*4], ebp
addss xmm1, xmm8
movaps xmm0, xmm2
mulss xmm0, xmm1
cvttss2si ecx, xmm0
cmp ecx, r8d
jl 0x1401012b2
mov r9, r14
mov rdi, qword [rsp + 0x78]
cmp dword [rsp + 0x64], 0
je 0x14010130f
movsxd rax, dword [rsp + 0x3c]
movsxd rcx, r11d
cmp rax, rcx
jg 0x14010130f
mov r8d, dword [rsp + 0xa0]
mov dword [rbx + rax*4], r8d
add rax, r9
cmp rax, rcx
jle 0x140101303
movsxd rax, r10d
cmp rdx, rax
jg 0x14010132b
mov ecx, dword [rsp + 0xa4]
nop
mov dword [rbx + rdx*4], ecx
add rdx, r9
cmp rdx, rax
jle 0x140101320
movzx eax, byte [rsp + 0x168]
dec rdi
xor al, 1
mov qword [rsp + 0x78], rdi
sub r15d, 1
mov byte [rsp + 0x168], al
jns 0x140100f80
mov r10d, dword [rsp + 0x40]
jmp 0x140101358
xor r12d, r12d
cmp dword [rsp + 0x68], 0
movaps xmm11, xmmword [rsp + 0xb0]
movaps xmm10, xmmword [rsp + 0xc0]
movaps xmm9, xmmword [rsp + 0xd0]
movaps xmm8, xmmword [rsp + 0xe0]
mov r13, qword [rsp + 0x128]
je 0x1401014d7
mov r15d, dword [rsp + 0x58]
cmp r15d, dword [rsi + 0x14]
jae 0x1401014d7
mov rax, qword [rsi + 0x18]
movss xmm2, dword [rax + r15*4]
test r10b, 0x10
je 0x1401013b8
mov rax, qword [rsi + 0x20]
addss xmm2, dword [rax + r15*4]
movss xmm3, dword [rsi + 0x58]
mov edx, r15d
mov rcx, rsi
call qword [rsi + 0x50]
mov rbp, qword [rsp + 0x160]
mov rdi, rax
test rax, rax
je 0x1401014df
mov rdx, qword [rsi + 0x60]
mov rbx, r12
test rdx, rdx
je 0x1401013f2
mov rcx, rbp
call qword [sym.imp.GDI32.dll_SelectObject]
mov rbx, rax
mov edx, dword [rsi + 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 [rdi]
lea r9, [rsp + 0x170]
mov rdx, qword [rdi + 8]
mov rcx, rbp
shr r8d, 1
call qword [sym.imp.GDI32.dll_GetTextExtentPoint32W]
mov eax, dword [0x140187f8c]
mov edx, dword [rsp + 0x6c]
mov ecx, dword [rsp + 0x174]
sub edx, eax
sub edx, dword [rsp + 0x44]
mov dword [rsp + 0x8c], edx
sub edx, ecx
mov dword [rsp + 0x84], edx
cmp edx, eax
jge 0x140101462
mov dword [rsp + 0x84], eax
add eax, ecx
mov dword [rsp + 0x8c], eax
mov r8d, dword [rdi]
lea eax, [r15 + r15]
mov rdx, qword [rdi + 8]
lea r9, [rsp + 0x80]
cmp eax, r14d
mov dword [rsp + 0x80], r12d
mov ecx, r14d
mov dword [rsp + 0x20], 0x102
cmovl ecx, eax
shr r8d, 1
sub r14d, ecx
mov rcx, rbp
sub r14d, dword [0x140187f90]
mov dword [rsp + 0x88], r14d
call qword [sym.imp.USER32.dll_DrawTextW]
test rbx, rbx
je 0x1401014bd
mov rdx, rbx
mov rcx, rbp
call qword [sym.imp.GDI32.dll_SelectObject]
lea rcx, [rdi - 0x10]
mov eax, 0xffffffff
lock xadd dword [rcx + 8], eax
cmp eax, 1
jne 0x1401014df
call fcn.1400d9400
jmp 0x1401014df
mov rbp, qword [rsp + 0x160]
cmp qword [rsi + 0x78], 0
mov r15, qword [rsp + 0x118]
mov r14, qword [rsp + 0x120]
mov rdi, qword [rsp + 0x130]
mov rbx, qword [rsp + 0x140]
je 0x1401015a0
mov rdx, qword [rsi + 0xa0]
test rdx, rdx
je 0x140101522
mov rcx, rbp
call qword [sym.imp.GDI32.dll_SelectObject]
mov r12, rax
mov edx, dword [rsi + 0xac]
mov rcx, rbp
call qword [sym.imp.GDI32.dll_SetDCBrushColor]
mov ecx, 0x12
call qword [sym.imp.GDI32.dll_GetStockObject]
lea rdx, [rsi + 0x90]
mov rcx, rbp
mov r8, rax
call qword [sym.imp.USER32.dll_FillRect]
mov edx, dword [rsi + 0xa8]
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 [rsi + 0x70]
lea r9, [rsi + 0x80]
mov rdx, qword [rsi + 0x78]
mov rcx, rbp
shr r8d, 1
mov dword [rsp + 0x20], 0x100
call qword [sym.imp.USER32.dll_DrawTextW]
test r12, r12
je 0x1401015a0
mov rdx, r12
mov rcx, rbp
call qword [sym.imp.GDI32.dll_SelectObject]
mov rbp, qword [rsp + 0x138]
add rsp, 0x148
pop r12
pop rsi
ret