Function at 0x180031d74
Capabilities:
Link many functions at runtime

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], rdi
mov qword [rax + 0x20], r13
push rbp
push r14
push r15
lea rbp, [rax - 0x5f]
sub rsp, 0x100
lea rdx, str.client.dll
lea rcx, [rsp + 0x20]
call fcn.180031c7c
lea rdx, str.schemasystem.dll
lea rcx, [rbp - 0x79]
call fcn.180031c7c
lea rdx, str.SDL3.dll
lea rcx, [rbp + 0x27]
call fcn.180031c7c
lea rdx, str.tier0.dll
lea rcx, [rbp + 7]
call fcn.180031c7c
lea rdx, str.particles.dll
lea rcx, [rbp - 0x59]
call fcn.180031c7c
lea rdx, str.scenesystem.dll
lea rcx, [rbp - 0x39]
call fcn.180031c7c
lea rdx, str.materialsystem2.dll
lea rcx, [rbp - 0x19]
call fcn.180031c7c
mov r14, qword [rsp + 0x20]
lea rdi, [0x180000000]
mov r15, qword [rsp + 0x28]
xor eax, eax
mov rsi, qword [rsp + 0x30]
lea r13d, [rax + 1]
test r14, r14
je 0x180031e68
xor edx, edx
lea r10, [rsi - 8]
test r10, r10
je 0x180031e68
xor r9d, r9d
xor r8d, r8d
mov ebx, dword [r8 + rdi + 0xba270]
lea r11, [rdx + r15]
movzx ecx, byte [r11 + r9]
cmp ecx, ebx
je 0x180031e58
cmp ebx, 0xffffffff
jne 0x180032447
add r9, r13
add r8, 4
cmp r8, 0x20
jb 0x180031e3a
mov rax, r11
mov qword [0x1800ccf08], rax
xor eax, eax
test r14, r14
je 0x180031ec6
xor r8d, r8d
lea r11, [rsi - 9]
test r11, r11
je 0x180031ec6
xor r10d, r10d
xor r9d, r9d
mov ebx, dword [r9 + rdi + 0xba030]
lea rdx, [r8 + r15]
movzx ecx, byte [rdx + r10]
cmp ecx, ebx
je 0x180031ea6
cmp ebx, 0xffffffff
jne 0x180032458
add r10, r13
add r9, 4
cmp r9, 0x24
jb 0x180031e88
mov rax, rdx
test rdx, rdx
je 0x180031ec6
movsxd rax, dword [rdx + 3]
add rax, 7
add rax, rdx
mov qword [0x1800ccf10], rax
xor eax, eax
cmp qword [rbp - 0x79], rax
je 0x180031f27
mov r10, qword [rbp - 0x69]
xor edx, edx
add r10, 0xfffffffffffffff1
je 0x180031f27
mov rdi, qword [rbp - 0x71]
xor r9d, r9d
xor r8d, r8d
lea rcx, [0x180000000]
mov ebx, dword [r8 + rcx + 0xba328]
lea r11, [rdi + rdx]
movzx ecx, byte [r11 + r9]
cmp ecx, ebx
je 0x180031f10
cmp ebx, 0xffffffff
jne 0x180032469
add r9, r13
add r8, 4
cmp r8, 0x3c
jb 0x180031eeb
mov rax, r11
lea rdi, [0x180000000]
mov qword [0x1800cd058], rax
xor eax, eax
test r14, r14
je 0x180031f74
xor edx, edx
lea r10, [rsi - 0x12]
test r10, r10
je 0x180031f74
xor r9d, r9d
xor r8d, r8d
mov ebx, dword [r8 + rdi + 0xba2e0]
lea r11, [rdx + r15]
movzx ecx, byte [r11 + r9]
cmp ecx, ebx
je 0x180031f64
cmp ebx, 0xffffffff
jne 0x18003247a
add r9, r13
add r8, 4
cmp r8, 0x48
jb 0x180031f46
mov rax, r11
mov qword [0x1800ccf50], rax
xor eax, eax
test r14, r14
je 0x180031fd2
xor r8d, r8d
lea r11, [rsi - 0xf]
test r11, r11
je 0x180031fd2
xor r10d, r10d
xor r9d, r9d
mov ebx, dword [r9 + rdi + 0xba188]
lea rdx, [r8 + r15]
movzx ecx, byte [rdx + r10]
cmp ecx, ebx
je 0x180031fb2
cmp ebx, 0xffffffff
jne 0x18003248b
add r10, r13
add r9, 4
cmp r9, 0x3c
jb 0x180031f94
mov rax, rdx
test rdx, rdx
je 0x180031fd2
movsxd rax, dword [rdx + 1]
add rax, 5
add rax, rdx
mov qword [0x1800ccfb0], rax
xor eax, eax
test r14, r14
je 0x180032030
xor r8d, r8d
lea r11, [rsi - 9]
test r11, r11
je 0x180032030
xor r10d, r10d
xor r9d, r9d
mov ebx, dword [r9 + rdi + 0xba058]
lea rdx, [r8 + r15]
movzx ecx, byte [rdx + r10]
cmp ecx, ebx
je 0x180032010
cmp ebx, 0xffffffff
jne 0x18003249c
add r10, r13
add r9, 4
cmp r9, 0x24
jb 0x180031ff2
mov rax, rdx
test rdx, rdx
je 0x180032030
movsxd rax, dword [rdx + 1]
add rax, 5
add rax, rdx
mov qword [0x1800ccfa0], rax
xor eax, eax
test r14, r14
je 0x18003208e
xor r8d, r8d
lea r11, [rsi - 0x10]
test r11, r11
je 0x18003208e
xor r10d, r10d
xor r9d, r9d
mov ebx, dword [r9 + rdi + 0xb9fa0]
lea rdx, [r8 + r15]
movzx ecx, byte [rdx + r10]
cmp ecx, ebx
je 0x18003206e
cmp ebx, 0xffffffff
jne 0x1800324ad
add r10, r13
add r9, 4
cmp r9, 0x40
jb 0x180032050
mov rax, rdx
test rdx, rdx
je 0x18003208e
movsxd rax, dword [rdx + 1]
add rax, 5
add rax, rdx
mov qword [0x1800ccfc0], rax
xor eax, eax
test r14, r14
je 0x1800320ec
xor r8d, r8d
lea r11, [rsi - 0xc]
test r11, r11
je 0x1800320ec
xor r10d, r10d
xor r9d, r9d
mov ebx, dword [r9 + rdi + 0xba368]
lea rdx, [r8 + r15]
movzx ecx, byte [rdx + r10]
cmp ecx, ebx
je 0x1800320cc
cmp ebx, 0xffffffff
jne 0x1800324be
add r10, r13
add r9, 4
cmp r9, 0x30
jb 0x1800320ae
mov rax, rdx
test rdx, rdx
je 0x1800320ec
movsxd rax, dword [rdx + 1]
add rax, 5
add rax, rdx
mov qword [0x1800ccec0], rax
xor eax, eax
test r14, r14
je 0x18003214a
xor r8d, r8d
lea r11, [rsi - 0x1d]
test r11, r11
je 0x18003214a
xor r10d, r10d
xor r9d, r9d
mov ebx, dword [r9 + rdi + 0xba1d0]
lea rdx, [r8 + r15]
movzx ecx, byte [r10 + rdx]
cmp ecx, ebx
je 0x18003212a
cmp ebx, 0xffffffff
jne 0x1800324cf
add r10, r13
add r9, 4
cmp r9, 0x74
jb 0x18003210c
mov rax, rdx
test rdx, rdx
je 0x18003214a
movsxd rax, dword [rdx + 1]
add rax, 5
add rax, rdx
mov qword [0x1800ccfb8], rax
xor eax, eax
test r14, r14
je 0x1800321a8
xor r8d, r8d
lea r11, [rsi - 9]
test r11, r11
je 0x1800321a8
xor r10d, r10d
xor r9d, r9d
mov ebx, dword [r9 + rdi + 0xba290]
lea rdx, [r8 + r15]
movzx ecx, byte [r10 + rdx]
cmp ecx, ebx
je 0x180032188
cmp ebx, 0xffffffff
jne 0x1800324e0
add r10, r13
add r9, 4
cmp r9, 0x24
jb 0x18003216a
mov rax, rdx
test rdx, rdx
je 0x1800321a8
movsxd rax, dword [rdx + 1]
add rax, 5
add rax, rdx
mov qword [0x1800ccfd8], rax
xor eax, eax
test r14, r14
je 0x1800321f5
xor edx, edx
lea r10, [rsi - 0xc]
test r10, r10
je 0x1800321f5
xor r9d, r9d
xor r8d, r8d
mov ebx, dword [r8 + rdi + 0xb9f08]
lea r11, [rdx + r15]
movzx ecx, byte [r9 + r11]
cmp ecx, ebx
je 0x1800321e5
cmp ebx, 0xffffffff
jne 0x1800324f1
add r9, r13
add r8, 4
cmp r8, 0x30
jb 0x1800321c7
mov rax, r11
mov qword [0x1800ccf60], rax
xor eax, eax
test r14, r14
je 0x18003225b
xor r8d, r8d
lea r11, [rsi - 0x1d]
test r11, r11
je 0x18003225b
xor r10d, r10d
xor r9d, r9d
mov ebx, dword [r9 + rdi + 0xba110]
lea rdx, [r8 + r15]
movzx ecx, byte [r10 + rdx]
cmp ecx, ebx
je 0x180032233
cmp ebx, 0xffffffff
jne 0x180032502
add r10, r13
add r9, 4
cmp r9, 0x74
jb 0x180032215
mov rax, rdx
test rdx, rdx
je 0x180032253
movsxd rax, dword [rdx + 3]
add rax, 7
add rax, rdx
test rax, rax
je 0x18003225b
mov rax, qword [rax]
mov rdi, qword [rbp + 7]
mov qword [0x1800ccf58], rax
xor eax, eax
test rdi, rdi
je 0x18003227d
lea rdx, str.RandomInt
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x1800ccfa8], rax
xor eax, eax
test rdi, rdi
je 0x18003229b
lea rdx, str.RandomSeed
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x1800ccfd0], rax
xor eax, eax
test rdi, rdi
je 0x1800322b9
lea rdx, str._LoadKV3__YA_NPEAVKeyValues3__PEAVCUtlString__PEAVCUtlBuffer__AEBUKV3ID_t__PEBD_Z
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x1800ccec8], rax
xor eax, eax
test r14, r14
je 0x18003231e
xor r8d, r8d
lea r11, [rsi - 0xa]
test r11, r11
je 0x18003231e
xor r10d, r10d
xor r9d, r9d
lea rcx, [0x180000000]
mov ebx, dword [r9 + rcx + 0xba2b8]
lea rdx, [r8 + r15]
movzx ecx, byte [r10 + rdx]
cmp ecx, ebx
je 0x1800322fe
cmp ebx, 0xffffffff
jne 0x180032513
add r10, r13
add r9, 4
cmp r9, 0x28
jb 0x1800322d9
mov rax, rdx
test rdx, rdx
je 0x18003231e
movsxd rax, dword [rdx + 6]
add rax, 0xa
add rax, rdx
mov rsi, qword [rbp - 0x59]
mov r15, qword [rbp - 0x51]
mov r14, qword [rbp - 0x49]
mov qword [0x1800cced0], rax
xor eax, eax
test rsi, rsi
je 0x18003238f
xor r8d, r8d
lea r11, [r14 - 0x14]
test r11, r11
je 0x18003238f
xor r10d, r10d
xor r9d, r9d
lea rcx, [0x180000000]
mov ebx, dword [r9 + rcx + 0xb9fe0]
lea rdx, [r15 + r8]
movzx ecx, byte [r10 + rdx]
cmp ecx, ebx
je 0x18003236f
cmp ebx, 0xffffffff
jne 0x180032524
add r10, r13
add r9, 4
cmp r9, 0x50
jb 0x18003234a
mov rax, rdx
test rdx, rdx
je 0x18003238f
movsxd rax, dword [rdx + 0x20]
add rax, 0x24
add rax, rdx
mov qword [0x1800ccfe0], rax
xor eax, eax
test rsi, rsi
je 0x1800323e6
xor edx, edx
lea r10, [r14 - 0x22]
test r10, r10
je 0x1800323e6
xor r9d, r9d
xor r8d, r8d
lea rcx, [0x180000000]
mov ebx, dword [r8 + rcx + 0xba080]
lea r11, [r15 + rdx]
movzx ecx, byte [r9 + r11]
cmp ecx, ebx
je 0x1800323d3
cmp ebx, 0xffffffff
jne 0x180032535
add r9, r13
add r8, 4
cmp r8, 0x88
jb 0x1800323ae
mov rax, r11
mov qword [0x1800ccfc8], rax
xor eax, eax
test rsi, rsi
je 0x180032554
lea r10, [r14 - 0x11]
xor edx, edx
lea r14, [0x180000000]
test r10, r10
je 0x18003255b
xor r9d, r9d
xor r8d, r8d
mov ebx, dword [r8 + r14 + 0xb9ec0]
lea r11, [r15 + rdx]
movzx ecx, byte [r9 + r11]
cmp ecx, ebx
je 0x180032432
cmp ebx, 0xffffffff
jne 0x180032546
add r9, r13
add r8, 4
cmp r8, 0x44
jb 0x180032414
mov rax, r11
jmp 0x18003255b
add rdx, r13
cmp rdx, r10
jb 0x180031e34
jmp 0x180031e68
add r8, r13
cmp r8, r11
jb 0x180031e82
jmp 0x180031ec6
add rdx, r13
cmp rdx, r10
jb 0x180031ee5
jmp 0x180031f20
add rdx, r13
cmp rdx, r10
jb 0x180031f40
jmp 0x180031f74
add r8, r13
cmp r8, r11
jb 0x180031f8e
jmp 0x180031fd2
add r8, r13
cmp r8, r11
jb 0x180031fec
jmp 0x180032030
add r8, r13
cmp r8, r11
jb 0x18003204a
jmp 0x18003208e
add r8, r13
cmp r8, r11
jb 0x1800320a8
jmp 0x1800320ec
add r8, r13
cmp r8, r11
jb 0x180032106
jmp 0x18003214a
add r8, r13
cmp r8, r11
jb 0x180032164
jmp 0x1800321a8
add rdx, r13
cmp rdx, r10
jb 0x1800321c1
jmp 0x1800321f5
add r8, r13
cmp r8, r11
jb 0x18003220f
jmp 0x18003225b
add r8, r13
cmp r8, r11
jb 0x1800322d3
jmp 0x18003231e
add r8, r13
cmp r8, r11
jb 0x180032344
jmp 0x18003238f
add rdx, r13
cmp rdx, r10
jb 0x1800323a8
jmp 0x1800323e6
add rdx, r13
cmp rdx, r10
jb 0x18003240e
jmp 0x18003255b
lea r14, [0x180000000]
mov qword [0x1800ccf98], rax
xor eax, eax
cmp qword [rbp - 0x39], rax
je 0x1800325ae
mov r10, qword [rbp - 0x29]
xor edx, edx
add r10, 0xfffffffffffffff6
je 0x1800325ae
mov rsi, qword [rbp - 0x31]
xor r9d, r9d
xor r8d, r8d
mov ebx, dword [r8 + r14 + 0xba248]
lea r11, [rsi + rdx]
movzx ecx, byte [r9 + r11]
cmp ecx, ebx
je 0x18003259e
cmp ebx, 0xffffffff
jne 0x1800326cb
add r9, r13
add r8, 4
cmp r8, 0x28
jb 0x180032580
mov rax, r11
mov qword [0x1800ccf28], rax
xor eax, eax
cmp qword [rbp - 0x19], rax
je 0x180032601
mov r11, qword [rbp - 9]
xor edx, edx
add r11, 0xffffffffffffffe8
je 0x180032601
mov rsi, qword [rbp - 0x11]
xor r9d, r9d
xor r8d, r8d
mov ebx, dword [r8 + r14 + 0xb9f40]
lea r10, [rsi + rdx]
movzx ecx, byte [r9 + r10]
cmp ecx, ebx
je 0x1800325f1
cmp ebx, 0xffffffff
jne 0x1800326dc
add r9, r13
add r8, 4
cmp r8, 0x60
jb 0x1800325d3
mov rax, r10
mov qword [0x1800cd050], rax
xor eax, eax
test rdi, rdi
je 0x18003261f
lea rdx, str.__3KeyValues__SAXPEAXHPEBDH_Z
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rbx, qword [rbp + 0x27]
mov qword [0x1800cced8], rax
xor eax, eax
test rbx, rbx
je 0x180032641
lea rdx, str.SDL_SetRelativeMouseMode
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x1800ccf80], rax
xor eax, eax
test rbx, rbx
je 0x18003265f
lea rdx, str.SDL_SetWindowGrab
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x1800ccf70], rax
xor eax, eax
test rbx, rbx
je 0x18003267d
lea rdx, str.SDL_WarpMouseInWindow
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x1800ccf78], rax
xor eax, eax
test rdi, rdi
je 0x18003269b
lea rdx, str.g_pMemAlloc
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
test rax, rax
je 0x1800326aa
mov rax, qword [rax]
mov qword [0x1800cd060], rax
lea r11, [rsp + 0x100]
mov rbx, qword [r11 + 0x20]
mov rsi, qword [r11 + 0x28]
mov rdi, qword [r11 + 0x30]
mov r13, qword [r11 + 0x38]
mov rsp, r11
pop r15
pop r14
pop rbp
ret
add rdx, r13
cmp rdx, r10
jb 0x18003257a
jmp 0x1800325ae
add rdx, r13
cmp rdx, r11
jb 0x1800325cd
jmp 0x180032601