Function at 0x498130
Capabilities:
Create directory

Disassembly:
push r15
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x148
cmp qword [rcx + 8], 0
mov rdi, rcx
mov rbx, rdx
jne 0x498180
call sym.unk_2898
mov dword [rbx], 0x16
xor r12d, r12d
mov qword [rbx + 8], rax
mov eax, r12d
add rsp, 0x148
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret
call sym.unk_3484
mov edx, eax
cmp al, 2
je 0x498c28
mov ecx, dword [rbx]
test ecx, ecx
setne r12b
test al, al
sete al
and r12b, al
jne 0x498c28
inc edx
cmp dl, 1
ja 0x498d40
pxor xmm0, xmm0
lea rsi, [rsp + 0x40]
lea r13, [rsp + 0x30]
xor edx, edx
lea rax, [rsp + 0xf0]
movaps xmmword [rsp + 0x100], xmm0
mov rcx, rax
mov qword [rsp + 0x28], rax
mov qword [rsp + 0xf0], 0
mov qword [rsp + 0xf8], 0
movaps xmmword [rsp + 0x110], xmm0
movaps xmmword [rsp + 0x120], xmm0
movaps xmmword [rsp + 0x130], xmm0
call sym.unk_3500
mov r14, qword [rdi]
mov rax, qword [rdi + 8]
mov qword [rsp + 0x30], rsi
lea rbp, [rax + rax]
mov rax, r14
add rax, rbp
setne r12b
test r14, r14
sete al
and r12b, al
jne 0x4992ac
mov rax, rbp
sar rax, 1
mov qword [rsp + 0xc0], rax
mov rdx, rax
cmp rax, 7
ja 0x498680
cmp rax, 1
jne 0x498de0
movzx eax, word [r14]
mov word [rsp + 0x40], ax
mov rax, rsi
mov qword [rsp + 0x38], rdx
xor edx, edx
mov word [rax + rbp], dx
lea rax, [rsp + 0x50]
lea rdx, [rdi + 0x20]
mov rcx, rax
mov qword [rsp + 0x20], rax
call sym.unk_3532
mov rcx, r13
call sym.unk_3546
test al, al
jne 0x498df8
lea rbp, [rsp + 0x70]
mov rdi, qword [rsp + 0x38]
test rdi, rdi
je 0x4986e8
mov rax, qword [rsp + 0x50]
and eax, 3
cmp al, 3
je 0x498cc0
test al, al
jne 0x4982fb
mov rax, qword [rsp + 0x30]
cmp word [rax + rdi*2 - 2], 0x5c
je 0x498d60
mov rcx, qword [rsp + 0x20]
call sym.unk_3536
mov rdx, qword [rsp + 0x50]
mov rdi, r13
and edx, 3
jne 0x4982f2
mov rdx, qword [rax - 0x10]
lea rdi, [rax - 0x30]
and edx, 3
cmp dl, 3
je 0x499020
lea r14, [rsp + 0x80]
xor r8d, r8d
mov qword [rsp + 0x60], rbp
mov rcx, r14
mov word [rsp + 0x70], r8w
mov qword [rsp + 0x68], 0
call sym.unk_3530
mov rax, qword [rsp + 0x68]
cmp rax, 1
je 0x49871c
cmp rax, 2
je 0x498840
mov rdi, qword [rsp + 0x130]
mov rax, qword [rsp + 0x120]
lea rdx, [rdi - 0x28]
cmp rax, rdx
je 0x498860
lea rdx, [rax + 0x10]
mov qword [rax], rdx
mov rdx, qword [rsp + 0x30]
cmp rdx, rsi
je 0x498c80
mov qword [rax], rdx
mov rdx, qword [rsp + 0x40]
mov qword [rax + 0x10], rdx
mov rdx, qword [rsp + 0x38]
xor ecx, ecx
mov qword [rsp + 0x30], rsi
mov qword [rax + 8], rdx
mov rdx, qword [rsp + 0x50]
mov qword [rsp + 0x50], 0
mov qword [rax + 0x20], rdx
mov word [rsp + 0x40], cx
mov rcx, r13
mov qword [rsp + 0x38], 0
call sym.unk_3550
mov r8, qword [rsp + 0x120]
mov rcx, qword [rsp + 0x128]
mov rax, qword [rsp + 0x138]
lea rdx, [r8 + 0x28]
mov qword [rsp + 0x120], rdx
cmp rdx, rcx
je 0x498999
sub rdx, rcx
sub rax, qword [rsp + 0x118]
movabs rdi, 0xcccccccccccccccd
sar rdx, 3
sar rax, 3
imul rdx, rdi
lea rax, [rax + rax*2 - 3]
lea rdx, [rdx + rax*4]
mov rax, qword [rsp + 0x110]
sub rax, qword [rsp + 0x100]
sar rax, 3
imul rax, rdi
add rax, rdx
cmp rax, 0x3e8
ja 0x4989e7
lea r15, [rsp + 0xc0]
mov rdx, r8
mov rcx, r15
call sym.unk_3556
mov rdx, qword [rsp + 0xc0]
lea rdi, [rsp + 0xd0]
mov rcx, qword [rsp + 0x30]
mov rax, qword [rsp + 0xc8]
cmp rdx, rdi
je 0x498c30
mov r8, qword [rsp + 0xd0]
cmp rcx, rsi
je 0x498c90
movq xmm0, rax
movq xmm1, r8
mov r9, qword [rsp + 0x40]
mov qword [rsp + 0x30], rdx
punpcklqdq xmm0, xmm1
movups xmmword [rsp + 0x38], xmm0
test rcx, rcx
je 0x498ca8
mov qword [rsp + 0xc0], rcx
mov qword [rsp + 0xd0], r9
mov rax, qword [rsp + 0xe0]
xor r8d, r8d
mov rdx, qword [rsp + 0x50]
mov qword [rsp + 0xc8], 0
mov word [rcx], r8w
mov qword [rsp + 0xe0], 0
mov qword [rsp + 0x50], rax
test rdx, rdx
je 0x4984f7
mov rcx, qword [rsp + 0x20]
call sym.unk_3525
mov rcx, qword [rsp + 0xc0]
mov qword [rsp + 0xc8], 0
xor edx, edx
mov word [rcx], dx
mov rcx, r15
call sym.unk_3550
mov rdx, qword [rsp + 0xe0]
test rdx, rdx
je 0x49852a
lea rcx, [rsp + 0xe0]
call sym.unk_3525
mov rcx, qword [rsp + 0xc0]
cmp rcx, rdi
je 0x49853c
call sym.operator_delete_void_
cmp qword [rsp + 0x38], 0
je 0x499130
mov rdx, rbx
mov rcx, r13
call sym.unk_3477
mov edi, eax
inc eax
cmp al, 1
jbe 0x49856f
mov eax, dword [rbx]
test eax, eax
jne 0x4989f6
cmp dil, 2
jne 0x49922f
mov rdx, qword [rsp + 0x80]
test rdx, rdx
je 0x498584
mov rcx, r14
call sym.unk_3525
mov rcx, qword [rsp + 0x60]
cmp rcx, rbp
je 0x4986d0
call sym.operator_delete_void_
cmp dil, 0xff
je 0x49829d
mov r13, qword [rsp + 0x120]
mov rdi, qword [sym.imp.msvcrt.dll__wmkdir]
mov r15, qword [sym.imp.msvcrt.dll__errno]
jmp 0x498631
call sym.unk_2897
mov dword [rbx], 0
mov r14d, 1
mov qword [rbx + 8], rax
mov r13, qword [rsp + 0x120]
cmp r13, qword [rsp + 0x128]
je 0x498f80
mov rdx, qword [r13 - 8]
lea rax, [r13 - 0x28]
mov qword [rsp + 0x120], rax
test rdx, rdx
je 0x498609
lea rcx, [r13 - 8]
call sym.unk_3525
mov rcx, qword [r13 - 0x28]
sub r13, 0x18
cmp rcx, r13
je 0x49861b
call sym.operator_delete_void_
mov r13, qword [rsp + 0x120]
cmp r13, qword [rsp + 0x100]
je 0x499160
cmp qword [rsp + 0x128], r13
je 0x498f68
mov rcx, qword [r13 - 0x28]
call rdi
test eax, eax
je 0x4985c0
call r15
mov ebp, dword [rax]
cmp ebp, 0x11
je 0x499110
call sym.unk_2898
mov dword [rbx], ebp
mov qword [rbx + 8], rax
test ebp, ebp
jne 0x498a1a
xor r14d, r14d
jmp 0x4985d5
lea rdx, [rsp + 0xc0]
xor r8d, r8d
mov rcx, r13
call sym.unk_3251
mov qword [rsp + 0x30], rax
mov rcx, rax
mov rax, qword [rsp + 0xc0]
mov qword [rsp + 0x40], rax
mov r8, rbp
mov rdx, r14
call sym.memcpy
mov rdx, qword [rsp + 0xc0]
mov rax, qword [rsp + 0x30]
lea rbp, [rdx + rdx]
jmp 0x498267
cmp dil, 0xff
jne 0x4985a1
mov rdi, qword [rsp + 0x38]
test rdi, rdi
jne 0x4982ab
lea r14, [rsp + 0x80]
xor edi, edi
mov qword [rsp + 0x60], rbp
mov rcx, r14
mov word [rsp + 0x70], di
mov qword [rsp + 0x68], 0
call sym.unk_3530
mov rax, qword [rsp + 0x68]
cmp rax, 1
jne 0x498331
mov rax, qword [rsp + 0x60]
cmp word [rax], 0x2e
jne 0x49833b
lea r15, [rsp + 0x90]
mov rdx, r13
mov rcx, r15
call sym.unk_3556
mov rdx, qword [rsp + 0x90]
lea rdi, [rsp + 0xa0]
mov rcx, qword [rsp + 0x30]
mov rax, qword [rsp + 0x98]
cmp rdx, rdi
je 0x498d90
mov r8, qword [rsp + 0xa0]
cmp rcx, rsi
je 0x498f20
movq xmm0, rax
movq xmm3, r8
mov r9, qword [rsp + 0x40]
mov qword [rsp + 0x30], rdx
punpcklqdq xmm0, xmm3
movups xmmword [rsp + 0x38], xmm0
test rcx, rcx
je 0x498f38
mov qword [rsp + 0x90], rcx
mov qword [rsp + 0xa0], r9
mov rax, qword [rsp + 0xb0]
xor r11d, r11d
mov rdx, qword [rsp + 0x50]
mov qword [rsp + 0x98], 0
mov word [rcx], r11w
mov qword [rsp + 0xb0], 0
mov qword [rsp + 0x50], rax
test rdx, rdx
je 0x4987f3
mov rcx, qword [rsp + 0x20]
call sym.unk_3525
mov rcx, qword [rsp + 0x90]
mov qword [rsp + 0x98], 0
xor r10d, r10d
mov word [rcx], r10w
mov rcx, r15
call sym.unk_3550
mov rdx, qword [rsp + 0xb0]
test rdx, rdx
je 0x498828
lea rcx, [rsp + 0xb0]
call sym.unk_3525
mov rcx, qword [rsp + 0x90]
cmp rcx, rdi
jne 0x498537
jmp 0x49853c
mov rax, qword [rsp + 0x60]
cmp word [rax], 0x2e
jne 0x49833b
cmp word [rax + 2], 0x2e
jne 0x49833b
jmp 0x49872b
mov rdi, qword [rsp + 0x138]
sub rax, qword [rsp + 0x128]
movabs rcx, 0xcccccccccccccccd
sar rax, 3
imul rax, rcx
mov rdx, rdi
sub rdx, qword [rsp + 0x118]
sar rdx, 3
lea rdx, [rdx + rdx*2 - 3]
lea rdx, [rax + rdx*4]
mov rax, qword [rsp + 0x110]
sub rax, qword [rsp + 0x100]
sar rax, 3
imul rax, rcx
movabs rcx, 0x333333333333333
add rax, rdx
cmp rax, rcx
je 0x499280
mov rdx, qword [rsp + 0xf8]
mov rax, rdi
sub rax, qword [rsp + 0xf0]
sar rax, 3
sub rdx, rax
cmp rdx, 1
jbe 0x498f00
mov ecx, 0x1e0
call sym.operator_new_unsigned_long_long_
mov qword [rdi + 8], rax
mov rax, qword [rsp + 0x120]
lea rdx, [rax + 0x10]
mov qword [rax], rdx
mov rdx, qword [rsp + 0x30]
cmp rdx, rsi
je 0x499010
mov qword [rax], rdx
mov rdx, qword [rsp + 0x40]
mov qword [rax + 0x10], rdx
mov rdx, qword [rsp + 0x38]
mov rcx, r13
mov qword [rsp + 0x30], rsi
mov qword [rax + 8], rdx
xor edx, edx
mov word [rsp + 0x40], dx
mov rdx, qword [rsp + 0x50]
mov qword [rsp + 0x50], 0
mov qword [rax + 0x20], rdx
mov qword [rsp + 0x38], 0
call sym.unk_3550
mov rdx, qword [rsp + 0x138]
lea rax, [rdx + 8]
mov rdx, qword [rdx + 8]
movq xmm2, rax
movq xmm0, rdx
lea rdi, [rdx + 0x1e0]
punpcklqdq xmm0, xmm0
movaps xmmword [rsp + 0x120], xmm0
movq xmm0, rdi
punpcklqdq xmm0, xmm2
movaps xmmword [rsp + 0x130], xmm0
mov rdi, qword [rax - 8]
sub rax, qword [rsp + 0x118]
sar rax, 3
lea rdx, [rax + rax*2 - 3]
mov rax, qword [rsp + 0x110]
sub rax, qword [rsp + 0x100]
lea r8, [rdi + 0x1b8]
movabs rdi, 0xcccccccccccccccd
sar rax, 3
imul rax, rdi
lea rax, [rax + rdx*4]
cmp rax, 0x3e8
jbe 0x49842f
call sym.unk_2898
mov dword [rbx], 0x26
mov qword [rbx + 8], rax
mov rdx, qword [rsp + 0x80]
test rdx, rdx
je 0x498a0b
mov rcx, r14
call sym.unk_3525
mov rcx, qword [rsp + 0x60]
cmp rcx, rbp
je 0x498a1a
call sym.operator_delete_void_
mov rdx, qword [rsp + 0x50]
test rdx, rdx
je 0x498a2e
mov rcx, qword [rsp + 0x20]
call sym.unk_3525
mov rcx, qword [rsp + 0x30]
cmp rcx, rsi
je 0x498a3d
call sym.operator_delete_void_
mov rax, qword [rsp + 0x110]
mov r13, qword [rsp + 0x138]
mov rbp, qword [rsp + 0x120]
mov rbx, qword [rsp + 0x128]
mov qword [rsp + 0x20], rax
mov rax, qword [rsp + 0x118]
mov r15, qword [rsp + 0x100]
lea rsi, [rax + 8]
mov qword [rsp + 0x28], rax
cmp r13, rsi
jbe 0x498ac9
mov rdi, qword [rsi]
lea r14, [rdi + 0x1e0]
nop word [rax + rax]
mov rdx, qword [rdi + 0x20]
test rdx, rdx
je 0x498aa2
lea rcx, [rdi + 0x20]
call sym.unk_3525
mov rcx, qword [rdi]
lea rax, [rdi + 0x10]
cmp rcx, rax
je 0x498be0
call sym.operator_delete_void_
add rdi, 0x28
cmp r14, rdi
jne 0x498a90
add rsi, 8
cmp r13, rsi
ja 0x498a80
cmp r13, qword [rsp + 0x28]
je 0x498bcf
cmp r15, qword [rsp + 0x20]
je 0x498b12
nop dword [rax + rax]
mov rdx, qword [r15 + 0x20]
test rdx, rdx
je 0x498af2
lea rcx, [r15 + 0x20]
call sym.unk_3525
mov rcx, qword [r15]
lea rax, [r15 + 0x10]
cmp rcx, rax
je 0x498c10
call sym.operator_delete_void_
add r15, 0x28
cmp r15, qword [rsp + 0x20]
jne 0x498ae0
cmp rbp, rbx
je 0x498b50
nop word [rax + rax]
mov rdx, qword [rbx + 0x20]
test rdx, rdx
je 0x498b32
lea rcx, [rbx + 0x20]
call sym.unk_3525
mov rcx, qword [rbx]
lea rax, [rbx + 0x10]
cmp rcx, rax
je 0x498bf8
call sym.operator_delete_void_
add rbx, 0x28
cmp rbp, rbx
jne 0x498b20
mov rcx, qword [rsp + 0xf0]
test rcx, rcx
je 0x498162
mov rax, qword [rsp + 0x138]
mov rbx, qword [rsp + 0x118]
lea rsi, [rax + 8]
cmp rsi, rbx
jbe 0x498b99
nop word [rax + rax]
mov rcx, qword [rbx]
add rbx, 8
call sym.operator_delete_void_
cmp rsi, rbx
ja 0x498b80
mov rcx, qword [rsp + 0xf0]
call sym.operator_delete_void_
jmp 0x498162
mov rdx, qword [r15 + 0x20]
test rdx, rdx
je 0x498bba
lea rcx, [r15 + 0x20]
call sym.unk_3525
mov rcx, qword [r15]
lea rax, [r15 + 0x10]
cmp rcx, rax
je 0x498bcb
call sym.operator_delete_void_
add r15, 0x28
cmp rbp, r15
jne 0x498ba8
jmp 0x498b50
add rdi, 0x28
cmp rdi, r14
jne 0x498a90
jmp 0x498ac0
add rbx, 0x28
cmp rbp, rbx
jne 0x498b20
jmp 0x498b50
add r15, 0x28
cmp qword [rsp + 0x20], r15
jne 0x498ae0
jmp 0x498b12
xor r12d, r12d
jmp 0x498162
lea r8, [rax + rax]
mov rdx, rdi
test rax, rax
je 0x498c64
cmp rax, 1
je 0x4990f0
call sym.memcpy
mov rax, qword [rsp + 0xc8]
mov rcx, qword [rsp + 0x30]
mov rdx, qword [rsp + 0xc0]
lea r8, [rax + rax]
xor r9d, r9d
mov qword [rsp + 0x38], rax
mov word [rcx + r8], r9w
mov rcx, rdx
jmp 0x4984af
movdqa xmm4, xmmword [rsp + 0x40]
movups xmmword [rax + 0x10], xmm4
jmp 0x498379
movq xmm0, rax
movq xmm5, r8
mov qword [rsp + 0x30], rdx
punpcklqdq xmm0, xmm5
movups xmmword [rsp + 0x38], xmm0
mov qword [rsp + 0xc0], rdi
lea rdi, [rsp + 0xd0]
mov rcx, rdi
jmp 0x4984af
mov r14, qword [rsp + 0x30]
add rdi, rdi
mov qword [rsp + 0x60], rbp
mov rax, r14
add rax, rdi
je 0x498cde
test r14, r14
je 0x499298
mov rax, rdi
sar rax, 1
mov qword [rsp + 0xc0], rax
mov rdx, rax
cmp rax, 7
ja 0x4990a0
cmp rax, 1
jne 0x498f50
movzx eax, word [r14]
mov word [rsp + 0x70], ax
mov rax, rbp
xor r11d, r11d
mov qword [rsp + 0x68], rdx
lea r14, [rsp + 0x80]
mov rdx, qword [rsp + 0x20]
mov word [rax + rdi], r11w
mov rcx, r14
call sym.unk_3532
jmp 0x498322
test ecx, ecx
jne 0x498162
call sym.unk_2898
mov dword [rbx], 0x14
mov qword [rbx + 8], rax
jmp 0x498162
lea r14, [rsp + 0x80]
xor r10d, r10d
mov qword [rsp + 0x60], rbp
mov rcx, r14
mov word [rsp + 0x70], r10w
mov qword [rsp + 0x68], 0
call sym.unk_3530
jmp 0x498322
lea r8, [rax + rax]
mov rdx, rdi
test rax, rax
je 0x498dc4
cmp rax, 1
je 0x4991d8
call sym.memcpy
mov rax, qword [rsp + 0x98]
mov rcx, qword [rsp + 0x30]
mov rdx, qword [rsp + 0x90]
lea r8, [rax + rax]
mov qword [rsp + 0x38], rax
xor eax, eax
mov word [rcx + r8], ax
mov rcx, rdx
jmp 0x4987ab
test rax, rax
jne 0x4992b8
mov rax, rsi
jmp 0x498267
mov rcx, r13
call sym.unk_3548
test al, al
jne 0x498298
lea r14, [rsp + 0x60]
mov rdx, r13
mov rcx, r14
call sym.unk_3556
mov rdx, qword [rsp + 0x60]
lea rdi, [rsp + 0x70]
mov rcx, qword [rsp + 0x30]
mov rax, qword [rsp + 0x68]
cmp rdx, rdi
je 0x4991f1
mov r8, qword [rsp + 0x70]
cmp rcx, rsi
je 0x499243
movq xmm0, rax
movq xmm3, r8
mov r9, qword [rsp + 0x40]
mov qword [rsp + 0x30], rdx
punpcklqdq xmm0, xmm3
movups xmmword [rsp + 0x38], xmm0
test rcx, rcx
je 0x49925b
mov qword [rsp + 0x60], rcx
mov qword [rsp + 0x70], r9
mov rax, qword [rsp + 0x80]
mov rdx, qword [rsp + 0x50]
xor r15d, r15d
mov qword [rsp + 0x68], 0
mov word [rcx], r15w
mov qword [rsp + 0x80], 0
mov qword [rsp + 0x50], rax
test rdx, rdx
je 0x498eb5
mov rcx, qword [rsp + 0x20]
call sym.unk_3525
mov rcx, qword [rsp + 0x60]
mov qword [rsp + 0x68], 0
xor ebp, ebp
mov word [rcx], bp
mov rcx, r14
call sym.unk_3550
mov rdx, qword [rsp + 0x80]
test rdx, rdx
je 0x498ee5
lea rcx, [rsp + 0x80]
call sym.unk_3525
mov rcx, qword [rsp + 0x60]
cmp rcx, rdi
je 0x498298
call sym.operator_delete_void_
jmp 0x498298
mov rcx, qword [rsp + 0x28]
xor r8d, r8d
mov edx, 1
call sym.unk_3501
mov rdi, qword [rsp + 0x138]
jmp 0x4988ec
movq xmm0, rax
movq xmm3, r8
mov qword [rsp + 0x30], rdx
punpcklqdq xmm0, xmm3
movups xmmword [rsp + 0x38], xmm0
mov qword [rsp + 0x90], rdi
lea rdi, [rsp + 0xa0]
mov rcx, rdi
jmp 0x4987ab
test rax, rax
jne 0x4992c0
mov rax, rbp
jmp 0x498d0f
mov rax, qword [rsp + 0x138]
mov r13, qword [rax - 8]
add r13, 0x1e0
jmp 0x49863f
mov rcx, r13
call sym.operator_delete_void_
mov rax, qword [rsp + 0x138]
mov rbp, qword [rax - 8]
sub rax, 8
movq xmm4, rax
lea rdx, [rbp + 0x1b8]
movq xmm5, rbp
movq xmm0, rdx
lea rdx, [rbp + 0x1e0]
punpcklqdq xmm0, xmm5
movaps xmmword [rsp + 0x120], xmm0
movq xmm0, rdx
mov rdx, qword [rbp + 0x1d8]
punpcklqdq xmm0, xmm4
movaps xmmword [rsp + 0x130], xmm0
test rdx, rdx
je 0x498fea
lea rcx, [rbp + 0x1d8]
call sym.unk_3525
mov rcx, qword [rbp + 0x1b8]
add rbp, 0x1c8
cmp rcx, rbp
jne 0x498616
jmp 0x49861b
movdqa xmm2, xmmword [rsp + 0x40]
movups xmmword [rax + 0x10], xmm2
jmp 0x498923
mov rax, qword [rdi + 8]
mov qword [rsp + 0x60], rbp
mov r15, qword [rdi]
lea r14, [rax + rax]
mov rax, r15
add rax, r14
je 0x499041
test r15, r15
je 0x49928c
mov rax, r14
sar rax, 1
mov qword [rsp + 0xc0], rax
mov rdx, rax
cmp rax, 7
ja 0x499188
cmp rax, 1
jne 0x499170
movzx eax, word [r15]
mov word [rsp + 0x70], ax
mov rax, rbp
xor r9d, r9d
mov qword [rsp + 0x68], rdx
lea rdx, [rdi + 0x20]
mov word [rax + r14], r9w
lea r14, [rsp + 0x80]
mov rcx, r14
call sym.unk_3532
jmp 0x498322
lea rdx, [rsp + 0xc0]
lea rcx, [rsp + 0x60]
xor r8d, r8d
call sym.unk_3251
mov qword [rsp + 0x60], rax
mov rcx, rax
mov rax, qword [rsp + 0xc0]
mov qword [rsp + 0x70], rax
mov r8, rdi
mov rdx, r14
call sym.memcpy
mov rdx, qword [rsp + 0xc0]
mov rax, qword [rsp + 0x60]
lea rdi, [rdx + rdx]
jmp 0x498d0f
movzx edx, word [rsp + 0xd0]
mov r8d, 2
mov word [rcx], dx
mov rdx, rdi
jmp 0x498c64
lea rcx, [r13 - 0x28]
mov rdx, rbx
call sym.unk_3477
cmp al, 2
jne 0x49865b
mov ebp, dword [rbx]
jmp 0x498666
mov rdx, qword [rsp + 0x80]
test rdx, rdx
je 0x499145
mov rcx, r14
call sym.unk_3525
mov rcx, qword [rsp + 0x60]
cmp rcx, rbp
je 0x4985a1
call sym.operator_delete_void_
jmp 0x4985a1
mov r12d, r14d
jmp 0x498a1a
test rax, rax
jne 0x4992a4
mov rax, rbp
jmp 0x499072
lea rdx, [rsp + 0xc0]
lea rcx, [rsp + 0x60]
xor r8d, r8d
call sym.unk_3251
mov qword [rsp + 0x60], rax
mov rcx, rax
mov rax, qword [rsp + 0xc0]
mov qword [rsp + 0x70], rax
mov r8, r14
mov rdx, r15
call sym.memcpy
mov rdx, qword [rsp + 0xc0]
mov rax, qword [rsp + 0x60]
lea r14, [rdx + rdx]
jmp 0x499072
movzx edx, word [rsp + 0xa0]
mov r8d, 2
mov word [rcx], dx
mov rdx, rdi
jmp 0x498dc4
lea r8, [rax + rax]
mov rdx, rdi
test rax, rax
je 0x49921b
cmp rax, 1
je 0x49926d
call sym.memcpy
mov rax, qword [rsp + 0x68]
mov rcx, qword [rsp + 0x30]
mov rdx, qword [rsp + 0x60]
lea r8, [rax + rax]
mov qword [rsp + 0x38], rax
xor eax, eax
mov word [rcx + r8], ax
mov rcx, rdx
jmp 0x498e73
call sym.unk_2898
mov dword [rbx], 0x14
mov qword [rbx + 8], rax
jmp 0x4989f6
movq xmm0, rax
movq xmm3, r8
mov qword [rsp + 0x30], rdx
punpcklqdq xmm0, xmm3
movups xmmword [rsp + 0x38], xmm0
mov qword [rsp + 0x60], rdi
lea rdi, [rsp + 0x70]
mov rcx, rdi
jmp 0x498e73
movzx edx, word [rsp + 0x70]
mov r8d, 2
mov word [rcx], dx
mov rdx, rdi
jmp 0x49921b
lea rcx, [0x00505df0]
call method.std.__throw_length_error_char_const_
lea rcx, [0x00505da8]
call method.std.__throw_logic_error_char_const_
lea rcx, [0x00505da8]
call method.std.__throw_logic_error_char_const_
mov rcx, rbp
jmp 0x4991b2
lea rcx, [0x00505da8]
call method.std.__throw_logic_error_char_const_
mov rcx, rsi
jmp 0x4986a8
mov rcx, rbp
jmp 0x4990ca