Function at 0x1801506d0
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, 0x6e8
movaps xmmword [rsp + 0x6d0], xmm6
mov r12, r9
mov ebp, r8d
mov r15, rdx
mov rbx, rcx
mov rax, qword [0x1804a9038]
xor rax, rsp
mov qword [rsp + 0x6c8], rax
mov r8, qword [rcx]
mov r14d, ebp
mov r9, qword [r8 + 0x200]
test r9, r9
je 0x1801507f7
mov rax, r9
shr rax, 1
movabs rcx, 0x5555555555555555
and rcx, rax
mov rax, r9
sub rax, rcx
movabs rcx, 0x3333333333333333
mov rdx, rax
and rdx, rcx
shr rax, 2
and rax, rcx
add rax, rdx
mov rcx, rax
shr rcx, 4
add rcx, rax
movabs rax, 0xf0f0f0f0f0f0f0f
and rax, rcx
movabs r10, 0x101010101010101
imul r10, rax
shr r10, 0x38
cmp r10, 1
jbe 0x180150796
mov rcx, r14
cmp r9, r14
ja 0x1801507a3
mov rax, r14
xor edx, edx
div r9
mov rcx, rdx
jmp 0x1801507a3
mov eax, 0xffffffff
add eax, r9d
mov ecx, r14d
and ecx, eax
mov rax, qword [r8 + 0x1f8]
mov rax, qword [rax + rcx*8]
test rax, rax
je 0x1801507f7
mov r11, qword [rax]
test r11, r11
je 0x1801507f7
lea rsi, [r9 - 1]
jmp 0x1801507cf
cmp dword [r11 + 0x10], ebp
je 0x1801507fa
mov r11, qword [r11]
test r11, r11
je 0x1801507f7
mov rax, qword [r11 + 8]
cmp rax, r14
je 0x1801507c1
cmp r10d, 1
ja 0x1801507e8
and rax, rsi
cmp rax, rcx
je 0x1801507c7
jmp 0x1801507f7
cmp rax, r9
jb 0x1801507e1
xor edx, edx
div r9
mov rax, rdx
jmp 0x1801507e1
xor r11d, r11d
mov r9d, dword [r11 + 0x38]
cmp r9d, 1
je 0x180150818
cmp r9d, 6
je 0x180150ac2
cmp r9d, 4
jne 0x18015090f
mov r8, qword [rbx + 0xe0]
test r8, r8
je 0x18015096c
mov rax, r8
shr rax, 1
movabs rcx, 0x5555555555555555
and rcx, rax
mov rax, r8
sub rax, rcx
movabs rcx, 0x3333333333333333
mov rdx, rax
and rdx, rcx
shr rax, 2
and rax, rcx
add rax, rdx
mov rcx, rax
shr rcx, 4
add rcx, rax
movabs rax, 0xf0f0f0f0f0f0f0f
and rax, rcx
movabs r9, 0x101010101010101
imul r9, rax
shr r9, 0x38
cmp r9, 1
jbe 0x18015089f
mov rcx, r14
cmp r8, r14
ja 0x1801508ac
mov rax, r14
xor edx, edx
div r8
mov rcx, rdx
jmp 0x1801508ac
mov eax, 0xffffffff
add eax, r8d
mov ecx, r14d
and ecx, eax
mov rax, qword [rbx + 0xd8]
mov rax, qword [rax + rcx*8]
test rax, rax
je 0x18015096c
mov rdi, qword [rax]
test rdi, rdi
je 0x18015096c
lea r10, [r8 - 1]
jmp 0x1801508e7
cmp dword [rdi + 0x10], ebp
je 0x18015096e
mov rdi, qword [rdi]
test rdi, rdi
je 0x18015096c
mov rax, qword [rdi + 8]
cmp rax, r14
je 0x1801508d2
cmp r9d, 1
ja 0x180150900
and rax, r10
cmp rax, rcx
je 0x1801508db
jmp 0x18015096c
cmp rax, r8
jb 0x1801508f9
xor edx, edx
div r8
mov rax, rdx
jmp 0x1801508f9
lea rcx, str._s:_d_WARNING:_UNREACHABLE:_Invalid_pointer_kind__d_n
lea rdx, str....._third_party_swiftshader_srcPipelineSpirvShaderMemory.cpp
mov r8d, 0x1dd
call fcn.180171480
call fcn.1801729e0
mov rcx, rax
call fcn.180178040
lea rsi, [rsp + 0x60]
mov rcx, rsi
mov rdx, rax
xor r8d, r8d
call fcn.1801879e0
lea rax, fcn.180060880
mov qword [rsi], rax
mov dword [rsi + 0x28], 1
mov rcx, r15
mov rdx, rsi
xor r8d, r8d
call fcn.180198940
jmp 0x180150a8b
xor edi, edi
lea rsi, [rdi + 0x18]
call fcn.1801729e0
mov rcx, rax
call fcn.180178040
mov rcx, r15
mov rdx, rax
xor r8d, r8d
call fcn.1801879e0
lea rax, fcn.180060880
mov qword [r15], rax
mov eax, dword [rdi + 0x40]
mov dword [r15 + 0x28], eax
mov rcx, rsi
call fcn.180187ab0
mov rcx, r15
mov rdx, rax
call fcn.180187a70
lea rcx, [r15 + 0x30]
lea rdx, [rdi + 0x48]
call fcn.180102300
lea rcx, [r15 + 0x48]
lea rdx, [rdi + 0x60]
call fcn.18018b9d0
mov eax, dword [rdi + 0x88]
mov dword [r15 + 0x70], eax
lea rcx, [r15 + 0x78]
lea rdx, [rdi + 0x90]
call fcn.180196820
xorps xmm0, xmm0
movups xmmword [r15 + 0xa8], xmm0
mov qword [r15 + 0xb8], 0
mov rcx, qword [rdi + 0xc8]
mov rax, qword [rdi + 0xc0]
mov rsi, rcx
sub rsi, rax
sub rcx, rax
je 0x180150a6f
js 0x180151d66
sar rsi, 2
call fcn.180363d5c
mov qword [r15 + 0xa8], rax
mov qword [r15 + 0xb0], rax
lea rcx, [rax + rsi*4]
mov qword [r15 + 0xb8], rcx
mov rcx, qword [rdi + 0xc0]
mov rdx, qword [rdi + 0xc8]
jmp 0x180150a63
test rax, rax
je 0x180151d3a
mov r8d, dword [rcx]
mov dword [rax], r8d
add rcx, 4
add rax, 4
cmp rcx, rdx
jne 0x180150a4c
mov qword [r15 + 0xb0], rax
mov al, byte [rdi + 0xda]
mov byte [r15 + 0xc2], al
movzx eax, word [rdi + 0xd8]
mov word [r15 + 0xc0], ax
mov rcx, r12
call fcn.180196160
mov rcx, qword [rsp + 0x6c8]
xor rcx, rsp
call fcn.180364a40
mov rax, r15
movaps xmm6, xmmword [rsp + 0x6d0]
add rsp, 0x6e8
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
mov qword [rsp + 0x50], r12
mov qword [rsp + 0x48], r15
mov r9, qword [r8 + 0x78]
test r9, r9
je 0x180151d2e
mov rax, r9
shr rax, 1
movabs rdi, 0x5555555555555555
and rax, rdi
mov rcx, r9
sub rcx, rax
movabs rsi, 0x3333333333333333
mov rax, rcx
and rax, rsi
shr rcx, 2
and rcx, rsi
add rcx, rax
mov r10, rcx
shr r10, 4
add r10, rcx
movabs r15, 0xf0f0f0f0f0f0f0f
and r10, r15
movabs r12, 0x101010101010101
imul r10, r12
shr r10, 0x38
cmp r10, 1
jbe 0x180150b50
mov rcx, r14
cmp r9, r14
ja 0x180150b5d
mov rax, r14
xor edx, edx
div r9
mov rcx, rdx
jmp 0x180150b5d
mov eax, 0xffffffff
add eax, r9d
mov ecx, r14d
and ecx, eax
mov rax, qword [r8 + 0x70]
mov rax, qword [rax + rcx*8]
test rax, rax
je 0x180151d2e
mov r13, qword [rax]
test r13, r13
je 0x180151d2e
lea r8, [r9 - 1]
jmp 0x180150bae
cmp rax, r9
jb 0x180150b98
xor edx, edx
div r9
mov rax, rdx
jmp 0x180150b98
cmp r10d, 1
ja 0x180150b80
and rax, r8
cmp rax, rcx
jne 0x180151d2e
mov r13, qword [r13]
test r13, r13
je 0x180151d2e
mov rax, qword [r13 + 8]
cmp rax, r14
jne 0x180150b8f
cmp dword [r13 + 0x10], ebp
jne 0x180150ba1
mov rax, qword [rbx + 8]
mov rcx, qword [rax]
mov edx, dword [r13 + 0x14]
mov r8d, dword [r13 + 0x18]
call fcn.1800229c0
mov dword [rsp + 0x58], eax
mov rax, qword [rbx + 8]
mov rcx, qword [rax]
mov edx, dword [r13 + 0x14]
mov r8d, dword [r13 + 0x18]
call fcn.180022a00
mov dword [rsp + 0x3c], eax
lea rcx, [rsp + 0x600]
mov r8d, 0xc8
mov dl, 0xaa
call fcn.180366c80
mov qword [rsp + 0x40], rbx
mov r8, qword [rbx + 0xe0]
test r8, r8
je 0x180150c9b
mov rax, r8
shr rax, 1
and rax, rdi
mov rcx, r8
sub rcx, rax
mov rax, rcx
and rax, rsi
shr rcx, 2
and rcx, rsi
add rcx, rax
mov r9, rcx
shr r9, 4
add r9, rcx
and r9, r15
imul r9, r12
shr r9, 0x38
cmp r9, 1
jbe 0x180150c66
mov rcx, r14
cmp r8, r14
ja 0x180150c73
mov rax, r14
xor edx, edx
div r8
mov rcx, rdx
jmp 0x180150c73
mov eax, 0xffffffff
add eax, r8d
mov ecx, r14d
and ecx, eax
mov rax, qword [rsp + 0x40]
mov rax, qword [rax + 0xd8]
mov rax, qword [rax + rcx*8]
test rax, rax
mov r12, qword [rsp + 0x50]
je 0x180150cd9
mov r15, qword [rax]
test r15, r15
je 0x180150cd9
lea r10, [r8 - 1]
jmp 0x180150cc2
xor r15d, r15d
mov r12, qword [rsp + 0x50]
jmp 0x180150cdc
cmp rax, r8
jb 0x180150cd4
xor edx, edx
div r8
mov rax, rdx
jmp 0x180150cd4
cmp dword [r15 + 0x10], ebp
je 0x180150cdc
mov r15, qword [r15]
test r15, r15
je 0x180150cd9
mov rax, qword [r15 + 8]
cmp rax, r14
je 0x180150cb4
cmp r9d, 1
ja 0x180150ca5
and rax, r10
cmp rax, rcx
je 0x180150cba
xor r15d, r15d
lea rsi, [r15 + 0x18]
call fcn.1801729e0
mov rcx, rax
call fcn.180178040
lea rdi, [rsp + 0x600]
mov rcx, rdi
mov rdx, rax
xor r8d, r8d
call fcn.1801879e0
lea rbx, fcn.180060880
mov qword [rdi], rbx
mov eax, dword [r15 + 0x40]
mov dword [rdi + 0x28], eax
mov rcx, rsi
call fcn.180187ab0
mov rcx, rdi
mov rdx, rax
call fcn.180187a70
lea rcx, [rsp + 0x630]
lea rdx, [r15 + 0x48]
call fcn.180102300
lea rsi, [rsp + 0x648]
lea rdx, [r15 + 0x60]
mov rcx, rsi
call fcn.18018b9d0
mov eax, dword [r15 + 0x88]
mov dword [rsi + 0x28], eax
lea rsi, [rsp + 0x678]
lea rdx, [r15 + 0x90]
mov rcx, rsi
call fcn.180196820
xorps xmm0, xmm0
movups xmmword [rsi + 0x30], xmm0
mov qword [rsi + 0x40], 0
mov rcx, qword [r15 + 0xc8]
mov rax, qword [r15 + 0xc0]
mov rsi, rcx
sub rsi, rax
sub rcx, rax
je 0x180150df4
js 0x180151d75
sar rsi, 2
call fcn.180363d5c
mov qword [rsp + 0x6a8], rax
mov qword [rsp + 0x6b0], rax
lea rcx, [rax + rsi*4]
mov qword [rsp + 0x6b8], rcx
mov rcx, qword [r15 + 0xc0]
mov rdx, qword [r15 + 0xc8]
jmp 0x180150de7
test rax, rax
je 0x180151d3a
mov r8d, dword [rcx]
mov dword [rax], r8d
add rcx, 4
add rax, 4
cmp rcx, rdx
jne 0x180150dd0
mov qword [rsp + 0x6b0], rax
mov al, byte [r15 + 0xda]
mov byte [rsp + 0x6c2], al
movzx eax, word [r15 + 0xd8]
mov word [rsp + 0x6c0], ax
cmp byte [rsp + 0x750], 0
je 0x180151502
movaps xmm6, xmmword [0x1803ff180]
movaps xmmword [rsp + 0x5f0], xmm6
movaps xmmword [rsp + 0x5e0], xmm6
movaps xmmword [rsp + 0x5d0], xmm6
mov rcx, r12
call fcn.180187ab0
mov qword [rsp + 0x5b8], rax
call fcn.18017dc60
mov rdi, rax
mov ecx, 8
call fcn.180363d5c
mov qword [rsp + 0x450], rax
mov qword [rsp + 0x458], rax
lea rcx, [rax + 8]
mov qword [rsp + 0x460], rcx
test rax, rax
je 0x180151d3a
movsxd rdx, dword [rsp + 0x3c]
mov qword [rax], rdx
lea rsi, [rsp + 0x450]
mov qword [rsi + 8], rcx
mov rcx, rsi
mov rdx, rdi
call fcn.180178c80
lea rdx, [rsp + 0x5b0]
mov qword [rdx], rax
lea rcx, [rsp + 0x5c0]
lea r8, [rsp + 0x5b8]
call fcn.18018ac80
call fcn.18017dc60
mov rdi, rax
mov ecx, 8
call fcn.180363d5c
mov qword [rsi], rax
mov qword [rsi + 8], rax
lea rdx, [rax + 8]
mov qword [rsi + 0x10], rdx
test rax, rax
je 0x180151d3a
movsxd rcx, dword [rsp + 0x58]
mov qword [rax], rcx
lea rcx, [rsp + 0x450]
mov qword [rcx + 8], rdx
mov rdx, rdi
call fcn.180178c80
lea rdx, [rsp + 0x5a8]
mov qword [rdx], rax
lea rsi, [rsp + 0x5c8]
lea r8, [rsp + 0x5c0]
mov rcx, rsi
call fcn.180188ee0
lea rcx, [rsp + 0x5d0]
mov rdx, rsi
call fcn.1801967d0
mov rax, qword [rsp + 0x40]
mov rcx, qword [rax]
mov rax, qword [rax + 8]
mov r8, qword [rax]
mov edx, ebp
call fcn.180102800
mov dword [rsp + 0x3c], eax
movabs rax, 0xaaaaaaaaaaaaaaaa
lea rcx, [rsp + 0x300]
mov qword [rcx + 0x10], rax
movaps xmmword [rcx], xmm6
movsxd rsi, dword [0x180427dac]
mov rdx, rsi
call fcn.180154730
test rsi, rsi
jle 0x18015112f
mov eax, esi
mov qword [rsp + 0x58], rax
lea rbp, [rsp + 0x550]
lea r12, [rsp + 0x450]
xor edi, edi
xor r14d, r14d
lea rcx, [rsp + 0x5d0]
call fcn.180187ab0
mov qword [rsp + 0x588], rax
lea rsi, [rsp + 0x590]
mov rcx, rsi
lea rdx, [rsp + 0x588]
mov r8d, r14d
call fcn.18018b5f0
lea rcx, [rsp + 0x600]
mov rdx, rbp
mov r8d, r14d
call fcn.180199ee0
mov rcx, rbp
call fcn.180187ab0
mov qword [rsp + 0x580], rax
lea rbx, [rsp + 0x598]
mov rcx, rbx
lea rdx, [rsp + 0x580]
mov r8, rsi
call fcn.180193920
lea rcx, [rsp + 0x5a0]
mov rdx, rbx
xor r8d, r8d
call fcn.1801938e0
call fcn.1801729e0
mov rcx, rax
call fcn.180178040
mov rcx, rax
call fcn.180178040
mov rcx, r12
mov rdx, rax
xor r8d, r8d
call fcn.1801879e0
lea rax, fcn.180060880
mov qword [rsp + 0x450], rax
mov dword [rsp + 0x478], 1
call fcn.1801729e0
mov rcx, rax
call fcn.180178040
mov rcx, rax
call fcn.180178040
mov rcx, qword [rsp + 0x5a0]
mov rdx, rax
call fcn.18017a680
mov rcx, r12
mov rdx, rax
call fcn.180187a70
mov r15d, dword [rsp + 0x478]
mov rcx, r12
call fcn.180187ab0
mov rsi, rax
mov rbx, qword [rsp + 0x300]
mov rax, qword [rsp + 0x308]
sub rax, rbx
sar rax, 4
movabs rcx, 0xaaaaaaaaaaaaaaab
imul rax, rcx
cmp rax, r14
jbe 0x180151d02
add rbx, rdi
call fcn.1801729e0
mov rcx, rax
call fcn.180178040
mov dword [rsp + 0x28], 0
mov byte [rsp + 0x20], 0
mov rcx, rsi
mov rdx, rax
xor r8d, r8d
mov r9d, r15d
call fcn.1801792a0
mov rcx, rbx
mov rdx, rax
call fcn.180187a70
mov rcx, r12
call fcn.180196160
mov rcx, rbp
call fcn.180196160
inc r14
add rdi, 0x30
cmp qword [rsp + 0x58], r14
jne 0x180150fa5
mov r8d, 0xc8
mov r15, qword [rsp + 0x48]
mov rcx, r15
mov dl, 0xaa
call fcn.180366c80
lea rsi, [rsp + 0x538]
lea rdx, [rsp + 0x300]
mov rcx, rsi
call fcn.180102300
mov rcx, r15
mov rdx, rsi
call fcn.180198dc0
mov rsi, qword [rsp + 0x40]
mov rax, qword [rsi + 8]
mov rcx, qword [rax]
mov edx, dword [r13 + 0x14]
mov r8d, dword [r13 + 0x18]
call fcn.180022a20
test al, al
mov r12, qword [rsp + 0x50]
je 0x180151494
movaps xmmword [rsp + 0x570], xmm6
movaps xmmword [rsp + 0x560], xmm6
movaps xmmword [rsp + 0x550], xmm6
mov rcx, r12
call fcn.180187ab0
mov qword [rsp + 0x528], rax
mov rax, qword [rsi + 8]
mov rcx, qword [rax]
mov edx, dword [r13 + 0x14]
mov r8d, dword [r13 + 0x18]
call fcn.180022980
mov edi, eax
call fcn.18017dc60
mov rsi, rax
mov ecx, 8
call fcn.180363d5c
mov qword [rsp + 0x450], rax
lea rdx, [rax + 8]
mov qword [rsp + 0x460], rdx
test rax, rax
je 0x180151d3a
movsxd rcx, edi
mov qword [rax], rcx
lea rcx, [rsp + 0x450]
mov qword [rcx + 8], rdx
mov rdx, rsi
call fcn.180178c80
lea rdx, [rsp + 0x520]
mov qword [rdx], rax
lea rsi, [rsp + 0x530]
lea r8, [rsp + 0x528]
mov rcx, rsi
call fcn.180188ee0
lea rdi, [rsp + 0x550]
mov rcx, rdi
mov rdx, rsi
call fcn.1801967d0
lea rcx, [rsp + 0x450]
mov r8d, 0xc8
mov dl, 0xaa
call fcn.180366c80
mov rcx, rdi
call fcn.180187ab0
mov qword [rsp + 0x410], rax
call fcn.18017dc60
mov rdi, rax
mov ecx, 8
call fcn.180363d5c
mov qword [rsp + 0x3a0], rax
lea rcx, [rax + 8]
mov qword [rsp + 0x3b0], rcx
test rax, rax
je 0x180151d3a
mov qword [rax], 4
lea rsi, [rsp + 0x3a0]
mov qword [rsi + 8], rcx
mov rcx, rsi
mov rdx, rdi
call fcn.180178c80
lea rdx, [rsp + 0x408]
mov qword [rdx], rax
lea rbx, [rsp + 0x418]
lea r8, [rsp + 0x410]
mov rcx, rbx
call fcn.18018ac80
lea rdi, [rsp + 0x420]
mov rcx, rdi
mov rdx, rbx
call fcn.1801967d0
mov ebx, 0x3438
mov r13, qword [rsp + 0x40]
add rbx, qword [r13 + 8]
call fcn.1801729e0
mov rcx, rax
call fcn.180178040
lea r14, [rsp + 0x3d8]
mov rcx, r14
mov rdx, rax
xor r8d, r8d
call fcn.1801879e0
lea rax, fcn.180060880
mov qword [r14], rax
mov dword [r14 + 0x28], 1
mov rcx, rbx
call fcn.180187ab0
mov rbx, rax
call fcn.1801729e0
mov rcx, rax
call fcn.180178040
mov rcx, rbx
mov rdx, rax
call fcn.18017a680
mov rcx, r14
mov rdx, rax
call fcn.180187a70
lea rbx, [rsp + 0x450]
mov rcx, rbx
mov rdx, r14
xor r8d, r8d
mov r9, rdi
call fcn.180198c30
movaps xmmword [rsi + 0x20], xmm6
movaps xmmword [rsi + 0x10], xmm6
movaps xmmword [rsi], xmm6
mov rax, qword [r13 + 0x18]
lea rdx, [rsp + 0x368]
mov qword [rdx], rax
lea rsi, [rsp + 0x370]
mov rcx, rsi
call fcn.1801967d0
mov dword [rsp + 0x30], 4
mov dword [rsp + 0x28], 0
mov byte [rsp + 0x20], 0
lea rdi, [rsp + 0x3a0]
mov rcx, rbx
mov rdx, rdi
mov r8d, dword [rsp + 0x3c]
mov r9, rsi
call fcn.18013d0a0
lea rsi, [rsp + 0x338]
mov rcx, rsi
mov rdx, rdi
call fcn.180196820
mov rcx, r15
mov rdx, rsi
call fcn.1801991a0
mov rcx, rdi
call fcn.180196160
mov rcx, qword [rbx + 0xa8]
test rcx, rcx
je 0x180151415
mov qword [rsp + 0x500], rcx
call fcn.180363dac
lea rcx, [rsp + 0x4c8]
call fcn.180196160
lea rsi, [rsp + 0x498]
mov rcx, rsi
call fcn.180196160
mov rdi, qword [rsi - 0x18]
test rdi, rdi
je 0x18015147a
mov rsi, qword [rsp + 0x488]
mov rcx, rdi
cmp rsi, rdi
je 0x18015146d
add rsi, 0xffffffffffffffd0
mov rcx, rsi
xor edx, edx
call fcn.180060880
lea rax, [rsi - 0x30]
cmp rsi, rdi
mov rsi, rax
jne 0x18015144f
mov rcx, qword [rsp + 0x480]
mov qword [rsp + 0x488], rdi
call fcn.180363dac
lea rcx, [rsp + 0x450]
call fcn.180196160
lea rcx, [rsp + 0x550]
call fcn.180196160
mov rdi, qword [rsp + 0x300]
test rdi, rdi
je 0x1801514e0
mov rsi, qword [rsp + 0x308]
mov rcx, rdi
cmp rsi, rdi
je 0x1801514d3
add rsi, 0xffffffffffffffd0
mov rcx, rsi
xor edx, edx
call fcn.180060880
lea rax, [rsi - 0x30]
cmp rsi, rdi
mov rsi, rax
jne 0x1801514b5
mov rcx, qword [rsp + 0x300]
mov qword [rsp + 0x308], rdi
call fcn.180363dac
lea rcx, [rsp + 0x5d0]
call fcn.180196160
lea rsi, [rsp + 0x648]
lea rdi, [rsp + 0x678]
jmp 0x18015172d
movabs r15, 0xaaaaaaaaaaaaaaaa
lea rsi, [rsp + 0x3a0]
mov qword [rsi + 0x20], r15
movaps xmm6, xmmword [0x1803ff180]
movaps xmmword [rsi + 0x10], xmm6
movaps xmmword [rsi], xmm6
mov rcx, r12
call fcn.180187ab0
lea rdx, [rsp + 0x328]
mov qword [rdx], rax
lea rdi, [rsp + 0x330]
mov rcx, rdi
xor r8d, r8d
call fcn.18018b5f0
mov rcx, rsi
mov rdx, rdi
call fcn.18018b8f0
lea rdi, [rsp + 0x300]
mov qword [rdi + 0x20], r15
movaps xmmword [rdi + 0x10], xmm6
movaps xmmword [rdi], xmm6
mov rcx, rsi
call fcn.180187ab0
lea rsi, [rsp + 0x2e8]
mov qword [rsi], rax
mov ecx, dword [rsp + 0x3c]
call fcn.180179b80
lea rdx, [rsp + 0x2e0]
mov qword [rdx], rax
mov rbp, rbx
lea rbx, [rsp + 0x2f0]
mov rcx, rbx
mov r8, rsi
call fcn.18018ac80
mov ecx, dword [rsp + 0x58]
call fcn.180179b80
lea rdx, [rsp + 0x2d8]
mov qword [rdx], rax
lea rsi, [rsp + 0x2f8]
mov rcx, rsi
mov r8, rbx
call fcn.180188ee0
mov rcx, rdi
mov rdx, rsi
call fcn.18018b8f0
lea rsi, [rsp + 0x450]
movaps xmmword [rsi + 0x20], xmm6
movaps xmmword [rsi + 0x10], xmm6
movaps xmmword [rsi], xmm6
mov rcx, rdi
call fcn.180187ab0
lea rbx, [rsp + 0x2c8]
mov qword [rbx], rax
lea rcx, [rsp + 0x600]
lea rdi, [rsp + 0x5d0]
mov rdx, rdi
call fcn.180199ec0
mov rcx, rdi
call fcn.180187ab0
lea rdx, [rsp + 0x2c0]
mov qword [rdx], rax
lea r14, [rsp + 0x2d0]
mov rcx, r14
mov r8, rbx
mov rbx, rbp
call fcn.180193920
call fcn.1801729e0
mov rcx, rax
call fcn.180178040
mov rcx, rsi
mov rdx, rax
xor r8d, r8d
call fcn.1801879e0
mov qword [rsi], rbp
mov dword [rsi + 0x28], 1
mov rdx, qword [r14]
mov rcx, rsi
call fcn.180187a70
mov rcx, rdi
call fcn.180196160
mov rax, qword [rsp + 0x40]
mov rax, qword [rax + 8]
mov rcx, qword [rax]
mov edx, dword [r13 + 0x14]
mov r8d, dword [r13 + 0x18]
call fcn.1800229e0
cmp eax, 0x3b9ce510
jne 0x1801517b5
call fcn.1801729e0
mov rcx, rax
call fcn.180178040
lea rsi, [rsp + 0x290]
mov rcx, rsi
mov rdx, rax
xor r8d, r8d
call fcn.1801879e0
mov qword [rsi], rbx
lea rcx, [rsp + 0x450]
mov eax, dword [rcx + 0x28]
mov dword [rsi + 0x28], eax
call fcn.180187ab0
mov rcx, rsi
mov rdx, rax
call fcn.180187a70
mov r15, qword [rsp + 0x48]
mov rcx, r15
mov rdx, rsi
mov r8d, 0x100
call fcn.180198940
lea rsi, [rsp + 0x648]
lea rdi, [rsp + 0x678]
lea rcx, [rsp + 0x450]
call fcn.180196160
lea rcx, [rsp + 0x300]
call fcn.180196160
lea rcx, [rsp + 0x3a0]
call fcn.180196160
mov rcx, qword [rsp + 0x6a8]
test rcx, rcx
je 0x180151747
mov qword [rsp + 0x6b0], rcx
call fcn.180363dac
mov rcx, rdi
call fcn.180196160
mov rcx, rsi
call fcn.180196160
mov rdi, qword [rsp + 0x630]
test rdi, rdi
je 0x1801517a3
mov rsi, qword [rsp + 0x638]
mov rcx, rdi
cmp rsi, rdi
je 0x180151796
add rsi, 0xffffffffffffffd0
mov rcx, rsi
xor edx, edx
call fcn.180060880
lea rax, [rsi - 0x30]
cmp rsi, rdi
mov rsi, rax
jne 0x180151778
mov rcx, qword [rsp + 0x630]
mov qword [rsp + 0x638], rdi
call fcn.180363dac
lea rcx, [rsp + 0x600]
call fcn.180196160
jmp 0x180150a8b
lea rdi, [rsp + 0x5d0]
movaps xmmword [rdi + 0x20], xmm6
movaps xmmword [rdi + 0x10], xmm6
movaps xmmword [rdi], xmm6
lea rcx, [rsp + 0x450]
call fcn.180187ab0
lea rdx, [rsp + 0x280]
mov qword [rdx], rax
lea r14, [rsp + 0x288]
mov rcx, r14
xor r8d, r8d
call fcn.1801938e0
call fcn.1801729e0
mov rcx, rax
call fcn.180178040
mov rcx, rax
call fcn.180178040
mov rsi, r15
mov r15, rbx
lea rbx, [rsp + 0x550]
mov rcx, rbx
mov rdx, rax
xor r8d, r8d
call fcn.1801879e0
lea rax, fcn.180060880
mov qword [rbx], rax
mov eax, 1
mov dword [rbx + 0x28], eax
call fcn.1801729e0
mov rcx, rax
call fcn.180178040
mov rcx, rax
call fcn.180178040
mov rcx, qword [r14]
mov rdx, rax
call fcn.18017a680
mov rcx, rbx
mov rdx, rax
call fcn.180187a70
mov ebp, dword [rbx + 0x28]
mov rcx, rbx
call fcn.180187ab0
mov r14, rax
call fcn.1801729e0
mov rcx, rax
call fcn.180178040
mov rcx, rdi
mov rdx, rax
xor r8d, r8d
call fcn.1801879e0
mov qword [rdi], r15
mov r15, rsi
mov dword [rdi + 0x28], ebp
call fcn.1801729e0
mov rcx, rax
call fcn.180178040
mov dword [rsp + 0x28], 0
mov byte [rsp + 0x20], 0
mov rcx, r14
mov rdx, rax
xor r8d, r8d
mov r9d, ebp
call fcn.1801792a0
mov rcx, rdi
mov rdx, rax
call fcn.180187a70
mov rcx, rbx
call fcn.180196160
lea rdi, [rsp + 0x250]
mov qword [rdi + 0x20], rsi
movaps xmmword [rdi + 0x10], xmm6
movaps xmmword [rdi], xmm6
lea rcx, [rsp + 0x450]
call fcn.180187ab0
lea rdx, [rsp + 0x240]
mov qword [rdx], rax
lea rbx, [rsp + 0x248]
mov rcx, rbx
mov r8d, 8
call fcn.1801938e0
call fcn.18017d860
mov rcx, rax
call fcn.180178040
lea rsi, [rsp + 0x550]
mov rcx, rsi
mov rdx, rax
xor r8d, r8d
call fcn.1801879e0
lea r14, fcn.180060880
mov qword [rsi], r14
mov eax, 1
mov dword [rsi + 0x28], eax
call fcn.18017d860
mov rcx, rax
call fcn.180178040
mov rcx, qword [rbx]
mov rdx, rax
call fcn.18017a680
mov rcx, rsi
mov rdx, rax
call fcn.180187a70
mov ebx, dword [rsi + 0x28]
mov rcx, rsi
call fcn.180187ab0
lea rdx, [rsp + 0x210]
mov qword [rdx], rax
mov dword [rdx + 8], ebx
mov rbx, qword [rsp + 0x40]
mov rcx, rdi
call fcn.18018bb30
mov rcx, rsi
call fcn.180196160
mov rax, qword [rbx + 8]
mov rcx, qword [rax]
mov edx, dword [r13 + 0x14]
mov r8d, dword [r13 + 0x18]
call fcn.180022a20
test al, al
jne 0x180151a2b
lea rsi, [rsp + 0xc0]
lea rdx, [rsp + 0x250]
mov rcx, rsi
call fcn.18018b9d0
call fcn.1801729e0
mov rcx, rax
call fcn.180178040
lea rdi, [rsp + 0x90]
mov rcx, rdi
mov rdx, rax
xor r8d, r8d
call fcn.1801879e0
lea rax, fcn.180060880
mov qword [rdi], rax
lea rcx, [rsp + 0x5d0]
mov eax, dword [rcx + 0x28]
mov dword [rdi + 0x28], eax
call fcn.180187ab0
mov rcx, rdi
mov rdx, rax
call fcn.180187a70
mov r15, qword [rsp + 0x48]
mov rcx, r15
mov rdx, rdi
mov r8, rsi
call fcn.1801987e0
jmp 0x180151ce3
lea r12, [rsp + 0x210]
mov qword [r12 + 0x20], r15
movaps xmmword [r12 + 0x10], xmm6
movaps xmmword [r12], xmm6
lea rcx, [rsp + 0x3a0]
call fcn.180187ab0
lea rsi, [rsp + 0x200]
mov qword [rsi], rax
mov rax, qword [rbx + 8]
mov rcx, qword [rax]
mov edx, dword [r13 + 0x14]
mov r8d, dword [r13 + 0x18]
call fcn.180022980
mov ecx, eax
call fcn.180179b80
lea rdx, [rsp + 0x1f8]
mov qword [rdx], rax
lea rdi, [rsp + 0x208]
mov rcx, rdi
mov r8, rsi
call fcn.180188ee0
mov rcx, r12
mov rdx, rdi
call fcn.18018b8f0
lea r13, [rsp + 0x1d0]
mov qword [r13 + 0x20], r15
movaps xmmword [r13 + 0x10], xmm6
movaps xmmword [r13], xmm6
mov rbp, qword [rbx + 8]
lea rsi, [rbp + 0x3438]
mov rcx, r12
call fcn.180187ab0
mov rdi, rax
call fcn.18017d860
mov rbx, rax
mov rcx, rsi
call fcn.180187ab0
mov rcx, rax
mov rdx, rbx
mov r8, rdi
xor r9d, r9d
call fcn.180179830
mov ecx, dword [rbp + 0x3460]
lea rdx, [rsp + 0x550]
mov qword [rdx], rax
mov dword [rdx + 8], ecx
mov rcx, r13
call fcn.18018bb30
lea rbx, [rsp + 0x1a0]
mov qword [rbx + 0x20], r15
movaps xmmword [rbx + 0x10], xmm6
movaps xmmword [rbx], xmm6
lea rcx, [rsp + 0x450]
call fcn.180187ab0
lea rdx, [rsp + 0x180]
mov qword [rdx], rax
lea rdi, [rsp + 0x188]
mov rcx, rdi
mov r8d, 0xc
call fcn.1801938e0
call fcn.18017d860
mov rcx, rax
call fcn.180178040
lea rsi, [rsp + 0x550]
mov rcx, rsi
mov rdx, rax
xor r8d, r8d
call fcn.1801879e0
mov qword [rsi], r14
mov ebp, 1
mov dword [rsi + 0x28], ebp
call fcn.18017d860
mov rcx, rax
call fcn.180178040
mov rcx, qword [rdi]
mov rdx, rax
call fcn.18017a680
mov rcx, rsi
mov rdx, rax
call fcn.180187a70
mov edi, dword [rsi + 0x28]
mov rcx, rsi
call fcn.180187ab0
lea rdx, [rsp + 0x190]
mov qword [rdx], rax
mov dword [rdx + 8], edi
mov rcx, rbx
call fcn.18018bb30
mov rcx, rsi
call fcn.180196160
mov rcx, r13
call fcn.180187ab0
lea rsi, [rsp + 0x140]
mov qword [rsi], rax
mov rcx, rbx
call fcn.180187ab0
lea rdx, [rsp + 0x138]
mov qword [rdx], rax
lea rdi, [rsp + 0x148]
mov rcx, rdi
mov r8, rsi
call fcn.180188f10
lea rcx, [rsp + 0x250]
call fcn.180187ab0
lea rdx, [rsp + 0x130]
mov qword [rdx], rax
lea r14, [rsp + 0x150]
mov rcx, r14
mov r8, rdi
call fcn.18018c070
lea rsi, [rsp + 0x158]
mov rcx, rsi
mov rdx, r14
call fcn.18018b8f0
mov rcx, r13
call fcn.180187ab0
lea rdi, [rsp + 0xf0]
mov qword [rdi], rax
lea rcx, [rsp + 0x5d0]
call fcn.180187ab0
lea rdx, [rsp + 0xe8]
mov qword [rdx], rax
lea r14, [rsp + 0xf8]
mov rcx, r14
mov r8, rdi
call fcn.180193920
call fcn.1801729e0
mov rcx, rax
call fcn.180178040
lea rdi, [rsp + 0x100]
mov rcx, rdi
mov rdx, rax
xor r8d, r8d
call fcn.1801879e0
lea rax, fcn.180060880
mov qword [rdi], rax
mov dword [rdi + 0x28], ebp
mov rdx, qword [r14]
mov rcx, rdi
call fcn.180187a70
mov r15, qword [rsp + 0x48]
mov rcx, r15
mov rdx, rdi
mov r8, rsi
call fcn.1801987e0
mov rcx, rbx
call fcn.180196160
mov rcx, r13
call fcn.180196160
mov rcx, r12
mov r12, qword [rsp + 0x50]
call fcn.180196160
lea rcx, [rsp + 0x250]
call fcn.180196160
lea rcx, [rsp + 0x5d0]
call fcn.180196160
jmp 0x1801516f6
lea rax, str.vector___index_out_of_bounds
mov qword [rsp + 0x20], rax
lea rcx, str._s:_d:_assertion__s_failed:__s
lea rdx, str....._buildtools_third_partylibc_trunkinclude_vector
lea r9, str.__n___size__
mov r8d, 0x5b7
call fcn.1803aa860
lea rcx, str.unordered_map::at:_key_not_found
call fcn.18039e1c0
lea rax, str.null_pointer_given_to_construct_at
mov qword [rsp + 0x20], rax
lea rcx, str._s:_d:_assertion__s_failed:__s
lea rdx, str....._buildtools_third_partylibc_trunkinclude__memoryconstruct_at.h
lea r9, str.__location___nullptr
mov r8d, 0x25
call fcn.1803aa860
add r15, 0xa8
mov rcx, r15
call fcn.18039c9b0
lea rcx, [rsp + 0x6a8]
call fcn.18039c9b0
int3