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

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x2b8]
sub rsp, 0x390
movaps xmmword [rax - 0x38], xmm6
movaps xmmword [rax - 0x48], xmm7
movaps xmmword [rax - 0x58], xmm8
movaps xmmword [rax - 0x68], xmm9
movaps xmmword [rax - 0x78], xmm10
movaps xmmword [rax - 0x88], xmm11
movaps xmmword [rax - 0x98], xmm12
mov rax, qword [0x140085140]
xor rax, rsp
mov qword [rbp + 0x210], rax
xor edi, edi
lea rcx, [0x14003de90]
call fcn.14004be30
call fcn.14004bd00
test eax, eax
je 0x14003f237
lea edx, [rdi + 3]
mov ecx, 0x22002
call fcn.1400465c0
xor edx, edx
mov ecx, 0x22003
call fcn.1400465c0
mov qword [rsp + 0x20], rdi
xor r9d, r9d
lea r8, str.Driver_Seeker_v0.1
mov edx, 0x2d0
lea ecx, [rdx - 0x14]
call fcn.140045ea0
mov r12, rax
test rax, rax
je 0x14003f237
mov rcx, rax
call fcn.14004cbb0
lea ecx, [rdi + 1]
call fcn.14004cc90
mov rcx, qword [0x1400883e8]
test rcx, rcx
je 0x14003dfac
inc dword [rcx + 0x3b0]
mov ecx, 0x3f50
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_malloc]
mov qword [rsp + 0x50], rax
lea rcx, [rsp + 0x58]
mov qword [rbp - 0x70], rcx
mov qword [rbp - 0x78], rax
test rax, rax
je 0x14003dfda
xor edx, edx
mov rcx, rax
call fcn.1400030f0
jmp 0x14003dfdd
mov rax, rdi
cmp qword [0x1400883e8], 0
jne 0x14003dfee
mov qword [0x1400883e8], rax
mov rcx, rax
call fcn.140009f90
mov rbx, qword [0x1400883e8]
xor ecx, ecx
call fcn.140020130
mov rcx, r12
call fcn.140001560
call fcn.140001d40
lea rax, [0x140078ea8]
mov qword [rsp + 0x20], rax
movss xmm2, dword [0x140079af8]
lea rdx, str.c:WindowsFontsArialUni.ttf
mov rcx, qword [rbx + 0xa8]
call fcn.140025120
mov qword [rsp + 0x20], rdi
movss xmm2, dword [0x140079af4]
lea rdx, str.c:WindowsFontscalibri.ttf
mov rcx, qword [rbx + 0xa8]
call fcn.140025120
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbp + 0x1f8], xmm0
mov qword [rbp + 0x208], rax
movups xmmword [rsp + 0x60], xmm0
xorps xmm1, xmm1
movdqu xmmword [rsp + 0x70], xmm1
lea r8d, [rax + 0x38]
lea rdx, str.SELECT_DisplayName_PathName_Name_from_Win32_SystemDriver
lea rcx, [rsp + 0x60]
call fcn.14003ffd0
nop
lea r8, [rsp + 0x60]
lea rdx, [rbp + 0x1f8]
call fcn.140044730
nop
mov rdx, qword [rsp + 0x78]
cmp rdx, 7
jbe 0x14003e0e6
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x60]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14003e0e1
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14003e0e1
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.140052cf0
xorps xmm1, xmm1
movdqu xmmword [rbp + 0x1d8], xmm1
mov qword [rbp + 0x1e8], rdi
mov r14d, edi
mov r15, qword [rbp + 0x200]
mov r13, qword [rbp + 0x1f8]
sub r15, r13
sar r15, 7
test r15, r15
je 0x14003e2dd
lea rax, [rsp + 0x30]
mov qword [rsp + 0x50], rax
lea rsi, [r13 + 0x50]
lea rcx, [rbp + 0x60]
call fcn.140042130
nop
lea r8, [rsi - 0x50]
cmp qword [rsi - 0x38], 7
jbe 0x14003e13f
mov r8, qword [r8]
mov rcx, qword [rsi - 0x40]
lea r9, [r8 + rcx*2]
lea rdx, [rbp - 0x60]
mov rcx, rax
call fcn.1400422e0
nop
lea rcx, [rbp + 0x60]
call fcn.140042040
nop
lea rcx, [rbp + 0xe0]
call fcn.140042130
nop
lea r8, [rsi - 0x10]
cmp qword [rsi + 8], 7
jbe 0x14003e179
mov r8, qword [r8]
mov rcx, qword [rsi]
lea r9, [r8 + rcx*2]
lea rdx, [rbp - 0x40]
mov rcx, rax
call fcn.1400422e0
nop
lea rcx, [rbp + 0xe0]
call fcn.140042040
nop
lea rcx, [rbp + 0x60]
call fcn.140042130
nop
lea r8, [rsi + 0x10]
cmp qword [rsi + 0x28], 7
jbe 0x14003e1b2
mov r8, qword [r8]
mov rcx, qword [rsi + 0x20]
lea r9, [r8 + rcx*2]
lea rdx, [rbp - 0x20]
mov rcx, rax
call fcn.1400422e0
nop
lea rcx, [rbp + 0x60]
call fcn.140042040
nop
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x30], xmm0
mov qword [rsp + 0x40], rdi
mov edx, 3
lea rcx, [rsp + 0x30]
call fcn.140040800
nop
lea rdi, [rbp - 0x60]
xorps xmm0, xmm0
movups xmmword [rbp + 0x180], xmm0
mov rbx, qword [rsp + 0x30]
mov qword [rbp + 0x180], rbx
mov qword [rbp + 0x188], rbx
lea rax, [rsp + 0x30]
mov qword [rbp + 0x190], rax
nop dword [rax]
mov rdx, rdi
mov rcx, rbx
call fcn.14003f6a0
add rbx, 0x20
mov qword [rbp + 0x188], rbx
add rdi, 0x20
lea rax, [rbp]
cmp rdi, rax
jne 0x14003e220
mov rdx, rbx
mov rcx, rbx
call fcn.140040110
mov qword [rsp + 0x38], rbx
mov rdx, qword [rbp + 0x1e0]
cmp rdx, qword [rbp + 0x1e8]
je 0x14003e293
mov rcx, qword [rsp + 0x40]
xor edi, edi
mov qword [rsp + 0x40], rdi
mov qword [rsp + 0x38], rdi
mov rax, qword [rsp + 0x30]
mov qword [rsp + 0x30], rdi
mov qword [rdx], rax
mov qword [rdx + 8], rbx
mov qword [rdx + 0x10], rcx
add qword [rbp + 0x1e0], 0x18
jmp 0x14003e2a6
lea r8, [rsp + 0x30]
lea rcx, [rbp + 0x1d8]
call fcn.140040ab0
xor edi, edi
lea rcx, [rsp + 0x30]
call fcn.14003f7c0
nop
lea r9, [fcn.14003f640]
mov edx, 0x20
lea r8d, [rdx - 0x1d]
lea rcx, [rbp - 0x60]
call fcn.140052c20
inc r14d
sub rsi, 0xffffffffffffff80
movsxd rax, r14d
cmp rax, r15
jb 0x14003e127
xorps xmm1, xmm1
movdqu xmmword [rbp + 0x1a8], xmm1
xor r15d, r15d
mov qword [rbp + 0x1b8], r15
lea rcx, [rbp + 0x1a8]
call fcn.14003c550
xorps xmm1, xmm1
movdqu xmmword [rbp + 0x1c0], xmm1
mov qword [rbp + 0x1d0], r15
mov r14d, r15d
mov rcx, qword [rbp + 0x1b0]
mov r8, qword [rbp + 0x1a8]
sub rcx, r8
movabs rax, 0x2aaaaaaaaaaaaaab
imul rcx
sar rdx, 4
mov rax, rdx
shr rax, 0x3f
add rdx, rax
je 0x14003e55b
lea rax, [rsp + 0x30]
mov qword [rsp + 0x50], rax
mov esi, r15d
movabs r13, 0x2aaaaaaaaaaaaaab
nop dword [rax]
lea rbx, [r8 + rsi]
lea rcx, [rbp + 0xe0]
call fcn.140042130
nop
lea r8, [rbx + 0x20]
cmp qword [rbx + 0x38], 7
jbe 0x14003e380
mov r8, qword [rbx + 0x20]
mov rcx, qword [rbx + 0x30]
lea r9, [r8 + rcx*2]
lea rdx, [rbp]
mov rcx, rax
call fcn.1400422e0
nop
lea rcx, [rbp + 0xe0]
call fcn.140042040
nop
mov rbx, qword [rbp + 0x1a8]
add rbx, rsi
lea rcx, [rbp + 0x60]
call fcn.140042130
nop
lea r8, [rbx + 0x40]
cmp qword [rbx + 0x58], 7
jbe 0x14003e3c5
mov r8, qword [rbx + 0x40]
mov rcx, qword [rbx + 0x50]
lea r9, [r8 + rcx*2]
lea rdx, [rbp + 0x20]
mov rcx, rax
call fcn.1400422e0
nop
lea rcx, [rbp + 0x60]
call fcn.140042040
nop
mov rbx, qword [rbp + 0x1a8]
add rbx, rsi
lea rcx, [rbp + 0xe0]
call fcn.140042130
nop
mov r8, rbx
cmp qword [rbx + 0x18], 7
jbe 0x14003e408
mov r8, qword [rbx]
mov rcx, qword [rbx + 0x10]
lea r9, [r8 + rcx*2]
lea rdx, [rbp + 0x40]
mov rcx, rax
call fcn.1400422e0
nop
lea rcx, [rbp + 0xe0]
call fcn.140042040
nop
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x30], xmm0
mov qword [rsp + 0x40], r15
mov edx, 3
lea rcx, [rsp + 0x30]
call fcn.140040800
nop
lea rdi, [rbp]
xorps xmm0, xmm0
movups xmmword [rbp + 0x180], xmm0
mov rbx, qword [rsp + 0x30]
mov qword [rbp + 0x180], rbx
mov qword [rbp + 0x188], rbx
lea rax, [rsp + 0x30]
mov qword [rbp + 0x190], rax
mov rdx, rdi
mov rcx, rbx
call fcn.14003f6a0
add rbx, 0x20
mov qword [rbp + 0x188], rbx
add rdi, 0x20
lea rax, [rbp + 0x60]
cmp rdi, rax
jne 0x14003e475
mov rdx, rbx
mov rcx, rbx
call fcn.140040110
mov qword [rsp + 0x38], rbx
mov rdx, qword [rbp + 0x1c8]
cmp rdx, qword [rbp + 0x1d0]
je 0x14003e4e6
mov rcx, qword [rsp + 0x40]
mov qword [rsp + 0x40], r15
mov qword [rsp + 0x38], r15
mov rax, qword [rsp + 0x30]
mov qword [rsp + 0x30], r15
mov qword [rdx], rax
mov qword [rdx + 8], rbx
mov qword [rdx + 0x10], rcx
add qword [rbp + 0x1c8], 0x18
jmp 0x14003e4f8
lea r8, [rsp + 0x30]
lea rcx, [rbp + 0x1c0]
call fcn.140040ab0
nop
lea rcx, [rsp + 0x30]
call fcn.14003f7c0
nop
lea r9, [fcn.14003f640]
mov edx, 0x20
lea r8d, [rdx - 0x1d]
lea rcx, [rbp]
call fcn.140052c20
inc r14d
add rsi, 0x60
mov rcx, qword [rbp + 0x1b0]
mov r8, qword [rbp + 0x1a8]
sub rcx, r8
mov rax, r13
imul rcx
sar rdx, 4
mov rax, rdx
shr rax, 0x3f
add rdx, rax
movsxd rax, r14d
cmp rax, rdx
jb 0x14003e360
mov r13, qword [rbp + 0x1f8]
lea rcx, [rsp + 0x50]
call fcn.14003c470
mov rcx, r12
call fcn.1400468d0
test eax, eax
jne 0x14003edc3
movabs r14, 0x4e94914f0000
xorps xmm7, xmm7
movss xmm6, dword [0x140079a28]
movss xmm8, dword [0x140079b4c]
movss xmm9, dword [0x140079aa4]
movss xmm10, dword [0x140079a70]
movss xmm11, dword [0x140079a68]
movss xmm12, dword [0x140079a5c]
mov rbx, qword [rsp + 0x50]
nop dword [rax]
add rbx, 0x2faf080
call fcn.140046560
mov rdi, qword [0x1400883e8]
test rdi, rdi
je 0x14003e5e1
mov rax, qword [rdi + 0xf0]
jmp 0x14003e5e4
mov rax, r15
cmp dword [rax + 0x28], 0
jne 0x14003e5f6
call fcn.1400029e0
mov rdi, qword [0x1400883e8]
test rdi, rdi
je 0x14003e604
mov rsi, qword [rdi + 0xe8]
jmp 0x14003e607
mov rsi, r15
lea r8, [rbp + 0x16c]
lea rdx, [rbp + 0x170]
mov rcx, qword [rsi]
call fcn.140046360
lea r8, [rbp + 0x174]
lea rdx, [rbp + 0x178]
mov rcx, qword [rsi]
call fcn.140046360
mov ecx, dword [rbp + 0x16c]
movd xmm0, ecx
cvtdq2ps xmm0, xmm0
mov eax, dword [rbp + 0x170]
movd xmm2, eax
cvtdq2ps xmm2, xmm2
movss dword [rdi + 0x10], xmm2
movss dword [rdi + 0x14], xmm0
test eax, eax
jle 0x14003e68d
test ecx, ecx
jle 0x14003e68d
movd xmm1, dword [rbp + 0x174]
cvtdq2ps xmm1, xmm1
divss xmm1, xmm0
movd xmm0, dword [rbp + 0x178]
cvtdq2ps xmm0, xmm0
divss xmm0, xmm2
movss dword [rdi + 0xc0], xmm0
movss dword [rdi + 0xc4], xmm1
call fcn.140047490
movsd xmm2, qword [rsi + 0x10]
comisd xmm2, xmm7
jbe 0x14003e6ad
movaps xmm1, xmm0
subsd xmm1, xmm2
xorps xmm2, xmm2
cvtsd2ss xmm2, xmm1
jmp 0x14003e6b0
movaps xmm2, xmm6
movss dword [rdi + 0x18], xmm2
movsd qword [rsi + 0x10], xmm0
call fcn.140001820
mov rsi, qword [0x1400883e8]
test rsi, rsi
je 0x14003e6d4
mov rdi, qword [rsi + 0xe8]
jmp 0x14003e6d7
mov rdi, r15
test byte [rsi + 8], 0x20
jne 0x14003e73e
mov edx, 0x33001
mov rcx, qword [rdi]
call fcn.140047230
cmp eax, 0x34003
je 0x14003e73e
mov rax, qword [0x1400883e8]
movsxd rcx, dword [rax + 0x1f78]
cmp ecx, 0xffffffff
je 0x14003e72b
cmp byte [rsi + 0xc8], 0
jne 0x14003e72b
mov rdx, qword [rdi + rcx*8 + 0x28]
test rdx, rdx
jne 0x14003e71b
mov rdx, qword [rdi + 0x28]
mov rcx, qword [rdi]
call fcn.140047590
mov r8d, 0x34001
jmp 0x14003e731
mov r8d, 0x34002
mov edx, 0x33001
mov rcx, qword [rdi]
call fcn.1400476f0
call fcn.1400019d0
call fcn.140008da0
mov dword [rbp + 0x168], r15d
mov dword [rbp + 0x164], r15d
lea r8, [rbp + 0x164]
lea rdx, [rbp + 0x168]
mov rcx, r12
call fcn.140046360
mov rcx, qword [0x1400883e8]
mov eax, dword [rcx + 0x1d08]
or eax, 1
mov dword [rcx + 0x1d08], eax
mov qword [rcx + 0x1d18], 0
mov qword [rcx + 0x1d20], 0
mov dword [rcx + 0x1d0c], 1
movd xmm1, dword [rbp + 0x164]
cvtdq2ps xmm1, xmm1
movd xmm0, dword [rbp + 0x168]
cvtdq2ps xmm0, xmm0
or eax, 2
mov dword [rcx + 0x1d08], eax
movss dword [rcx + 0x1d28], xmm0
movss dword [rcx + 0x1d2c], xmm1
mov dword [rcx + 0x1d10], 1
xor edx, edx
lea r8d, [rdx + 0x27]
lea rcx, str.Driver_Seeker
call fcn.14000e4c0
movaps xmm0, xmm8
call fcn.140011490
mov dword [rbp + 0x1f0], r15d
mov dword [rbp + 0x160], r15d
lea r8, [rbp + 0x160]
lea rdx, [rbp + 0x1f0]
mov rcx, r12
call fcn.140046360
call fcn.140038e80
test al, al
je 0x14003ecc1
lea rcx, str.System_Drivers
call fcn.14003ab40
test al, al
je 0x14003ea76
xorps xmm0, xmm0
movups xmmword [rsp + 0x60], xmm0
mov qword [rsp + 0x70], r15
mov qword [rsp + 0x78], r15
mov r8d, 0xb
lea rdx, str.drivers.txt
lea rcx, [rsp + 0x60]
call fcn.14003ffd0
nop
xorps xmm0, xmm0
movups xmmword [rsp + 0x30], xmm0
mov qword [rsp + 0x40], 0xe
mov qword [rsp + 0x48], 0xf
movsd xmm0, qword [str.System_Drivers]
movsd qword [rsp + 0x30], xmm0
mov eax, dword [0x140079690]
mov dword [rsp + 0x38], eax
movzx eax, word [0x140079694]
mov word [rsp + 0x3c], ax
mov byte [rsp + 0x3e], 0
xorps xmm0, xmm0
movups xmmword [rbp + 0x180], xmm0
mov qword [rbp + 0x190], 7
mov qword [rbp + 0x198], 0xf
mov rax, qword [str.hwidraw]
mov dword [rbp + 0x180], eax
movzx eax, word [0x1400796b4]
mov word [rbp + 0x184], ax
movzx eax, byte [0x1400796b6]
mov byte [rbp + 0x186], al
mov byte [rbp + 0x187], 0
mov qword [rbp - 0x68], 0
mov eax, dword [rbp + 0x160]
add eax, 0xffffff97
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mov dword [rbp - 0x78], 0
movss dword [rbp - 0x74], xmm0
lea rax, [rbp + 0x1d8]
mov qword [rsp + 0x28], rax
lea rax, [rsp + 0x60]
mov qword [rsp + 0x20], rax
lea r9, [rbp - 0x68]
lea r8, [rbp - 0x78]
lea rdx, [rsp + 0x30]
lea rcx, [rbp + 0x180]
call fcn.140042a50
nop
mov rdx, qword [rbp + 0x198]
cmp rdx, 0xf
jbe 0x14003e98c
inc rdx
mov rcx, qword [rbp + 0x180]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14003e987
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003eddc
call fcn.140052cf0
mov qword [rbp + 0x190], r15
mov qword [rbp + 0x198], 0xf
mov byte [rbp + 0x180], 0
mov rdx, qword [rsp + 0x48]
cmp rdx, 0xf
jbe 0x14003e9e2
inc rdx
mov rcx, qword [rsp + 0x30]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14003e9dd
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003ede3
call fcn.140052cf0
mov qword [rsp + 0x40], r15
mov qword [rsp + 0x48], 0xf
mov byte [rsp + 0x30], 0
mov rdx, qword [rsp + 0x78]
cmp rdx, 7
jbe 0x14003ea37
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x60]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14003ea32
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003edea
call fcn.140052cf0
mov rdx, qword [0x1400883e8]
mov r8, qword [rdx + 0x1c10]
cmp byte [r8 + 0x93], 0
jne 0x14003ea76
mov rdx, qword [rdx + 0x2088]
test rdx, rdx
je 0x14003ea76
movsx rax, word [rdx + 0x70]
lea rcx, [rax + rax*4]
mov rax, qword [rdx + 8]
test byte [rax + rcx*8 + 4], 8
jne 0x14003ea76
dec dword [r8 + 0xc8]
lea rcx, str.Utilities
call fcn.14003ab40
test al, al
je 0x14003ecbc
xorps xmm0, xmm0
movups xmmword [rsp + 0x60], xmm0
mov qword [rsp + 0x70], r15
mov qword [rsp + 0x78], r15
mov r8d, 0xd
lea rdx, str.utilities.txt
lea rcx, [rsp + 0x60]
call fcn.14003ffd0
nop
xorps xmm0, xmm0
movups xmmword [rbp + 0x180], xmm0
mov qword [rbp + 0x190], 0xe
mov qword [rbp + 0x198], 0xf
movsd xmm0, qword [str.Uninstall_List]
movsd qword [rbp + 0x180], xmm0
mov eax, dword [0x1400796f0]
mov dword [rbp + 0x188], eax
movzx eax, word [0x1400796f4]
mov word [rbp + 0x18c], ax
mov byte [rbp + 0x18e], 0
xorps xmm0, xmm0
movups xmmword [rsp + 0x30], xmm0
mov qword [rsp + 0x40], 6
mov qword [rsp + 0x48], 0xf
mov eax, dword [str.uninst]
mov dword [rsp + 0x30], eax
movzx eax, word [0x1400796fc]
mov word [rsp + 0x34], ax
mov byte [rsp + 0x36], 0
mov qword [rbp - 0x70], 0
mov eax, dword [rbp + 0x160]
add eax, 0xffffff97
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mov dword [rsp + 0x50], 0
movss dword [rsp + 0x54], xmm0
lea rax, [rbp + 0x1c0]
mov qword [rsp + 0x28], rax
lea rax, [rsp + 0x60]
mov qword [rsp + 0x20], rax
lea r9, [rbp - 0x70]
lea r8, [rsp + 0x50]
lea rdx, [rbp + 0x180]
lea rcx, [rsp + 0x30]
call fcn.140042a50
nop
mov rdx, qword [rsp + 0x48]
cmp rdx, 0xf
jbe 0x14003ebce
inc rdx
mov rcx, qword [rsp + 0x30]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14003ebc9
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003edf1
call fcn.140052cf0
mov qword [rsp + 0x40], r15
mov qword [rsp + 0x48], 0xf
mov byte [rsp + 0x30], 0
mov rdx, qword [rbp + 0x198]
cmp rdx, 0xf
jbe 0x14003ec22
inc rdx
mov rcx, qword [rbp + 0x180]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14003ec1d
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003edf8
call fcn.140052cf0
mov qword [rbp + 0x190], r15
mov qword [rbp + 0x198], 0xf
mov byte [rbp + 0x180], 0
mov rdx, qword [rsp + 0x78]
cmp rdx, 7
jbe 0x14003ec7d
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x60]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14003ec78
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003edff
call fcn.140052cf0
mov rdx, qword [0x1400883e8]
mov r8, qword [rdx + 0x1c10]
cmp byte [r8 + 0x93], 0
jne 0x14003ecbc
mov rdx, qword [rdx + 0x2088]
test rdx, rdx
je 0x14003ecbc
movsx rax, word [rdx + 0x70]
lea rcx, [rax + rax*4]
mov rax, qword [rdx + 8]
test byte [rax + rcx*8 + 4], 8
jne 0x14003ecbc
dec dword [r8 + 0xc8]
call fcn.140039340
call fcn.140010840
call fcn.14000b170
lea r8, [rbp + 0x1f4]
lea rdx, [rbp + 0x1a0]
mov rcx, r12
call fcn.140046360
mov r9d, dword [rbp + 0x1f4]
mov r8d, dword [rbp + 0x1a0]
xor edx, edx
xor ecx, ecx
call qword [sym.imp.OPENGL32.dll_glViewport]
movaps xmm3, xmm9
movaps xmm2, xmm10
movaps xmm1, xmm11
movaps xmm0, xmm12
call qword [sym.imp.OPENGL32.dll_glClearColor]
mov ecx, 0x4000
call qword [sym.imp.OPENGL32.dll_glClear]
mov rax, qword [0x1400883e8]
mov rcx, qword [rax + 0x1e00]
mov rax, qword [rcx]
add rax, 0x40
mov rcx, r15
cmp byte [rax], 0
cmovne rcx, rax
call fcn.1400022d0
mov rcx, r12
call fcn.14004cc50
lea rcx, [rbp - 0x80]
call fcn.14003c470
mov rax, qword [rbp - 0x80]
cmp rax, rbx
jge 0x14003edb3
movabs r15, 0x431bde82d7b634db
mov rcx, rbx
sub rcx, rax
cmp rcx, r14
jl 0x14003ed74
mov ecx, 0x5265c00
jmp 0x14003ed99
mov rax, r15
imul rcx
sar rdx, 0x12
mov rax, rdx
shr rax, 0x3f
add rdx, rax
imul rax, rdx, 0xf4240
cmp rax, rcx
jge 0x14003ed97
inc rdx
mov ecx, edx
call sub.KERNEL32.dll_Sleep
lea rcx, [rbp - 0x80]
call fcn.14003c470
mov rax, qword [rbp - 0x80]
cmp rax, rbx
jl 0x14003ed62
xor r15d, r15d
mov rcx, r12
call fcn.1400468d0
test eax, eax
je 0x14003e5c0
mov rbx, qword [0x1400883e8]
lea r14, [rbx + 8]
test rbx, rbx
je 0x14003ee06
mov rdi, qword [rbx + 0xf0]
jmp 0x14003ee09
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
mov rdi, r15
cmp dword [rdi + 0x40], 0
je 0x14003ee29
lea rdx, [rdi + 0x40]
mov ecx, 1
call qword [0x1400882a8]
mov dword [rdi + 0x40], r15d
mov rbx, qword [0x1400883e8]
cmp dword [rdi + 0x44], 0
je 0x14003ee49
lea rdx, [rdi + 0x44]
mov ecx, 1
call qword [0x1400882a8]
mov dword [rdi + 0x44], r15d
mov rbx, qword [0x1400883e8]
mov ecx, dword [rdi + 0x28]
test ecx, ecx
je 0x14003ee61
call qword [0x1400882b0]
mov dword [rdi + 0x28], r15d
mov rbx, qword [0x1400883e8]
test rbx, rbx
je 0x14003ee6f
mov rsi, qword [rbx + 0xf0]
jmp 0x14003ee72
mov rsi, r15
cmp dword [rsi + 0x24], 0
je 0x14003ee9d
lea rdx, [rsi + 0x24]
mov ecx, 1
call qword [0x1400882c0]
mov rax, qword [rbx + 0xa8]
mov qword [rax + 8], r15
mov dword [rsi + 0x24], r15d
mov rbx, qword [0x1400883e8]
mov qword [r14 + 0xd8], r15
mov qword [r14 + 0xe8], r15
test rdi, rdi
je 0x14003eecb
test rbx, rbx
je 0x14003eebb
dec dword [rbx + 0x3b0]
mov rcx, rdi
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov rbx, qword [0x1400883e8]
test rbx, rbx
je 0x14003eed9
mov rdi, qword [rbx + 0xe8]
jmp 0x14003eedc
mov rdi, r15
cmp byte [rdi + 0x70], 0
je 0x14003ef45
mov rdx, qword [rdi + 0x78]
mov rcx, qword [rdi]
call fcn.140046580
mov rdx, qword [rdi + 0x80]
mov rcx, qword [rdi]
call fcn.1400475b0
mov rdx, qword [rdi + 0x88]
mov rcx, qword [rdi]
call fcn.140047910
mov rdx, qword [rdi + 0x90]
mov rcx, qword [rdi]
call fcn.140047950
mov rdx, qword [rdi + 0x98]
mov rcx, qword [rdi]
call fcn.1400478d0
mov rdx, qword [rdi + 0xa0]
mov rcx, qword [rdi]
call fcn.140047530
mov rcx, qword [rdi + 0xa8]
call fcn.140048930
lea rsi, [rdi + 0x28]
mov r14d, 9
nop
mov rcx, qword [rsi]
call fcn.1400470d0
lea rsi, [rsi + 8]
sub r14, 1
jne 0x14003ef50
mov qword [rbx + 0xd8], r15
mov qword [rbx + 0xe8], r15
mov rax, qword [0x1400883e8]
test rax, rax
je 0x14003ef82
dec dword [rax + 0x3b0]
mov rcx, rdi
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov rbx, qword [0x1400883e8]
mov rcx, rbx
call fcn.14000a2b0
cmp qword [0x1400883e8], rbx
jne 0x14003efaa
mov qword [0x1400883e8], r15
test rbx, rbx
je 0x14003efd2
mov rcx, rbx
call fcn.140018390
mov rax, qword [0x1400883e8]
test rax, rax
je 0x14003efc9
dec dword [rax + 0x3b0]
mov rcx, rbx
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov rcx, r12
call fcn.140046280
call fcn.14004be40
nop
mov rbx, qword [rbp + 0x1c0]
test rbx, rbx
je 0x14003f08c
mov rdi, qword [rbp + 0x1c8]
cmp rbx, rdi
je 0x14003f018
nop dword [rax]
mov rcx, rbx
call fcn.14003f7c0
add rbx, 0x18
cmp rbx, rdi
jne 0x14003f000
mov rbx, qword [rbp + 0x1c0]
mov rcx, qword [rbp + 0x1d0]
sub rcx, rbx
movabs rsi, 0x2aaaaaaaaaaaaaab
mov rax, rsi
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
lea rdx, [rdx + rdx*2]
shl rdx, 3
mov rax, rbx
cmp rdx, 0x1000
jb 0x14003f070
add rdx, 0x27
mov rbx, qword [rbx - 8]
sub rax, rbx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14003f070
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
mov rcx, rbx
call fcn.140052cf0
xorps xmm0, xmm0
movdqu xmmword [rbp + 0x1c0], xmm0
mov qword [rbp + 0x1d0], r15
jmp 0x14003f096
movabs rsi, 0x2aaaaaaaaaaaaaab
mov rbx, qword [rbp + 0x1a8]
test rbx, rbx
je 0x14003f132
mov rdi, qword [rbp + 0x1b0]
cmp rbx, rdi
je 0x14003f0ca
mov rcx, rbx
call fcn.14003dd10
add rbx, 0x60
cmp rbx, rdi
jne 0x14003f0b2
mov rbx, qword [rbp + 0x1a8]
mov rcx, qword [rbp + 0x1b8]
sub rcx, rbx
mov rax, rsi
imul rcx
sar rdx, 4
mov rax, rdx
shr rax, 0x3f
add rdx, rax
lea rdx, [rdx + rdx*2]
shl rdx, 5
mov rax, rbx
cmp rdx, 0x1000
jb 0x14003f118
add rdx, 0x27
mov rbx, qword [rbx - 8]
sub rax, rbx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14003f118
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
mov rcx, rbx
call fcn.140052cf0
xorps xmm0, xmm0
movdqu xmmword [rbp + 0x1a8], xmm0
mov qword [rbp + 0x1b8], r15
mov rbx, qword [rbp + 0x1d8]
test rbx, rbx
je 0x14003f1d0
mov rdi, qword [rbp + 0x1e0]
cmp rbx, rdi
je 0x14003f168
nop
mov rcx, rbx
call fcn.14003f7c0
add rbx, 0x18
cmp rbx, rdi
jne 0x14003f150
mov rbx, qword [rbp + 0x1d8]
mov rcx, qword [rbp + 0x1e8]
sub rcx, rbx
mov rax, rsi
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
lea rdx, [rdx + rdx*2]
shl rdx, 3
mov rax, rbx
cmp rdx, 0x1000
jb 0x14003f1b6
add rdx, 0x27
mov rbx, qword [rbx - 8]
sub rax, rbx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14003f1b6
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
mov rcx, rbx
call fcn.140052cf0
xorps xmm0, xmm0
movdqu xmmword [rbp + 0x1d8], xmm0
mov qword [rbp + 0x1e8], r15
test r13, r13
je 0x14003f233
mov rbx, r13
mov rdi, qword [rbp + 0x200]
cmp r13, rdi
je 0x14003f1f5
mov rcx, rbx
call fcn.140040f80
sub rbx, 0xffffffffffffff80
cmp rbx, rdi
jne 0x14003f1e4
mov rdx, qword [rbp + 0x208]
sub rdx, r13
and rdx, 0xffffffffffffff80
mov rax, r13
cmp rdx, 0x1000
jb 0x14003f22b
add rdx, 0x27
mov r13, qword [r13 - 8]
sub rax, r13
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14003f22b
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
mov rcx, r13
call fcn.140052cf0
xor eax, eax
jmp 0x14003f23c
mov eax, 1
mov rcx, qword [rbp + 0x210]
xor rcx, rsp
call fcn.1400529c0
lea r11, [rsp + 0x390]
mov rbx, qword [r11 + 0x30]
mov rsi, qword [r11 + 0x38]
mov rdi, qword [r11 + 0x40]
movaps xmm6, xmmword [r11 - 0x10]
movaps xmm7, xmmword [r11 - 0x20]
movaps xmm8, xmmword [r11 - 0x30]
movaps xmm9, xmmword [r11 - 0x40]
movaps xmm10, xmmword [r11 - 0x50]
movaps xmm11, xmmword [r11 - 0x60]
movaps xmm12, xmmword [r11 - 0x70]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret