Function at 0x414140
Capabilities:
Parse pe header
Resolve function by parsing pe exports

Disassembly:
push rbp
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbx
sub rsp, 0xd68
lea rbp, [rsp + 0x80]
movaps xmmword [rbp + 0xcd0], xmm6
mov r13, rdx
mov qword [rbp + 0xc40], rcx
mov rdx, qword [0x00437030]
test rdx, rdx
je 0x415a34
mov rax, qword [0x00437028]
mov rcx, rdx
shl rcx, 6
add rcx, rax
xor r15d, r15d
mov r8, rax
mov rdi, qword [rbp + 0xc40]
mov r10, qword [r8 + 0x28]
mov r9, qword [r8 + 0x30]
mov r12, qword [r8 + 0x38]
add r8, 0x40
shl r9, 4
nop
test r9, r9
je 0x4141e0
mov r11, r10
add r10, 0x10
mov rsi, qword [r11]
add rsi, r12
add r9, 0xfffffffffffffff0
cmp rsi, rdi
ja 0x4141b0
add rsi, qword [r11 + 8]
cmp rsi, rdi
jbe 0x4141b0
jmp 0x4141ed
inc r15
cmp r8, rcx
jne 0x41419a
jmp 0x415a34
mov rdi, qword [0x00437048]
test rdi, rdi
je 0x414229
mov r14, qword [0x00437040]
imul rcx, rdi, 0x230
xor r8d, r8d
xor ebx, ebx
nop dword [rax]
cmp qword [r14 + r8], r15
je 0x414447
inc rbx
add r8, 0x230
cmp rcx, r8
jne 0x414210
cmp rdx, r15
jbe 0x417b98
mov rcx, r15
shl rcx, 6
mov rdx, qword [rax + rcx + 8]
mov r8, qword [rax + rcx + 0x10]
lea rcx, [rbp + 0x8c0]
call fcn.004136e0
test byte [rbp + 0x8c0], 1
je 0x415a34
mov rsi, qword [rbp + 0x8c8]
mov r14, qword [rbp + 0x8d0]
mov rbx, qword [rbp + 0x8d8]
mov qword [rbp + 0x738], 0
mov qword [rbp + 0x740], 8
xorps xmm0, xmm0
movups xmmword [rbp + 0x748], xmm0
mov qword [rbp + 0x758], 8
mov qword [rbp + 0x760], 0
cmp rbx, 0x40
jb 0x415a18
cmp word [r14], 0x5a4d
jne 0x415a18
mov eax, dword [r14 + 0x3c]
mov rcx, rbx
sub rcx, rax
setb dl
cmp rcx, 0x88
setb cl
or cl, dl
jne 0x415a18
cmp dword [r14 + rax], 0x4550
jne 0x415a18
cmp word [r14 + rax + 0x18], 0x20b
jne 0x415a18
movzx ecx, word [r14 + rax + 0x14]
cmp rcx, 0x70
jb 0x415a18
lea rdx, [rax + 0x88]
add rcx, 0xffffffffffffff90
mov r8, rbx
sub r8, rdx
cmp r8, rcx
jb 0x415a18
mov r8d, dword [r14 + rax + 0x84]
shl r8, 3
cmp r8, rcx
ja 0x415a18
add rcx, rdx
movzx r10d, word [r14 + rax + 6]
lea edx, [r10*8]
lea rdx, [rdx + rdx*4]
mov r8, rbx
sub r8, rcx
setb r9b
cmp r8, rdx
setb dl
or dl, r9b
add rcx, r14
xor r11d, r11d
test dl, dl
cmove r11, rcx
jne 0x415a18
mov r8d, dword [r14 + rax + 0xc]
test r8, r8
je 0x41504c
mov rcx, rbx
sub rcx, r8
jb 0x415a18
mov r9d, dword [r14 + rax + 0x10]
lea rdx, [r9 + r9]
lea rdx, [rdx + rdx*8]
cmp rcx, rdx
jb 0x415a18
add rdx, r8
mov rcx, rbx
sub rcx, rdx
cmp rcx, 4
jb 0x415a18
mov qword [rbp + 0xc18], rsi
mov qword [rbp + 0xb98], r13
mov qword [rbp + 0xc60], rdx
mov ecx, dword [r14 + rdx]
mov qword [rbp + 0xc68], rcx
mov rax, qword [r14 + rax + 0x30]
mov qword [rbp + 0xc70], rax
mov qword [rbp + 0x8c0], 0
mov qword [rbp + 0x8c8], 8
mov qword [rbp + 0x8d0], 0
mov qword [rbp + 0xc88], r9
test r9, r9
je 0x416ea9
add r8, r14
mov eax, 8
mov qword [rbp + 0xcc8], 0
xor esi, esi
mov qword [rbp + 0xca0], r10
mov qword [rbp + 0xc98], r11
mov r9, qword [rbp + 0xc88]
mov qword [rbp + 0xc58], r8
jmp 0x4156ca
test rbx, rbx
mov qword [rbp + 0xb98], r13
je 0x4144e6
mov r15, r14
imul r14, rbx, 0x230
lea rsi, [r15 + r14]
lea rcx, [rbp - 0x58]
mov r8d, 0x230
mov rdx, rsi
call sub.msvcrt.dll_memcpy
lea rdx, [r15 + r14]
add rdx, 0x230
not rbx
add rbx, rdi
imul r8, rbx, 0x230
mov rcx, rsi
call sub.msvcrt.dll_memmove
lea rsi, [rdi - 1]
mov qword [0x00437048], rsi
cmp rsi, qword [0x00437038]
jne 0x4144b0
call fcn.00421150
mov r14, qword [0x00437040]
lea rcx, [r14 + 0x230]
imul r8, rsi, 0x230
mov rdx, r14
call sub.msvcrt.dll_memmove
lea rdx, [rbp - 0x58]
mov r8d, 0x230
mov rcx, r14
call sub.msvcrt.dll_memcpy
mov qword [0x00437048], rdi
mov rcx, qword [rbp + 0xc40]
sub rcx, r12
mov rdx, qword [r14 + 0x1c0]
mov eax, 3
test rdx, rdx
mov qword [rbp + 0xc40], rcx
mov qword [rbp + 0xc88], r14
je 0x414874
lea rdi, [rcx + 1]
mov rbx, qword [r14 + 0x1b8]
cmp rdx, 1
jne 0x414528
xor ecx, ecx
jmp 0x414555
xor r9d, r9d
mov r8, rdx
nop
mov r10, r8
shr r10, 1
lea rcx, [r10 + r9]
mov r11, rcx
shl r11, 5
cmp qword [rbx + r11], rdi
cmova rcx, r9
sub r8, r10
mov r9, rcx
cmp r8, 1
ja 0x414530
mov r8, rcx
shl r8, 5
cmp qword [rbx + r8], rdi
jne 0x414567
inc rcx
jmp 0x41456b
adc rcx, 0
cmp rcx, rdx
ja 0x417c93
test rcx, rcx
je 0x414874
lea rsi, [r14 + 0x1b0]
shl rcx, 5
lea r12, [rcx + rbx]
add r12, 0xffffffffffffffe0
neg rcx
lea rdx, [rbp + 0x8c0]
xor r8d, r8d
mov r9, qword [rbp + 0xc40]
jmp 0x4145be
add r12, 0xffffffffffffffe0
add rcx, 0x20
je 0x414874
cmp qword [r12 + 0x18], r9
jbe 0x414608
cmp qword [r12 + 8], r9
jbe 0x4145b0
cmp rdi, qword [r12]
jbe 0x4145b0
mov rcx, qword [r12 + 0x10]
mov rdx, qword [r14 + 0x1d0]
cmp rcx, rdx
jae 0x417c9f
imul rcx, rcx, 0x218
add rcx, qword [r14 + 0x1c8]
mov qword [rbp + 0x8c0], rcx
lea rdx, [rbp - 0x58]
xor r13d, r13d
mov r8, r12
jmp 0x41460b
mov r13b, 1
mov qword [rdx], r8
mov r14, qword [rbp + 0x8c0]
test r14, r14
je 0x414874
lea rcx, [rbp + 0x8c0]
mov rdx, r14
mov r15, qword [rbp + 0xc40]
mov r8, r15
mov r9, rsi
call fcn.004212d0
mov qword [rbp + 0x1d8], r15
mov qword [rbp + 0x1e0], r14
mov qword [rbp + 0x1e8], rsi
mov qword [rbp + 0x1f0], rsi
mov qword [rbp + 0x1f8], r15
mov qword [rbp + 0x200], rdi
mov qword [rbp + 0x208], rbx
mov qword [rbp + 0x210], r12
mov qword [rbp + 0x218], rdi
mov qword [rbp + 0x220], r15
mov byte [rbp + 0x228], r13b
lea rcx, [rbp - 0x58]
lea r8, [rbp + 0x1d8]
lea rdx, [rbp + 0x8c0]
call fcn.004217d0
cmp byte [rbp + 0x58], 2
je 0x414871
lea rbx, [rbp - 0x28]
lea r14, [rbp + 0x1f0]
lea rdi, [rbp + 0x8d1]
lea r13, [rbp + 0x510]
lea r12, [rbp + 0x8c0]
lea rsi, [rbp + 0x7a0]
lea r15, [rbp - 0x58]
nop word cs:[rax + rax]
movups xmm0, xmmword [rbp - 0x58]
movups xmm1, xmmword [rbp - 0x48]
movups xmm2, xmmword [rbp - 0x38]
movaps xmmword [rbp + 0x870], xmm2
movaps xmmword [rbp + 0x860], xmm1
movaps xmmword [rbp + 0x850], xmm0
mov r8d, 0x88
lea rcx, [rbp + 0x1d8]
mov rdx, rbx
call sub.msvcrt.dll_memcpy
mov rax, qword [rbp + 0x850]
lock dec qword [rax]
jne 0x41472f
lea rcx, [rbp + 0x850]
call fcn.004204d0
mov rax, qword [rbp + 0x1d8]
mov rcx, qword [rbp + 0x1e8]
movzx edx, byte [rax + 0x200]
cmp edx, 0x4b
je 0x414762
cmp edx, 0x4c
jne 0x41478e
mov byte [rax + 0x200], 0x4b
mov qword [rax + 0x208], 0
jmp 0x414780
mov r8, qword [rax + 0x208]
test r8, r8
je 0x414780
mov rcx, qword [r8]
add rcx, 0x10
add r8, 8
mov dl, 2
mov rax, r8
jmp 0x414789
mov rcx, qword [rcx]
add rcx, 0x10
xor edx, edx
xor r8d, r8d
jmp 0x4147bc
mov rcx, qword [rax + 0x200]
movzx edx, byte [rax + 0x208]
mov r8d, dword [rax + 0x20c]
mov dword [rbp + 0x7a3], r8d
mov eax, dword [rax + 0x209]
mov dword [rbp + 0x7a0], eax
mov r8d, 1
mov qword [rbp + 0x8c0], r8
mov qword [rbp + 0x8c8], rcx
mov byte [rbp + 0x8d0], dl
mov ecx, dword [rbp + 0x7a0]
mov edx, dword [rbp + 0x7a3]
mov dword [rdi + 3], edx
mov dword [rdi], ecx
mov qword [rbp + 0x8d8], rax
mov rcx, r13
mov rdx, r14
mov r8, r12
call fcn.00421cf0
mov qword [rbp + 0x540], 0
mov rax, qword [r14 + 0x68]
mov qword [rbp + 0x7f0], rax
movups xmm0, xmmword [r14 + 0x58]
movaps xmmword [rbp + 0x7e0], xmm0
movups xmm0, xmmword [r14 + 0x18]
movups xmm1, xmmword [r14 + 0x28]
movups xmm2, xmmword [r14 + 0x38]
movups xmm3, xmmword [r14 + 0x48]
movaps xmmword [rbp + 0x7d0], xmm3
movaps xmmword [rbp + 0x7c0], xmm2
movaps xmmword [rbp + 0x7b0], xmm1
movaps xmmword [rbp + 0x7a0], xmm0
mov rcx, r12
mov rdx, r13
mov r8, rsi
call fcn.004217d0
mov r8d, 0xb8
mov rcx, r15
mov rdx, r12
call sub.msvcrt.dll_memcpy
cmp byte [rbp + 0x58], 2
jne 0x4146e0
mov eax, dword [rbp - 0x58]
mov rdi, qword [rbp + 0xc88]
add rdi, 8
cmp eax, 5
mov rbx, qword [rbp + 0xb98]
je 0x414fbc
mov rcx, qword [rbp - 0x20]
mov qword [rbp + 0xc78], rcx
mov rcx, qword [rbp - 0x10]
mov qword [rbp + 0xc60], rcx
lea ecx, [rax - 3]
cmp ecx, 2
mov edx, 2
cmovb edx, ecx
test edx, edx
je 0x4149cb
mov r8d, dword [rbp - 0x54]
mov r12d, dword [rbp - 0x50]
mov r15d, dword [rbp - 0x4c]
mov r9, qword [rbp - 0x48]
mov qword [rbp + 0xcc0], r9
mov r9, qword [rbp - 0x40]
mov qword [rbp + 0xcb0], r9
mov r14, qword [rbp - 0x38]
mov r9, qword [rbp - 0x30]
mov qword [rbp + 0xc50], r9
mov r9, qword [rbp - 0x28]
mov r10, qword [rbp - 0x18]
mov qword [rbp + 0xcb8], r10
mov r10, qword [rbp - 8]
lea r11, [r14 + 0x60]
mov qword [rbp + 0xc48], r11
lea r11, [r14 + 0x1b8]
mov qword [rbp + 0xca8], r11
mov r11, qword [rbx]
mov qword [rbp + 0xc98], r11
mov rsi, qword [rbx + 8]
cmp edx, 1
mov qword [rbp + 0xc68], r14
mov qword [rbp + 0xc80], r9
mov qword [rbp + 0xb98], rbx
mov qword [rbp + 0xc88], rdi
mov qword [rbp + 0xc70], r10
jne 0x4149d2
mov qword [rbp + 0xc58], r8
cmp qword [rbp + 0xc60], 0
sete al
mov qword [rbp + 0xca0], r15
mov rdi, r15
shl rdi, 0x20
or rdi, r12
cmp ecx, 2
setb cl
or cl, al
jne 0x414990
mov edx, 8
mov rcx, qword [rbp + 0xc78]
call fcn.00401a50
mov eax, 2
mov qword [rbp + 0xcc8], rax
mov r13d, 3
mov rbx, r14
mov r12, qword [rbp + 0xcb0]
mov r14, qword [rbp + 0xcc0]
mov rcx, qword [rbp + 0xc88]
mov rdx, qword [rbp + 0xc40]
call fcn.00423a90
jmp 0x414bee
xor esi, esi
jmp 0x414f8d
mov eax, eax
mov rdi, r8
shl rdi, 0x20
or rdi, rax
mov r14, r15
shl r14, 0x20
or r14, r12
cmp qword [rbp + 0xcb8], r10
je 0x414aae
mov rbx, qword [r10 - 8]
mov eax, dword [rbx + 0x28]
xor r13d, r13d
mov qword [rbp + 0xc58], rax
test eax, eax
setne byte [rbp + 0xc18]
mov eax, dword [rbx + 0x2c]
mov qword [rbp + 0xcc8], 0
mov qword [rbp + 0xca0], rax
test eax, eax
setne r12b
cmp dword [rbx], 1
jne 0x414b9c
mov rax, qword [rbp + 0xc48]
cmp dword [rax], 0x2f
je 0x414b9c
mov rax, qword [rbx + 8]
mov qword [rbp + 0xc90], rax
mov rax, qword [rbp + 0xc68]
test byte [rax + 0x1b0], 1
jne 0x414b4f
lea rcx, [rbp + 0x8c0]
mov rdx, qword [rbp + 0xc48]
call fcn.0041dbb0
mov r15, qword [rbp + 0xc68]
lea rcx, [rbp - 0x58]
lea r8, [rbp + 0x8c0]
mov rdx, r15
mov r9, qword [rbp + 0xc50]
call fcn.0041e060
cmp qword [r15 + 0x1b0], 0
je 0x414b1b
lea rcx, [rbp - 0x58]
call fcn.0041f860
jmp 0x414b4f
mov rax, qword [r9 + 0x28]
test rax, rax
je 0x414abd
mov rdx, qword [r9 + 0x30]
jmp 0x414abd
mov qword [rbp + 0xcc8], r12
mov qword [rbp + 0xca0], r15
mov qword [rbp + 0xc58], r8
cmp qword [rbp + 0xc60], 0
je 0x414af9
mov rbx, rdx
mov edx, 8
mov rcx, qword [rbp + 0xc78]
mov r15, rax
call fcn.00401a50
mov rdx, rbx
mov rax, r15
mov r13d, 3
mov rbx, qword [rbp + 0xcb0]
mov r12, qword [rbp + 0xcc0]
test rax, rax
jne 0x414bee
jmp 0x4149b3
mov r15, qword [rbp + 0xca8]
je 0x414b2c
mov rcx, r15
call fcn.0041f860
mov rax, qword [rbp + 0xc68]
mov qword [rax + 0x1b0], 1
movups xmm0, xmmword [rbp - 0x58]
movups xmm1, xmmword [rbp - 0x48]
movups xmmword [r15 + 0x10], xmm1
movups xmmword [r15], xmm0
mov rax, qword [rbp + 0xca8]
cmp qword [rax], 0
je 0x414b7c
mov rcx, qword [rbp + 0xc90]
cmp rcx, qword [rax + 8]
jae 0x414b9c
mov rax, qword [rax]
lea rdx, [rcx + rcx*2]
mov rcx, qword [rax + rdx*8 + 8]
mov r8, qword [rax + rdx*8 + 0x10]
jmp 0x414b9e
mov rax, qword [rbp + 0xc68]
cmp byte [rax + 0x1c0], 0x4b
jne 0x415029
mov rax, qword [rax + 0x1c8]
test rax, rax
jne 0x414b5c
xor ecx, ecx
add qword [rbp + 0xc70], 0xfffffffffffffff8
movzx eax, byte [rbp + 0xc18]
mov r13b, al
mov rax, qword [rbp + 0xcc8]
mov al, r12b
mov qword [rbp + 0xcc8], rax
mov rax, qword [rbx + 0x18]
test rax, rax
je 0x415003
mov rdx, qword [rbx + 0x20]
mov rbx, qword [rbp + 0xcb0]
mov r12, qword [rbp + 0xcc0]
mov qword [rbp + 0xcc0], rcx
mov qword [rbp + 0xcb0], r8
mov qword [rbp + 0x8c0], rdi
mov qword [rbp + 0x8c8], r14
mov qword [rbp + 0x8d0], r12
mov qword [rbp + 0x8d8], rbx
mov rcx, qword [rbp + 0xc40]
mov qword [rbp + 0x8e0], rcx
mov qword [rbp + 0x8e8], rax
mov qword [rbp + 0x8f0], rdx
mov rax, qword [rsi + 0x20]
lea rdx, [rbp + 0x8c0]
mov rcx, qword [rbp + 0xc98]
mov qword [rbp + 0xc18], rax
call rax
jmp 0x414cbc
mov r14, qword [r14 + 0x20]
mov rdi, qword [rbp + 0xcb0]
mov r15, qword [rbp + 0xcc0]
mov qword [rbp + 0xcc0], rax
mov qword [rbp + 0xcb0], rcx
nop word cs:[rax + rax]
mov qword [rbp + 0x8c0], r12
mov qword [rbp + 0x8c8], rbx
mov qword [rbp + 0x8d0], r15
mov qword [rbp + 0x8d8], rdi
mov rax, qword [rbp + 0xc40]
mov qword [rbp + 0x8e0], rax
mov qword [rbp + 0x8e8], rsi
mov qword [rbp + 0x8f0], r14
mov rcx, qword [rbp + 0xc98]
lea rdx, [rbp + 0x8c0]
call qword [rbp + 0xc18]
lea ecx, [r13 - 3]
cmp ecx, 2
mov eax, 2
cmovb eax, ecx
cmp eax, 1
je 0x414de0
cmp eax, 2
jne 0x414f7c
mov eax, r13d
mov r12, qword [rbp + 0xc58]
shl r12, 0x20
or r12, rax
mov eax, dword [rbp + 0xcc8]
mov rbx, qword [rbp + 0xca0]
shl rbx, 0x20
or rbx, rax
mov rax, qword [rbp + 0xc70]
cmp qword [rbp + 0xcb8], rax
je 0x414e5f
mov r14, qword [rax - 8]
mov eax, dword [r14 + 0x28]
mov ecx, dword [r14 + 0x2c]
xor r13d, r13d
mov qword [rbp + 0xc58], rax
test eax, eax
setne sil
mov qword [rbp + 0xcc8], 0
mov qword [rbp + 0xca0], rcx
test ecx, ecx
setne dil
test byte [r14], 1
je 0x414f30
mov rax, qword [rbp + 0xc48]
cmp dword [rax], 0x2f
je 0x414f30
mov rax, qword [r14 + 8]
mov qword [rbp + 0xc90], rax
mov rax, qword [rbp + 0xc68]
test byte [rax + 0x1b0], 1
jne 0x414ee1
lea rcx, [rbp + 0x8c0]
mov rdx, qword [rbp + 0xc48]
call fcn.0041dbb0
mov r15, qword [rbp + 0xc68]
lea rcx, [rbp - 0x58]
mov rdx, r15
lea r8, [rbp + 0x8c0]
mov r9, qword [rbp + 0xc50]
call fcn.0041e060
cmp qword [r15 + 0x1b0], 0
je 0x414ead
lea rcx, [rbp - 0x58]
call fcn.0041f860
jmp 0x414ee1
cmp qword [rbp + 0xc60], 0
sete al
cmp ecx, 2
setb cl
or cl, al
jne 0x414e06
mov edx, 8
mov rcx, qword [rbp + 0xc78]
call fcn.00401a50
mov eax, dword [rbp + 0xcc8]
mov r12, qword [rbp + 0xca0]
shl r12, 0x20
or r12, rax
mov eax, 2
mov qword [rbp + 0xcc8], rax
mov r13d, 3
mov rdi, qword [rbp + 0xc68]
mov r15, qword [rbp + 0xcb0]
mov rbx, qword [rbp + 0xcc0]
mov rcx, qword [rbp + 0xc88]
mov rdx, qword [rbp + 0xc40]
call fcn.00423a90
mov rsi, rax
mov r14, rdx
jmp 0x414c70
mov rax, qword [rbp + 0xc80]
mov rsi, qword [rax + 0x28]
test rsi, rsi
je 0x414e73
mov r14, qword [rax + 0x30]
cmp qword [rbp + 0xc60], 0
je 0x414e8e
mov edx, 8
mov rcx, qword [rbp + 0xc78]
call fcn.00401a50
mov r13d, 3
mov rdi, qword [rbp + 0xcb0]
mov r15, qword [rbp + 0xcc0]
test rsi, rsi
jne 0x414c70
jmp 0x414e41
mov r15, qword [rbp + 0xca8]
je 0x414ebe
mov rcx, r15
call fcn.0041f860
mov rax, qword [rbp + 0xc68]
mov qword [rax + 0x1b0], 1
movups xmm0, xmmword [rbp - 0x58]
movups xmm1, xmmword [rbp - 0x48]
movups xmmword [r15 + 0x10], xmm1
movups xmmword [r15], xmm0
mov rax, qword [rbp + 0xca8]
cmp qword [rax], 0
jne 0x414f0e
mov rax, qword [rbp + 0xc68]
cmp byte [rax + 0x1c0], 0x4b
jne 0x415024
mov rax, qword [rax + 0x1c8]
test rax, rax
je 0x414f30
mov rdx, qword [rbp + 0xc90]
cmp rdx, qword [rax + 8]
jae 0x414f30
mov rcx, qword [rax]
lea rdx, [rdx + rdx*2]
mov rax, qword [rcx + rdx*8 + 8]
mov rcx, qword [rcx + rdx*8 + 0x10]
jmp 0x414f32
xor eax, eax
add qword [rbp + 0xc70], 0xfffffffffffffff8
mov r13b, sil
mov rdx, qword [rbp + 0xcc8]
mov dl, dil
mov qword [rbp + 0xcc8], rdx
mov rsi, qword [r14 + 0x18]
test rsi, rsi
jne 0x414c43
mov rdi, qword [rbp + 0xcb0]
mov r15, qword [rbp + 0xcc0]
mov qword [rbp + 0xcc0], rax
mov qword [rbp + 0xcb0], rcx
jmp 0x414e41
mov sil, 1
mov rbx, qword [rbp + 0xb98]
mov rdi, qword [rbp + 0xc88]
cmp qword [rbp + 0xc60], 0
sete al
cmp ecx, 2
setb cl
or cl, al
jne 0x414fb3
mov edx, 8
mov rcx, qword [rbp + 0xc78]
call fcn.00401a50
test sil, sil
jne 0x415a34
mov rcx, rdi
mov rdx, qword [rbp + 0xc40]
call fcn.00423a90
test rax, rax
je 0x415a34
mov rcx, qword [rbx]
mov r8, qword [rbx + 8]
mov dword [rbp + 0x8c0], 3
mov qword [rbp + 0x8c8], rax
mov qword [rbp + 0x8d0], rdx
lea rdx, [rbp + 0x8c0]
call qword [r8 + 0x20]
jmp 0x415a34
mov rbx, qword [rbp + 0xcb0]
mov r12, qword [rbp + 0xcc0]
mov qword [rbp + 0xcc0], rcx
mov qword [rbp + 0xcb0], r8
jmp 0x4149b3
mov sil, 1
jmp 0x41502b
xor esi, esi
cmp qword [rbp + 0xc60], 0
mov rbx, qword [rbp + 0xb98]
mov rdi, qword [rbp + 0xc88]
jne 0x414fa2
jmp 0x414fb3
mov qword [rbp + 0xc18], rsi
mov qword [rbp + 0xb98], r13
mov qword [rbp + 0x8c8], 8
mov qword [rbp + 0x8d0], 0
mov rax, qword [rbp + 0x8c8]
mov qword [rbp + 0x510], rax
mov rax, qword [rbp + 0x8d0]
mov qword [rbp + 0x518], rax
xor esi, esi
xor edi, edi
xor ecx, ecx
xor eax, eax
lea r9, [rbp + 0x858]
movabs r8, 0x8000000000000000
mov rdx, qword [rbp + 0x510]
mov qword [r9], rdx
mov rdx, qword [rbp + 0x518]
mov qword [r9 + 8], rdx
mov qword [rbp + 0x850], rax
mov qword [rbp + 0x868], r14
mov qword [rbp + 0x870], rbx
mov qword [rbp + 0x878], r11
mov qword [rbp + 0x880], r10
mov qword [rbp + 0x888], rcx
mov qword [rbp + 0x890], rbx
mov qword [rbp + 0x898], rdi
mov qword [rbp + 0x8a0], rsi
mov qword [rbp + 0x7a0], r8
lea rdx, str..debug_abbrev.debug_addr.debug_aranges.debug_cu_index.debug_info.debug_line.debug_line_str.debug_loc.debug_loclists.debug_ranges.debug_rnglists.debug_str.debug_str_offsets.debug_tu_index.debug_typesUtf8Errorvalid_up_toerror_lenNoneSome:
lea rsi, [rbp + 0x850]
mov r8d, 0xd
mov rcx, rsi
call fcn.004182b0
test rax, rax
cmove rdx, rax
mov qword [rbp + 0xcc8], rdx
mov edi, 1
cmove rax, rdi
mov qword [rbp + 0xcc0], rax
lea rdx, [0x0043bfbd]
mov r8d, 0xb
mov rcx, rsi
call fcn.004182b0
test rax, rax
cmove rdx, rax
mov qword [rbp + 0xcb0], rdx
cmove rax, rdi
mov qword [rbp + 0xca0], rax
lea rdx, [0x0043bfc8]
mov r8d, 0xe
mov rcx, rsi
call fcn.004182b0
test rax, rax
cmove rdx, rax
mov qword [rbp + 0xc98], rdx
cmove rax, rdi
mov qword [rbp + 0xc88], rax
lea rdx, [0x0043bfe5]
mov r8d, 0xb
mov rcx, rsi
call fcn.004182b0
test rax, rax
cmove rdx, rax
mov qword [rbp + 0xc70], rdx
cmove rax, rdi
mov qword [rbp + 0xc58], rax
lea rdx, [0x0043bff0]
mov r8d, 0xb
mov rcx, rsi
call fcn.004182b0
test rax, rax
cmove rdx, rax
mov qword [rbp + 0xc60], rdx
cmove rax, rdi
mov qword [rbp + 0xc68], rax
lea rdx, [0x0043bffb]
mov r8d, 0xf
mov rcx, rsi
call fcn.004182b0
test rax, rax
cmove rdx, rax
mov qword [rbp + 0xcb8], rdx
cmove rax, rdi
mov qword [rbp + 0xc78], rax
lea rdx, [0x0043c03f]
mov r8d, 0xa
mov rcx, rsi
call fcn.004182b0
test rax, rax
cmove rdx, rax
mov qword [rbp + 0xc48], rdx
cmove rax, rdi
mov qword [rbp + 0xc80], rax
lea rdx, [0x0043c049]
mov r8d, 0x12
mov rcx, rsi
call fcn.004182b0
test rax, rax
cmove rdx, rax
mov qword [rbp + 0xc90], rdx
cmove rax, rdi
mov qword [rbp + 0xca8], rax
lea rdx, [0x0043c06a]
mov r8d, 0xc
mov rcx, rsi
call fcn.004182b0
test rax, rax
cmove rdx, rax
mov qword [rbp + 0xc50], rdx
cmove rax, rdi
mov qword [rbp + 0xc08], rax
lea rdx, [0x0043c00a]
mov r8d, 0xa
mov rcx, rsi
call fcn.004182b0
test rax, rax
cmove rdx, rax
mov qword [rbp + 0xc10], rdx
cmove rax, rdi
mov qword [rbp + 0xc00], rax
lea rdx, [0x0043c014]
mov r8d, 0xf
mov rcx, rsi
call fcn.004182b0
test rax, rax
cmove rdx, rax
mov qword [rbp + 0xbc8], rdx
cmove rax, rdi
mov qword [rbp + 0xc38], rax
lea rdx, [0x0043c023]
mov r8d, 0xd
mov rcx, rsi
call fcn.004182b0
mov r13, rax
mov rsi, rdx
lea rdx, [0x0043c030]
mov r8d, 0xf
lea rcx, [rbp + 0x850]
call fcn.004182b0
test r13, r13
cmove rsi, r13
cmove r13, rdi
test rax, rax
cmovne rdi, rax
cmove rdx, rax
xorps xmm0, xmm0
movups xmmword [rbp + 0x9a0], xmm0
mov rax, qword [rbp + 0xcc0]
mov qword [rbp + 0x8d0], rax
mov rax, qword [rbp + 0xcc8]
mov qword [rbp + 0x8d8], rax
mov rax, qword [rbp + 0xca0]
mov qword [rbp + 0x8e0], rax
mov rax, qword [rbp + 0xcb0]
mov qword [rbp + 0x8e8], rax
mov rax, qword [rbp + 0xc88]
mov qword [rbp + 0x8f0], rax
mov rax, qword [rbp + 0xc98]
mov qword [rbp + 0x8f8], rax
mov rax, qword [rbp + 0xc58]
mov qword [rbp + 0x900], rax
mov rax, qword [rbp + 0xc70]
mov qword [rbp + 0x908], rax
mov rax, qword [rbp + 0xc68]
mov qword [rbp + 0x910], rax
mov rax, qword [rbp + 0xc60]
mov qword [rbp + 0x918], rax
mov rax, qword [rbp + 0xc78]
mov qword [rbp + 0x920], rax
mov rax, qword [rbp + 0xcb8]
mov qword [rbp + 0x928], rax
mov rax, qword [rbp + 0xc80]
mov qword [rbp + 0x930], rax
mov rax, qword [rbp + 0xc48]
mov qword [rbp + 0x938], rax
mov rax, qword [rbp + 0xca8]
mov qword [rbp + 0x940], rax
mov rax, qword [rbp + 0xc90]
mov qword [rbp + 0x948], rax
mov rax, qword [rbp + 0xc08]
mov qword [rbp + 0x950], rax
mov rax, qword [rbp + 0xc50]
mov qword [rbp + 0x958], rax
mov rax, qword [rbp + 0xc00]
mov qword [rbp + 0x960], rax
mov rax, qword [rbp + 0xc10]
mov qword [rbp + 0x968], rax
mov rax, qword [rbp + 0xc38]
mov qword [rbp + 0x970], rax
mov rax, qword [rbp + 0xbc8]
mov qword [rbp + 0x978], rax
mov qword [rbp + 0x980], r13
mov qword [rbp + 0x988], rsi
mov qword [rbp + 0x990], rdi
mov qword [rbp + 0x998], rdx
mov qword [rbp + 0x9b8], 0
mov byte [rbp + 0x9c0], 0
mov qword [rbp + 0x8c0], 1
mov qword [rbp + 0x8c8], 1
movzx eax, byte [0x00444030]
mov ecx, 0x108
call fcn.00431ed0
test rax, rax
je 0x417cab
mov r13, rax
lea rdx, [rbp + 0x8c0]
mov r8d, 0x108
mov rcx, rax
call sub.msvcrt.dll_memcpy
mov qword [rbp + 0xb90], r13
mov qword [rbp + 0xb70], 0
mov qword [rbp + 0xb78], 8
mov qword [rbp + 0xb80], 0
mov rax, qword [r13 + 0x30]
mov rcx, qword [r13 + 0x38]
mov qword [rbp + 0xc88], rax
mov qword [rbp + 0x8a8], rax
mov qword [rbp + 0x8b0], rcx
mov qword [rbp + 0x8b8], 0
mov qword [rbp + 0xca0], rcx
test rcx, rcx
mov qword [rbp + 0xc98], r13
je 0x4158c4
mov edi, 8
mov qword [rbp + 0xcc8], 0
mov eax, 8
mov qword [rbp + 0xcb0], rax
xor esi, esi
mov r13, qword [rbp + 0xca0]
jmp 0x4155e3
mov rax, qword [rbp + 0xb78]
mov qword [rbp + 0xcb0], rax
mov rax, qword [rbp + 0xcb0]
mov qword [rax + rdi - 8], r13
mov rcx, qword [rbp + 0xcc0]
mov qword [rax + rdi], rcx
mov rcx, qword [rbp + 0xcc8]
inc rcx
mov qword [rbp + 0xcc8], rcx
mov qword [rbp + 0xb80], rcx
mov r13, qword [rbp + 0x8b0]
add rdi, 0x10
test r13, r13
je 0x41575f
lea rcx, [rbp + 0x8c0]
lea rdx, [rbp + 0x8a8]
mov r8, rsi
call fcn.00418480
cmp byte [rbp + 0x8e9], 3
je 0x4159a1
sub r13, qword [rbp + 0x8b0]
mov rax, qword [rbp + 0x8d0]
mov qword [rbp + 0xcc0], rax
mov rsi, r13
add rsi, qword [rbp + 0x8b8]
mov r13, qword [rbp + 0x8e0]
mov qword [rbp + 0x8b8], rsi
mov rax, qword [rbp + 0xcc8]
cmp rax, qword [rbp + 0xb70]
jne 0x4155a0
lea rcx, [rbp + 0xb70]
call fcn.004181f0
jmp 0x415592
mov rax, qword [rbp + 0x8c8]
add rdi, qword [rbp + 0xc70]
add r13, rdi
mov rdx, qword [rbp + 0xcc8]
mov rcx, rdx
shl rcx, 4
mov qword [rax + rcx], r13
mov r8, qword [rbp + 0xcb0]
mov qword [rax + rcx + 8], r8
inc rdx
mov qword [rbp + 0xcc8], rdx
mov qword [rbp + 0x8d0], rdx
mov r10, qword [rbp + 0xca0]
mov r11, qword [rbp + 0xc98]
mov r8, qword [rbp + 0xc58]
mov r9, qword [rbp + 0xc88]
mov rdi, qword [rbp + 0xcc0]
add rsi, rdi
inc rsi
cmp rsi, r9
jae 0x415801
lea rcx, [rsi + rsi*8]
movzx edi, byte [r8 + rcx*2 + 0x11]
movzx edx, word [r8 + rcx*2 + 0xe]
and edx, 0x30
cmp dx, 0x20
jne 0x4156bb
lea r13, [r8 + rcx*2]
movzx edx, word [r13 + 0xc]
cmp edx, 0xfeff
movsx ecx, dx
cmovb ecx, edx
test ecx, ecx
jle 0x4156bb
mov qword [rbp + 0xcc0], rdi
mov edx, ecx
dec rdx
lea rcx, [rdx + rdx*4]
lea rcx, [r11 + rcx*8]
cmp rdx, r10
mov edx, 0x1d
cmovae rcx, rdx
jae 0x416e68
test rcx, rcx
je 0x416e68
mov qword [rbp + 0xcb0], r13
mov edi, dword [r13 + 8]
mov r13d, dword [rcx + 0xc]
mov rcx, qword [rbp + 0xcc8]
cmp rcx, qword [rbp + 0x8c0]
jne 0x41565f
lea rcx, [rbp + 0x8c0]
call fcn.004181f0
jmp 0x415658
cmp qword [rbp + 0xcc8], 2
mov r13, qword [rbp + 0xc98]
jb 0x4158c4
mov rcx, qword [rbp + 0xb78]
cmp qword [rbp + 0xcc8], 0x15
jae 0x4158b1
mov rsi, qword [rbp + 0xcc8]
shl rsi, 4
add rsi, rcx
lea r8, [rcx + 0x10]
mov eax, 0x10
mov r9, rcx
mov r13, qword [rbp + 0xc98]
jmp 0x4157ca
mov r10, rcx
mov qword [r10], r8
mov qword [r10 + 8], r9
lea r8, [rdx + 0x10]
add rax, 0x10
mov r9, rdx
cmp r8, rsi
je 0x4158c4
mov rdx, r8
mov r8, qword [r9 + 0x10]
cmp r8, qword [r9]
jae 0x4157b6
mov r9, qword [r9 + 0x18]
mov r11, rax
movups xmm0, xmmword [rcx + r11 - 0x10]
movups xmmword [rcx + r11], xmm0
cmp r11, 0x10
je 0x4157ac
lea r10, [r11 - 0x10]
cmp r8, qword [rcx + r11 - 0x20]
mov r11, r10
jb 0x4157dd
add r10, rcx
jmp 0x4157af
cmp qword [rbp + 0xcc8], 2
jb 0x416ea9
mov rcx, qword [rbp + 0x8c8]
cmp qword [rbp + 0xcc8], 0x15
jae 0x416e8f
mov rsi, qword [rbp + 0xcc8]
shl rsi, 4
add rsi, rcx
lea r8, [rcx + 0x10]
mov eax, 0x10
mov r9, rcx
mov r10, qword [rbp + 0xca0]
mov r11, qword [rbp + 0xc98]
jmp 0x41587a
mov r10, rcx
mov qword [r10], r8
mov qword [r10 + 8], r9
mov r10, qword [rbp + 0xca0]
mov r11, qword [rbp + 0xc98]
lea r8, [rdx + 0x10]
add rax, 0x10
mov r9, rdx
cmp r8, rsi
je 0x416ea9
mov rdx, r8
mov r8, qword [r9 + 0x10]
cmp r8, qword [r9]
jae 0x415866
mov r9, qword [r9 + 0x18]
mov r11, rax
movups xmm0, xmmword [rcx + r11 - 0x10]
movups xmmword [rcx + r11], xmm0
cmp r11, 0x10
je 0x41584e
lea r10, [r11 - 0x10]
cmp r8, qword [rcx + r11 - 0x20]
mov r11, r10
jb 0x41588d
add r10, rcx
jmp 0x415851
mov rdx, qword [rbp + 0xcc8]
call fcn.00418730
mov r13, qword [rbp + 0xc98]
mov qword [rbp + 0xc20], 0
mov qword [rbp + 0xc28], 8
mov qword [rbp + 0xc30], 0
mov qword [rbp + 0xbe0], 0
mov qword [rbp + 0xbe8], 8
mov qword [rbp + 0xbf0], 0
movups xmm0, xmmword [r13 + 0x40]
movups xmmword [rbp + 0xb08], xmm0
mov qword [rbp + 0xb18], 0
lea rcx, [rbp + 0x8c0]
lea rdx, [rbp + 0xb08]
call fcn.00418850
mov rax, qword [rbp + 0x8c0]
cmp rax, 3
jne 0x415a4f
mov rsi, qword [rbp + 0xbe8]
mov rbx, qword [rbp + 0xbf0]
inc rbx
mov rcx, rsi
cmp rbx, 1
je 0x41596f
lea r15, [rcx + 0x218]
dec rbx
call fcn.0041dac0
mov rcx, r15
jmp 0x415955
cmp qword [rbp + 0xbe0], 0
je 0x415986
mov edx, 8
mov rcx, rsi
call fcn.00401a50
cmp qword [rbp + 0xc20], 0
je 0x4159a1
mov rcx, qword [rbp + 0xc28]
mov edx, 8
call fcn.00401a50
cmp qword [rbp + 0xb70], 0
je 0x4159bc
mov rcx, qword [rbp + 0xb78]
mov edx, 8
call fcn.00401a50
mov r13, qword [rbp + 0xb90]
lock dec qword [r13]
jne 0x4159d6
lea rcx, [rbp + 0xb90]
call fcn.004204d0
mov rsi, qword [rbp + 0x7a0]
shl rsi, 1
test rsi, rsi
je 0x4159f6
mov rcx, qword [rbp + 0x7a8]
mov edx, 8
call fcn.00401a50
cmp qword [rbp + 0x850], 0
mov rsi, qword [rbp + 0xc18]
je 0x415a18
mov rcx, qword [rbp + 0x858]
mov edx, 8
call fcn.00401a50
lea rcx, [rbp + 0x738]
call fcn.00418060
mov rcx, r14
call sub.KERNEL32.dll_UnmapViewOfFile
mov rcx, rsi
call sub.KERNEL32.dll_CloseHandle
movaps xmm6, xmmword [rbp + 0xcd0]
add rsp, 0xd68
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
mov rcx, r13
add rcx, 0x10
mov qword [rbp + 0xcc8], rcx
lea rdi, [rbp + 0x8d8]
mov rcx, qword [r13 + 0xd0]
mov qword [rbp + 0xc60], rcx
mov rcx, qword [r13 + 0xd8]
mov qword [rbp + 0xc70], rcx
movzx ecx, byte [r13 + 0x100]
mov byte [rbp + 0xc68], cl
mov rcx, qword [r13 + 0x20]
mov qword [rbp + 0xc58], rcx
mov rcx, qword [r13 + 0x28]
mov qword [rbp + 0xcb0], rcx
jmp 0x415ad1
lea rdi, [rbp + 0x8d8]
lea rcx, [rbp + 0x8c0]
lea rdx, [rbp + 0xb08]
call fcn.00418850
mov rax, qword [rbp + 0x8c0]
cmp rax, 3
je 0x415941
mov rsi, qword [rbp + 0x8c8]
mov rcx, qword [rbp + 0x8d0]
mov rdx, qword [rdi + 0x30]
mov qword [rbp + 0x540], rdx
movups xmm0, xmmword [rdi]
movups xmm1, xmmword [rdi + 0x10]
movups xmm2, xmmword [rdi + 0x20]
movaps xmmword [rbp + 0x530], xmm2
movaps xmmword [rbp + 0x520], xmm1
movaps xmmword [rbp + 0x510], xmm0
movaps xmmword [rbp + 0x410], xmm0
lea rdx, [rbp + 0x520]
movups xmm0, xmmword [rdx]
movups xmm1, xmmword [rdx + 0x10]
movaps xmmword [rbp + 0x820], xmm0
movaps xmmword [rbp + 0x830], xmm1
mov rdx, qword [rdx + 0x20]
mov qword [rbp + 0x840], rdx
cmp rax, 2
je 0x416ce7
test rax, rax
jne 0x415aad
mov rax, rcx
or rax, 4
cmp rax, 5
je 0x415aad
mov rax, qword [rbp + 0xbf0]
mov qword [rbp + 0xcc0], rax
mov qword [rbp + 0xb20], 0
mov qword [rbp + 0xb28], rsi
mov qword [rbp + 0xb30], rcx
movaps xmm0, xmmword [rbp + 0x410]
lea rcx, [rbp + 0xb38]
movups xmmword [rcx], xmm0
mov rax, qword [rbp + 0x840]
mov qword [rcx + 0x30], rax
movaps xmm0, xmmword [rbp + 0x820]
movaps xmm1, xmmword [rbp + 0x830]
movups xmmword [rcx + 0x20], xmm1
movups xmmword [rcx + 0x10], xmm0
lea rcx, [rbp + 0x8c0]
mov rdx, qword [rbp + 0xcc8]
lea r8, [rbp + 0xb20]
call fcn.00418e50
cmp dword [rbp + 0x8c0], 2
je 0x415aa6
mov r8d, 0x1a8
lea rdi, [rbp + 0x510]
mov rcx, rdi
lea rdx, [rbp + 0x8c0]
call sub.msvcrt.dll_memcpy
mov rdx, qword [rbp + 0x668]
lea rax, [rdx + 0x10]
mov r8, qword [rbp + 0x538]
mov r9, qword [rbp + 0x540]
mov qword [rbp + 0xb20], r8
mov qword [rbp + 0xb28], r9
mov qword [rbp + 0xb30], rdi
mov qword [rbp + 0xb38], rax
mov qword [rbp + 0xb40], 0
test r9, r9
je case.0x4167e4.3
lea r10, [r9 - 1]
lea r11, [r8 + 1]
xor eax, eax
xor ecx, ecx
movzx edi, byte [r11 - 1]
cmp ecx, 0x3f
jne 0x415c61
cmp dil, 2
jae 0x416dba
movzx edi, dil
mov r13d, edi
and r13d, 0x7f
shl r13, cl
or rax, r13
test dil, dil
jns 0x415c88
add ecx, 7
inc r11
add r10, 0xffffffffffffffff
jb 0x415c4d
jmp 0x416dc3
mov qword [rbp + 0xb20], r11
mov qword [rbp + 0xb28], r10
test rax, rax
jne 0x415d33
lock dec qword [rdx]
jne 0x415cb1
mov rcx, qword [rbp + 0x668]
call fcn.0041b520
cmp dword [rbp + 0x570], 0x2f
je 0x415aa6
cmp qword [rbp + 0x5b0], 0
je 0x415cd9
mov rcx, qword [rbp + 0x5b8]
mov edx, 2
call fcn.00401a50
cmp qword [rbp + 0x5c8], 0
je 0x415cf4
mov rcx, qword [rbp + 0x5d0]
mov edx, 8
call fcn.00401a50
cmp qword [rbp + 0x5e0], 0
je 0x415d0f
mov rcx, qword [rbp + 0x5e8]
mov edx, 2
call fcn.00401a50
cmp qword [rbp + 0x5f8], 0
je 0x415aa6
mov rcx, qword [rbp + 0x600]
mov edx, 8
call fcn.00401a50
jmp 0x415aa6
lea rcx, [rax - 1]
cmp rcx, qword [rdx + 0x20]
jae 0x415d47
imul rcx, rcx, 0x70
add rcx, qword [rdx + 0x18]
jmp 0x415dc1
mov rcx, qword [rdx + 0x28]
test rcx, rcx
je case.0x4167e4.3
mov rdx, qword [rdx + 0x30]
movzx r9d, word [rcx + 0x532]
mov r10d, r9d
shl r10d, 3
mov r8, 0xffffffffffffffff
test r10, r10
je 0x415da3
xor r11d, r11d
cmp qword [rcx + r8*8 + 0x4e0], rax
setne r11b
mov edi, 0xff
cmova r11d, edi
inc r8
add r10, 0xfffffffffffffff8
cmp r11b, 1
je 0x415d6e
movzx r9d, r11b
test r9d, r9d
je 0x415dba
jmp 0x415da6
mov r8, r9
sub rdx, 1
jb case.0x4167e4.3
mov rcx, qword [rcx + r8*8 + 0x538]
jmp 0x415d58
imul rax, r8, 0x70
add rcx, rax
cmp byte [rcx + 0x6a], 1
jne 0x415dd2
mov qword [rbp + 0xb40], 1
call fcn.00407860
mov qword [rbp + 0xc78], rax
mov qword [rbp + 0xcb8], rdx
cmp qword [rbp + 0xcb8], 0
je 0x416380
mov ecx, dword [rbp + 0x558]
mov rdx, qword [rbp + 0x6b0]
mov rax, qword [rbp + 0xc70]
sub rax, rdx
mov qword [rbp + 0x808], rax
mov eax, ecx
and eax, 0xff00
mov dword [rbp + 0xb00], eax
mov eax, ecx
shr eax, 0x10
mov dword [rbp + 0xb04], eax
xor r8d, r8d
cmp ecx, 0x50000
mov r9d, 0
cmovb r9, rdx
mov rax, qword [rbp + 0xc60]
mov qword [rbp + 0xc00], rdx
add rax, rdx
mov qword [rbp + 0xaf8], rax
test byte [rbp + 0xc68], 1
mov edi, 0
cmove r9, r8
mov qword [rbp + 0x800], r9
movzx eax, ch
mov qword [rbp + 0x810], rax
mov rdx, qword [rbp + 0x6a0]
mov rax, qword [rbp + 0xcb0]
sub rax, rdx
mov qword [rbp + 0xc50], rax
mov rax, qword [rbp + 0xc58]
mov qword [rbp + 0xc10], rdx
add rax, rdx
mov qword [rbp + 0xc38], rax
mov dword [rbp + 0xb8c], ecx
movzx eax, cl
mov qword [rbp + 0xc80], rax
shl qword [rbp + 0xcb8], 4
mov dword [rbp + 0xc48], 0
mov dword [rbp + 0xc90], 0
mov dword [rbp + 0xca8], 0
mov dword [rbp + 0xbc8], 0
xor r13d, r13d
jmp 0x415f18
cmp eax, 0x26
mov eax, 1
mov ecx, dword [rbp + 0xc48]
cmove ecx, eax
mov dword [rbp + 0xc48], ecx
mov rax, rdi
add rax, 0x10
mov rdi, rax
cmp qword [rbp + 0xcb8], rax
je 0x4163ad
mov rax, qword [rbp + 0xc78]
movups xmm0, xmmword [rax + rdi]
movaps xmmword [rbp + 0x400], xmm0
mov rax, qword [rbp + 0xb30]
mov r8d, dword [rax + 0x48]
lea rcx, [rbp + 0x8c0]
lea rdx, [rbp + 0xb20]
lea r9, [rbp + 0x400]
call fcn.0041b650
mov rax, qword [rbp + 0x8c0]
cmp rax, 0x2e
je case.0x4167e4.3
mov rcx, qword [rbp + 0x8d8]
movups xmm0, xmmword [rbp + 0x8c8]
movups xmmword [rbp + 0xba8], xmm0
mov qword [rbp + 0xba0], rax
mov qword [rbp + 0xbb8], rcx
movzx eax, cx
cmp eax, 0x12
jg 0x416048
cmp eax, 0x11
je 0x41610d
cmp eax, 0x12
jne 0x415f01
lea rcx, [rbp + 0x8c0]
lea rdx, [rbp + 0xba0]
call fcn.0041f920
mov rax, qword [rbp + 0x8c0]
test rax, rax
je 0x41621b
cmp eax, 7
je 0x416236
cmp eax, 0xc
jne 0x415f01
mov rax, qword [rbp + 0xc10]
cmp qword [rbp + 0xcb0], rax
jb case.0x4167e4.3
mov rax, qword [rbp + 0x8c8]
imul rax, qword [rbp + 0xc80]
mov rcx, qword [rbp + 0xc50]
sub rcx, rax
jb case.0x4167e4.3
mov rdx, qword [rbp + 0xc80]
dec edx
cmp edx, 7
ja case.0x4167e4.3
lea r8, [0x00438620]
movsxd rdx, dword [r8 + rdx*4]
add rdx, r8
jmp rdx
cmp qword [rbp + 0xc50], rax
je case.0x4167e4.3
mov rcx, qword [rbp + 0xc38]
movzx eax, byte [rcx + rax]
jmp 0x41636c
cmp eax, 0x13
je 0x4161ab
cmp eax, 0x55
jne 0x415f01
lea rcx, [rbp + 0x8c0]
lea rdx, [rbp + 0xba0]
call fcn.0041f920
mov rcx, qword [rbp + 0x8c0]
mov rax, qword [rbp + 0x8c8]
cmp rcx, 0x16
je 0x4161e2
cmp ecx, 0x18
jne 0x416213
mov rcx, qword [rbp + 0xc00]
cmp qword [rbp + 0xc70], rcx
jb case.0x4167e4.3
imul rax, qword [rbp + 0x810]
mov rcx, qword [rbp + 0x808]
sub rcx, rax
jb case.0x4167e4.3
cmp dword [rbp + 0xb00], 0x800
jne 0x416251
cmp rcx, 7
jbe case.0x4167e4.3
mov r9, qword [rbp + 0xaf8]
movzx ecx, byte [r9 + rax + 7]
movzx edx, word [r9 + rax + 4]
movzx r8d, byte [r9 + rax + 6]
shl r8d, 0x10
or r8d, edx
mov eax, dword [r9 + rax]
shl r8, 0x28
shl rax, 8
or rax, r8
shrd rax, rcx, 8
jmp 0x416265
lea rcx, [rbp + 0x8c0]
lea rdx, [rbp + 0xba0]
call fcn.0041f920
mov rax, qword [rbp + 0x8c0]
test rax, rax
je 0x4161f8
cmp eax, 0xc
jne 0x415f01
mov rax, qword [rbp + 0xc10]
cmp qword [rbp + 0xcb0], rax
jb case.0x4167e4.3
mov rax, qword [rbp + 0x8c8]
imul rax, qword [rbp + 0xc80]
mov rcx, qword [rbp + 0xc50]
sub rcx, rax
jb case.0x4167e4.3
mov rdx, qword [rbp + 0xc80]
dec edx
cmp edx, 7
ja case.0x4167e4.3
lea r8, [0x00438640]
movsxd rdx, dword [r8 + rdx*4]
add rdx, r8
jmp rdx
cmp qword [rbp + 0xc50], rax
je case.0x4167e4.3
mov rcx, qword [rbp + 0xc38]
movzx eax, byte [rcx + rax]
jmp 0x4162ed
lea rcx, [rbp + 0x8c0]
lea rdx, [rbp + 0xba0]
call fcn.0041f920
mov rax, qword [rbp + 0x8c0]
cmp rax, 0x26
jne 0x415eea
movzx ecx, word [rbp + 0x8c8]
mov word [rbp + 0xbc6], cx
jmp 0x415eea
add rax, qword [rbp + 0x800]
mov r13b, 1
mov qword [rbp + 0xc08], rax
jmp 0x415f01
mov al, 1
mov dword [rbp + 0xc90], eax
mov rax, qword [rbp + 0x8c8]
mov qword [rbp + 0xbd0], rax
jmp 0x415f01
xor r13d, r13d
jmp 0x415f01
mov al, 1
mov dword [rbp + 0xca8], eax
mov rax, qword [rbp + 0x8c8]
mov qword [rbp + 0xbd8], rax
jmp 0x415f01
mov al, 1
mov dword [rbp + 0xbc8], eax
mov rax, qword [rbp + 0x8c8]
mov qword [rbp + 0x818], rax
jmp 0x415f01
cmp rcx, 3
jbe case.0x4167e4.3
mov rcx, qword [rbp + 0xaf8]
mov eax, dword [rcx + rax]
mov qword [rbp + 0xc08], rax
mov rax, qword [rbp + 0xc00]
add qword [rbp + 0xc08], rax
mov r13b, 1
jmp 0x415f01
cmp rcx, 1
jbe case.0x4167e4.3
mov rcx, qword [rbp + 0xc38]
movzx eax, word [rcx + rax]
jmp 0x4162ed
cmp rcx, 3
jbe case.0x4167e4.3
mov rcx, qword [rbp + 0xc38]
mov eax, dword [rcx + rax]
jmp 0x4162ed
cmp rcx, 8
jb case.0x4167e4.3
mov r9, qword [rbp + 0xc38]
movzx ecx, byte [r9 + rax + 7]
movzx edx, word [r9 + rax + 4]
movzx r8d, byte [r9 + rax + 6]
shl r8d, 0x10
or r8d, edx
mov eax, dword [r9 + rax]
shl r8, 0x28
shl rax, 8
or rax, r8
shrd rax, rcx, 8
mov qword [rbp + 0xbd0], rax
mov al, 1
mov dword [rbp + 0xc90], eax
jmp 0x415f01
cmp rcx, 1
jbe case.0x4167e4.3
mov rcx, qword [rbp + 0xc38]
movzx eax, word [rcx + rax]
jmp 0x41636c
cmp rcx, 3
jbe case.0x4167e4.3
mov rcx, qword [rbp + 0xc38]
mov eax, dword [rcx + rax]
jmp 0x41636c
cmp rcx, 8
jb case.0x4167e4.3
mov r9, qword [rbp + 0xc38]
movzx ecx, byte [r9 + rax + 7]
movzx edx, word [r9 + rax + 4]
movzx r8d, byte [r9 + rax + 6]
shl r8d, 0x10
or r8d, edx
mov eax, dword [r9 + rax]
shl r8, 0x28
shl rax, 8
or rax, r8
shrd rax, rcx, 8
mov qword [rbp + 0xbd8], rax
mov al, 1
mov dword [rbp + 0xca8], eax
jmp 0x415f01
mov dword [rbp + 0xc48], 0
mov dword [rbp + 0xc90], 0
mov dword [rbp + 0xca8], 0
mov dword [rbp + 0xbc8], 0
jmp 0x4164bf
test r13b, 1
je 0x4164bf
xor eax, eax
cmp dword [rbp + 0xb8c], 0x50000
setae al
shl eax, 4
mov rcx, qword [rbp + 0xc98]
mov rax, qword [rcx + rax + 0xc8]
sub rax, qword [rbp + 0xc08]
jb case.0x4167e4.3
xor ecx, ecx
mov edi, dword [rbp + 0xb8c]
cmp edi, 0x50000
setae cl
shl ecx, 4
mov rdx, qword [rbp + 0xc98]
mov rcx, qword [rdx + rcx + 0xc0]
add rcx, qword [rbp + 0xc08]
cmp edi, 0x50000
mov rdx, qword [rbp + 0x690]
setae byte [rbp + 0x8f4]
mov r8, qword [rbp + 0xc58]
mov qword [rbp + 0x8c0], r8
mov r8, qword [rbp + 0xcb0]
mov qword [rbp + 0x8c8], r8
mov qword [rbp + 0x8d0], rdx
mov rdx, qword [rbp + 0xc10]
mov qword [rbp + 0x8d8], rdx
mov qword [rbp + 0x8e0], rcx
mov qword [rbp + 0x8e8], rax
mov word [rbp + 0x8f0], di
mov eax, dword [rbp + 0xb04]
mov word [rbp + 0x8f2], ax
lea rcx, [rbp + 0xba0]
lea rdx, [rbp + 0x8c0]
call fcn.0041cab0
mov rax, qword [rbp + 0xba0]
cmp rax, 2
jne 0x416ade
mov rcx, qword [rbp + 0xba8]
cmp cl, 0x4b
jne case.0x4167e4.3
mov rax, rcx
shr eax, 8
and eax, 1
mov qword [rbp + 0xca8], rax
jmp 0x4169a4
mov rax, qword [rbp + 0xb80]
test rax, rax
je 0x416538
mov r10, rax
mov rax, qword [rbp + 0xb78]
cmp r10, 1
jne 0x4164e0
xor r13d, r13d
jmp 0x41650a
mov rcx, r10
xor edx, edx
mov r8, rcx
shr r8, 1
lea r13, [r8 + rdx]
mov r9, r13
shl r9, 4
cmp qword [rax + r9], rsi
cmova r13, rdx
sub rcx, r8
mov rdx, r13
cmp rcx, 1
ja 0x4164e5
mov rcx, r13
shl rcx, 4
cmp qword [rax + rcx], rsi
jne 0x416538
inc r13
add rcx, rax
add rcx, 0xfffffffffffffff0
cmp r13, 1
je 0x416592
dec r13
lea rdx, [rcx - 0x10]
cmp qword [rcx], rsi
mov rcx, rdx
je 0x416521
jmp 0x416595
test byte [rbp + 0xc90], 1
je 0x416999
test byte [rbp + 0xca8], 1
je 0x416954
mov rax, qword [rbp + 0xbd8]
cmp qword [rbp + 0xbd0], rax
jae 0x416999
mov rdi, qword [rbp + 0xc30]
cmp rdi, qword [rbp + 0xc20]
jne 0x416b9e
lea rcx, [rbp + 0xc20]
call fcn.0041d930
mov r13, qword [rbp + 0xbd8]
jmp 0x416ba5
xor r13d, r13d
cmp r13, r10
je 0x416999
shl r10, 4
add r10, rax
mov qword [rbp + 0xc00], r10
shl r13, 4
add r13, rax
mov qword [rbp + 0xca8], 0
jmp 0x4165d1
add r13, 0x10
cmp r13, qword [rbp + 0xc00]
je 0x4169a4
cmp qword [r13], rsi
jne 0x4169a4
mov r8, qword [r13 + 8]
mov rax, qword [rbp + 0xca0]
sub rax, r8
jb case.0x4167e4.3
mov rcx, qword [rbp + 0xc88]
add rcx, r8
mov qword [rbp + 0xba0], rcx
mov qword [rbp + 0xba8], rax
lea rcx, [rbp + 0x8c0]
lea rdx, [rbp + 0xba0]
call fcn.00418480
cmp byte [rbp + 0x8e9], 3
je case.0x4167e4.3
mov rax, qword [rbp + 0x8c8]
mov qword [rbp + 0xcb8], rax
test rax, rax
je 0x4165c0
mov rdi, qword [rbp + 0x8c0]
movzx eax, byte [rbp + 0x8e8]
movzx ecx, byte [rbp + 0x8ec]
mov qword [rbp + 0xc10], rax
add eax, eax
mov qword [rbp + 0xc78], rcx
add al, cl
movzx eax, al
mov qword [rbp + 0xc50], rax
jmp 0x4166e7
movzx ecx, word [rdi + 4]
movzx edx, byte [rdi + 6]
shl edx, 0x10
or edx, ecx
mov r8d, dword [rdi]
mov r9d, dword [rdi + 8]
movzx ecx, byte [rdi + 7]
shl rdx, 0x28
shl r8, 8
or r8, rdx
shrd r8, rcx, 8
mov qword [rbp + 0xc90], r8
add qword [rbp + 0xcb8], 0xfffffffffffffff0
movzx ecx, byte [rdi + 0xf]
movzx edx, word [rdi + 0xc]
movzx r8d, byte [rdi + 0xe]
add rdi, 0x10
shl r8d, 0x10
or r8d, edx
shl r8, 0x28
shl r9, 8
or r9, r8
shrd r9, rcx, 8
mov qword [rbp + 0xc80], r9
or rax, qword [rbp + 0xc90]
or rax, qword [rbp + 0xc80]
jne 0x4168bd
mov rax, qword [rbp + 0xc50]
cmp qword [rbp + 0xcb8], rax
jb 0x4165c0
cmp dword [rbp + 0xc78], 8
ja case.0x4167e4.3
mov eax, dword [rbp + 0xc78]
lea rcx, [0x00438660]
movsxd rax, dword [rcx + rax*4]
add rax, rcx
jmp rax
mov rax, qword [rbp + 0xc78]
jmp 0x4167c4
cmp qword [rbp + 0xcb8], 0
je case.0x4167e4.3
dec qword [rbp + 0xcb8]
movzx eax, byte [rdi]
inc rdi
jmp 0x4167c4
cmp qword [rbp + 0xcb8], 1
jbe case.0x4167e4.3
add qword [rbp + 0xcb8], 0xfffffffffffffffe
movzx eax, word [rdi]
add rdi, 2
jmp 0x4167c4
cmp qword [rbp + 0xcb8], 3
jbe case.0x4167e4.3
add qword [rbp + 0xcb8], 0xfffffffffffffffc
mov eax, dword [rdi]
add rdi, 4
jmp 0x4167c4
cmp qword [rbp + 0xcb8], 8
jb case.0x4167e4.3
add qword [rbp + 0xcb8], 0xfffffffffffffff8
movzx ecx, byte [rdi + 7]
movzx edx, word [rdi + 4]
movzx r8d, byte [rdi + 6]
mov eax, dword [rdi]
add rdi, 8
shl r8d, 0x10
or r8d, edx
shl r8, 0x28
shl rax, 8
or rax, r8
shrd rax, rcx, 8
mov rcx, qword [rbp + 0xc10]
dec ecx
cmp ecx, 7
ja case.0x4167e4.3
lea rdx, [0x00438684]
movsxd rcx, dword [rdx + rcx*4]
add rcx, rdx
jmp rcx
cmp qword [rbp + 0xcb8], 2
jb case.0x4167e4.3
movzx ecx, byte [rdi]
mov qword [rbp + 0xc90], rcx
add qword [rbp + 0xcb8], 0xfffffffffffffffe
movzx ecx, byte [rdi + 1]
mov qword [rbp + 0xc80], rcx
add rdi, 2
jmp 0x4166d3
cmp qword [rbp + 0xcb8], 4
jb case.0x4167e4.3
movzx ecx, word [rdi]
mov qword [rbp + 0xc90], rcx
add qword [rbp + 0xcb8], 0xfffffffffffffffc
movzx ecx, word [rdi + 2]
mov qword [rbp + 0xc80], rcx
add rdi, 4
jmp 0x4166d3
cmp qword [rbp + 0xcb8], 8
jb case.0x4167e4.3
mov rcx, qword [rbp + 0xcb8]
and rcx, 0xfffffffffffffff8
cmp rcx, 8
jne 0x41666d
jmp case.0x4167e4.3
cmp qword [rbp + 0xcb8], 4
jb case.0x4167e4.3
mov rcx, qword [rbp + 0xcb8]
and rcx, 0xfffffffffffffffc
cmp rcx, 4
je case.0x4167e4.3
mov ecx, dword [rdi]
mov qword [rbp + 0xc90], rcx
mov ecx, dword [rdi + 4]
mov qword [rbp + 0xc80], rcx
add qword [rbp + 0xcb8], 0xfffffffffffffff8
add rdi, 8
jmp 0x4166d3
cmp qword [rbp + 0xc80], 0
je 0x416941
mov rax, qword [rbp + 0xc30]
mov qword [rbp + 0xca8], rax
cmp rax, qword [rbp + 0xc20]
jne 0x4168ea
lea rcx, [rbp + 0xc20]
call fcn.0041d930
mov rdx, qword [rbp + 0xc90]
mov r8, qword [rbp + 0xc80]
add r8, rdx
mov rax, qword [rbp + 0xc28]
mov r9, qword [rbp + 0xca8]
mov rcx, r9
shl rcx, 5
mov qword [rax + rcx], rdx
mov qword [rax + rcx + 8], r8
mov rdx, qword [rbp + 0xcc0]
mov qword [rax + rcx + 0x10], rdx
mov qword [rax + rcx + 0x18], 0
inc r9
mov qword [rbp + 0xc30], r9
mov al, 1
mov qword [rbp + 0xca8], rax
cmp qword [rbp + 0xcb8], 0
jne 0x4166e7
jmp 0x4165c0
test byte [rbp + 0xbc8], 1
je 0x416999
mov rax, qword [rbp + 0x818]
mov rcx, qword [rbp + 0xbd0]
lea r13, [rax + rcx]
cmp rcx, r13
jae 0x416999
mov rdi, qword [rbp + 0xc30]
cmp rdi, qword [rbp + 0xc20]
jne 0x416ba5
lea rcx, [rbp + 0xc20]
call fcn.0041d930
jmp 0x416ba5
mov qword [rbp + 0xca8], 0
mov qword [rbp + 0xb20], 0
test byte [rbp + 0xca8], 1
jne 0x416bed
cmp qword [rbp + 0x570], 0x2f
je 0x416bed
lea rcx, [rbp + 0x8c0]
lea rdx, [rbp + 0x570]
call fcn.0041dbb0
lea rcx, [rbp + 0xba0]
lea rdx, [rbp + 0x510]
lea r8, [rbp + 0x8c0]
mov r9, qword [rbp + 0xcc8]
call fcn.0041e060
mov qword [rbp + 0xb20], 1
movups xmm0, xmmword [rbp + 0xba0]
movups xmm1, xmmword [rbp + 0xbb0]
lea rax, [rbp + 0xb28]
movups xmmword [rax + 0x10], xmm1
movups xmmword [rax], xmm0
cmp qword [rbp + 0xb28], 0
je 0x416bed
mov rax, qword [rbp + 0xb40]
mov qword [rbp + 0xcb8], rax
test rax, rax
je 0x416bed
mov rax, qword [rbp + 0xb38]
mov qword [rbp + 0xc78], rax
mov r13, qword [rbp + 0xc30]
mov rax, r13
shl rax, 5
mov qword [rbp + 0xc80], rax
shl qword [rbp + 0xcb8], 5
xor edi, edi
jmp 0x416abb
mov rax, qword [rbp + 0xc28]
add rax, qword [rbp + 0xc80]
movups xmmword [rdi + rax], xmm6
mov rcx, qword [rbp + 0xcc0]
mov qword [rdi + rax + 0x10], rcx
mov qword [rdi + rax + 0x18], 0
inc r13
mov qword [rbp + 0xc30], r13
add rdi, 0x20
cmp qword [rbp + 0xcb8], rdi
je 0x416bed
mov rax, qword [rbp + 0xc78]
movups xmm6, xmmword [rax + rdi + 0x10]
cmp r13, qword [rbp + 0xc20]
jne 0x416a79
lea rcx, [rbp + 0xc20]
call fcn.0041d930
jmp 0x416a79
mov qword [rbp + 0xca8], 0
jmp 0x416b55
mov rax, qword [rbp + 0xc28]
mov rcx, rdi
shl rcx, 5
mov rdx, qword [rbp + 0xcb8]
mov qword [rax + rcx], rdx
mov qword [rax + rcx + 8], r13
mov rdx, qword [rbp + 0xcc0]
mov qword [rax + rcx + 0x10], rdx
mov qword [rax + rcx + 0x18], 0
inc rdi
mov qword [rbp + 0xc30], rdi
mov al, 1
mov qword [rbp + 0xca8], rax
lea rcx, [rbp + 0xba0]
lea rdx, [rbp + 0x8c0]
call fcn.0041cab0
mov rax, qword [rbp + 0xba0]
cmp rax, 2
je 0x41649a
cmp rax, 1
jne 0x4169a4
mov rax, qword [rbp + 0xba8]
mov r13, qword [rbp + 0xbb0]
mov qword [rbp + 0xcb8], rax
cmp rax, r13
jae 0x416b31
mov rdi, qword [rbp + 0xc30]
cmp rdi, qword [rbp + 0xc20]
jne 0x416aeb
lea rcx, [rbp + 0xc20]
call fcn.0041d930
jmp 0x416aeb
mov r13, qword [rbp + 0xbd8]
mov rax, qword [rbp + 0xc28]
mov rcx, rdi
shl rcx, 5
mov rdx, qword [rbp + 0xbd0]
mov qword [rax + rcx], rdx
mov qword [rax + rcx + 8], r13
mov rdx, qword [rbp + 0xcc0]
mov qword [rax + rcx + 0x10], rdx
mov qword [rax + rcx + 0x18], 0
inc rdi
mov qword [rbp + 0xc30], rdi
mov qword [rbp + 0xb20], 0
mov r8d, 0x1a8
lea rcx, [rbp + 0x8c0]
lea rdx, [rbp + 0x510]
call sub.msvcrt.dll_memcpy
movups xmm0, xmmword [rbp + 0xb20]
movups xmm1, xmmword [rbp + 0xb30]
lea rcx, [rbp + 0x8d8]
movups xmmword [rcx + 0x198], xmm0
movups xmmword [rcx + 0x1a8], xmm1
mov rax, qword [rbp + 0xb40]
mov qword [rcx + 0x1b8], rax
mov qword [rbp + 0xa68], rsi
mov eax, dword [rbp + 0xc48]
mov word [rbp + 0xad0], ax
movzx eax, word [rbp + 0xbc6]
mov word [rbp + 0xad2], ax
mov qword [rbp + 0xa98], 0
mov byte [rbp + 0xac0], 0x4c
mov rax, qword [rbp + 0xcc0]
cmp rax, qword [rbp + 0xbe0]
jne 0x416c87
lea rcx, [rbp + 0xbe0]
call fcn.0041d9f0
mov rdi, qword [rbp + 0xcc0]
imul rcx, rdi, 0x218
add rcx, qword [rbp + 0xbe8]
mov r8d, 0x218
lea rsi, [rbp + 0x8c0]
mov rdx, rsi
call sub.msvcrt.dll_memcpy
inc rdi
mov qword [rbp + 0xbf0], rdi
mov rcx, rsi
lea rdx, [rbp + 0xb08]
call fcn.00418850
mov rax, qword [rbp + 0x8c0]
cmp rax, 3
lea rdi, [rbp + 0x8d8]
jne 0x415ad1
jmp 0x415941
mov rsi, qword [rbp + 0xc28]
mov rcx, qword [rbp + 0xc30]
mov qword [rbp + 0xcc8], rcx
cmp rcx, 2
jb 0x416f24
cmp qword [rbp + 0xcc8], 0x15
jae 0x416eed
mov r10, qword [rbp + 0xcc8]
shl r10, 5
add r10, rsi
lea rdx, [rsi + 0x20]
mov eax, 0x20
mov r8, rsi
jmp 0x416d61
mov r8, rsi
mov qword [r8], rdx
movaps xmm0, xmmword [rbp + 0x8c0]
movups xmmword [r8 + 8], xmm0
mov rdx, qword [rbp + 0x8d0]
mov qword [r8 + 0x18], rdx
lea rdx, [rcx + 0x20]
add rax, 0x20
mov r8, rcx
cmp rdx, r10
je 0x416f0f
mov rcx, rdx
mov rdx, qword [r8 + 0x20]
cmp rdx, qword [r8]
jae 0x416d4d
mov r9, qword [r8 + 0x38]
mov qword [rbp + 0x8d0], r9
movups xmm0, xmmword [r8 + 0x28]
movaps xmmword [rbp + 0x8c0], xmm0
mov r9, rax
movups xmm0, xmmword [rsi + r9 - 0x20]
movups xmm1, xmmword [rsi + r9 - 0x10]
movups xmmword [rsi + r9 + 0x10], xmm1
movups xmmword [rsi + r9], xmm0
cmp r9, 0x20
je 0x416d30
lea r8, [r9 - 0x20]
cmp rdx, qword [rsi + r9 - 0x40]
mov r9, r8
jb 0x416d87
add r8, rsi
jmp 0x416d33
mov qword [rbp + 0xb20], r11
jmp case.0x4167e4.3
add r8, r9
mov qword [rbp + 0xb20], r8
mov rax, qword [rbp + 0x668]
lock dec qword [rax]
jne 0x416de6
mov rcx, qword [rbp + 0x668]
call fcn.0041b520
cmp dword [rbp + 0x570], 0x2f
je 0x415941
cmp qword [rbp + 0x5b0], 0
je 0x416e0e
mov rcx, qword [rbp + 0x5b8]
mov edx, 2
call fcn.00401a50
cmp qword [rbp + 0x5c8], 0
je 0x416e29
mov rcx, qword [rbp + 0x5d0]
mov edx, 8
call fcn.00401a50
cmp qword [rbp + 0x5e0], 0
je 0x416e44
mov rcx, qword [rbp + 0x5e8]
mov edx, 2
call fcn.00401a50
cmp qword [rbp + 0x5f8], 0
je 0x415941
mov rcx, qword [rbp + 0x600]
mov edx, 8
call fcn.00401a50
jmp 0x415941
cmp qword [rbp + 0x8c0], 0
je 0x416e83
mov rcx, qword [rbp + 0x8c8]
mov edx, 8
call fcn.00401a50
mov rsi, qword [rbp + 0xc18]
jmp 0x415a18
mov rdx, qword [rbp + 0xcc8]
call fcn.00418130
mov r10, qword [rbp + 0xca0]
mov r11, qword [rbp + 0xc98]
lea rcx, [rbp + 0x8c8]
mov rax, qword [rbp + 0x8c0]
movups xmm0, xmmword [rcx]
movaps xmmword [rbp + 0x510], xmm0
mov rcx, rax
neg rcx
mov rsi, qword [rbp + 0xc18]
mov rdi, qword [rbp + 0xc60]
jo 0x415a18
mov rsi, qword [rbp + 0xc68]
add rsi, rdi
mov rcx, r14
jmp 0x415094
mov rcx, rsi
mov rdx, qword [rbp + 0xcc8]
call fcn.004200e0
mov rcx, qword [rbp + 0xcc8]
shl rcx, 5
mov rax, rsi
add rax, rcx
jmp 0x416f3c
mov rsi, qword [rbp + 0xc28]
mov rax, qword [rbp + 0xc30]
mov qword [rbp + 0xcc8], rax
cmp qword [rbp + 0xcc8], 0
je 0x416f5e
mov rax, qword [rbp + 0xcc8]
shl rax, 5
add rax, rsi
xor ecx, ecx
mov rdx, rsi
mov r8, qword [rdx + 8]
cmp rcx, r8
cmovbe rcx, r8
mov qword [rdx + 0x18], rcx
lea r8, [rdx + 0x20]
mov rdx, r8
cmp r8, rax
jne 0x416f41
jmp 0x416f69
mov qword [rbp + 0xcc8], 0
mov rax, qword [rbp + 0xc20]
mov qword [rbp + 0xcb0], rax
movups xmm0, xmmword [rbp + 0xbe0]
movaps xmmword [rbp + 0x700], xmm0
mov rax, qword [rbp + 0xbf0]
mov qword [rbp + 0x710], rax
cmp qword [rbp + 0xb70], 0
je 0x416fae
mov rcx, qword [rbp + 0xb78]
mov edx, 8
call fcn.00401a50
mov r13, qword [rbp + 0xb90]
movabs rax, 0x8000000000000000
cmp qword [rbp + 0xcb0], rax
je 0x4159c3
mov rax, qword [rbp + 0x710]
mov qword [rbp + 0xbf0], rax
movaps xmm0, xmmword [rbp + 0x700]
movaps xmmword [rbp + 0xbe0], xmm0
mov rax, qword [r13 + 0xe0]
mov qword [rbp + 0xcc0], rax
test rax, rax
je 0x4170d2
mov qword [rbp + 0xba0], 0
mov qword [rbp + 0xba8], 8
mov qword [rbp + 0xbb0], 0
mov rax, qword [rbp + 0xcc0]
movups xmm0, xmmword [rax + 0x40]
movups xmmword [rbp + 0x820], xmm0
mov qword [rbp + 0x830], 0
lea rcx, [rbp + 0x8c0]
lea rdx, [rbp + 0x820]
call fcn.00418850
mov rax, qword [rbp + 0x8c0]
cmp rax, 3
jne 0x417178
lea rcx, [rbp + 0xba0]
call fcn.004202c0
mov r12, qword [rbp + 0xbe8]
mov rbx, qword [rbp + 0xbf0]
inc rbx
mov rcx, r12
cmp rbx, 1
je 0x41709b
lea r15, [rcx + 0x218]
dec rbx
call fcn.0041dac0
mov rcx, r15
jmp 0x417081
cmp qword [rbp + 0xbe0], 0
je 0x4170b2
mov edx, 8
mov rcx, r12
call fcn.00401a50
cmp qword [rbp + 0xcb0], 0
je 0x4159c3
mov edx, 8
mov rcx, rsi
call fcn.00401a50
jmp 0x4159c3
mov qword [rbp + 0xb08], 0
mov qword [rbp + 0xb10], 8
mov eax, 8
mov qword [rbp + 0xca0], rax
mov qword [rbp + 0xc88], 0
xor edi, edi
mov qword [rbp + 0xb18], rdi
mov qword [rbp + 0x8c0], r13
mov qword [rbp + 0xc70], rsi
mov rax, qword [rbp + 0xcc8]
cmp qword [rbp + 0xcb0], rax
jbe 0x417334
cmp qword [rbp + 0xcc8], 0
je 0x41731b
mov rdx, qword [rbp + 0xcc8]
shl rdx, 5
mov rcx, rsi
mov qword [rbp + 0xcc0], rdx
call fcn.00401a70
mov qword [rbp + 0xc70], rax
test rax, rax
jne 0x417334
mov ecx, 8
mov rdx, qword [rbp + 0xcc0]
call fcn.00401d30
jmp 0x417cba
add qword [rbp + 0xcc0], 0x10
mov ecx, 8
mov qword [rbp + 0xca0], rcx
xor edi, edi
jmp 0x4171be
cmp rax, 2
je 0x4172d9
lea rcx, [rbp + 0x8c0]
lea rdx, [rbp + 0x820]
call fcn.00418850
mov rax, qword [rbp + 0x8c0]
cmp rax, 3
je 0x417061
movups xmm6, xmmword [rbp + 0x8c8]
lea rcx, [rbp + 0x8d8]
movups xmm0, xmmword [rcx]
movups xmm1, xmmword [rcx + 0x10]
movups xmm2, xmmword [rcx + 0x20]
movaps xmmword [rbp + 0xb20], xmm0
movaps xmmword [rbp + 0xb30], xmm1
movaps xmmword [rbp + 0xb40], xmm2
mov rcx, qword [rcx + 0x30]
mov qword [rbp + 0xb50], rcx
test rax, rax
jne 0x417190
mov qword [rbp + 0x8c0], 0
movups xmmword [rbp + 0x8c8], xmm6
mov rax, qword [rbp + 0xb50]
lea rcx, [rbp + 0x8d8]
mov qword [rcx + 0x30], rax
movaps xmm0, xmmword [rbp + 0xb20]
movaps xmm1, xmmword [rbp + 0xb30]
movaps xmm2, xmmword [rbp + 0xb40]
movups xmmword [rcx + 0x20], xmm2
movups xmmword [rcx + 0x10], xmm1
movups xmmword [rcx], xmm0
lea rcx, [rbp + 0x510]
mov rdx, qword [rbp + 0xcc0]
lea r8, [rbp + 0x8c0]
call fcn.00418e50
cmp dword [rbp + 0x510], 2
je 0x41719a
mov r8d, 0x1a8
lea rcx, [rbp + 0x8c0]
lea rdx, [rbp + 0x510]
call sub.msvcrt.dll_memcpy
movlps qword [rbp + 0xa68], xmm6
cmp rdi, qword [rbp + 0xba0]
jne 0x4172aa
lea rcx, [rbp + 0xba0]
call fcn.004203a0
mov rax, qword [rbp + 0xba8]
mov qword [rbp + 0xca0], rax
imul rcx, rdi, 0x1b0
add rcx, qword [rbp + 0xca0]
mov r8d, 0x1b0
lea rdx, [rbp + 0x8c0]
call sub.msvcrt.dll_memcpy
inc rdi
mov qword [rbp + 0xbb0], rdi
jmp 0x41719a
mov rdx, qword [rbp + 0xba0]
movabs rax, 0x8000000000000000
mov qword [rbp + 0xc88], rdx
cmp rdx, rax
je 0x41706d
mov rax, qword [rbp + 0xc88]
mov qword [rbp + 0xb08], rax
mov rax, qword [rbp + 0xca0]
mov qword [rbp + 0xb10], rax
jmp 0x417101
mov eax, 8
mov qword [rbp + 0xc70], rax
mov edx, 8
mov rcx, rsi
call fcn.00401a50
mov rax, qword [rbp + 0xbe8]
mov qword [rbp + 0xcc0], rax
mov rax, qword [rbp + 0xbf0]
mov qword [rbp + 0xc98], rax
cmp qword [rbp + 0xbe0], rax
jbe 0x4173c0
cmp qword [rbp + 0xc98], 0
je 0x4173a3
imul rdx, qword [rbp + 0xc98], 0x218
mov rcx, qword [rbp + 0xcc0]
mov qword [rbp + 0xc58], rdx
call fcn.00401a70
mov qword [rbp + 0xcc0], rax
test rax, rax
jne 0x4173c0
mov ecx, 8
mov rdx, qword [rbp + 0xc58]
call fcn.00401d30
jmp 0x417cba
mov edx, 8
mov rcx, qword [rbp + 0xcc0]
call fcn.00401a50
mov eax, 8
mov qword [rbp + 0xcc0], rax
cmp qword [rbp + 0xc88], rdi
jbe 0x417427
test rdi, rdi
je 0x41740a
imul rdx, rdi, 0x1b0
mov rcx, qword [rbp + 0xca0]
mov qword [rbp + 0xc88], rdx
call fcn.00401a70
mov qword [rbp + 0xca0], rax
test rax, rax
jne 0x417427
mov ecx, 8
mov rdx, qword [rbp + 0xc88]
call fcn.00401d30
jmp 0x417cba
mov edx, 8
mov rcx, qword [rbp + 0xca0]
call fcn.00401a50
mov eax, 8
mov qword [rbp + 0xca0], rax
mov rsi, qword [rbp + 0x7a0]
test r13, r13
je 0x4159dd
mov qword [rbp + 0x768], r13
mov rax, qword [rbp + 0xc70]
mov qword [rbp + 0x770], rax
mov rax, qword [rbp + 0xcc8]
mov qword [rbp + 0x778], rax
mov rax, qword [rbp + 0xcc0]
mov qword [rbp + 0x780], rax
mov rax, qword [rbp + 0xc98]
mov qword [rbp + 0x788], rax
mov rax, qword [rbp + 0xca0]
mov qword [rbp + 0x790], rax
mov qword [rbp + 0x798], rdi
movabs rax, 0x8000000000000000
cmp rsi, rax
jne 0x4178c1
mov r13b, 0x16
mov rax, qword [rbp + 0x798]
mov qword [rbp + 0x6f0], rax
movups xmm0, xmmword [rbp + 0x768]
movups xmm1, xmmword [rbp + 0x778]
movups xmm2, xmmword [rbp + 0x788]
movaps xmmword [rbp + 0x6e0], xmm2
movaps xmmword [rbp + 0x6d0], xmm1
movaps xmmword [rbp + 0x6c0], xmm0
mov rax, qword [rbp + 0x850]
lea rcx, [rbp + 0x858]
movups xmm0, xmmword [rcx]
movups xmm1, xmmword [rcx + 0x10]
movups xmm2, xmmword [rcx + 0x20]
movups xmm3, xmmword [rcx + 0x30]
movaps xmmword [rbp + 0x460], xmm0
movaps xmmword [rbp + 0x470], xmm1
movaps xmmword [rbp + 0x480], xmm2
movaps xmmword [rbp + 0x490], xmm3
movups xmm0, xmmword [rcx + 0x40]
movaps xmmword [rbp + 0x4a0], xmm0
movabs rcx, 0x8000000000000000
cmp rax, rcx
mov rsi, qword [rbp + 0xc18]
je 0x415a18
movaps xmm0, xmmword [rbp + 0x4a0]
movups xmmword [rbp + 0x220], xmm0
movaps xmm0, xmmword [rbp + 0x460]
movaps xmm1, xmmword [rbp + 0x470]
movaps xmm2, xmmword [rbp + 0x480]
movaps xmm3, xmmword [rbp + 0x490]
movups xmmword [rbp + 0x210], xmm3
movups xmmword [rbp + 0x200], xmm2
movups xmmword [rbp + 0x1f0], xmm1
movups xmmword [rbp + 0x1e0], xmm0
movaps xmm0, xmmword [rbp + 0x4f0]
movups xmmword [rbp + 0x271], xmm0
mov rcx, qword [rbp + 0x4ff]
mov qword [rbp + 0x280], rcx
movaps xmm0, xmmword [rbp + 0x4b0]
movaps xmm1, xmmword [rbp + 0x4c0]
movaps xmm2, xmmword [rbp + 0x4d0]
movaps xmm3, xmmword [rbp + 0x4e0]
movups xmmword [rbp + 0x231], xmm0
movups xmmword [rbp + 0x241], xmm1
movups xmmword [rbp + 0x251], xmm2
movups xmmword [rbp + 0x261], xmm3
mov rcx, qword [rbp + 0x72f]
mov qword [rbp + 0x298], rcx
movaps xmm0, xmmword [rbp + 0x720]
movups xmmword [rbp + 0x289], xmm0
movaps xmm0, xmmword [rbp + 0x420]
movaps xmm1, xmmword [rbp + 0x430]
movaps xmm2, xmmword [rbp + 0x440]
movaps xmm3, xmmword [rbp + 0x450]
movups xmmword [rbp + 0x2a0], xmm0
movups xmmword [rbp + 0x2b0], xmm1
movups xmmword [rbp + 0x2c0], xmm2
movups xmmword [rbp + 0x2d0], xmm3
mov rcx, qword [rbp + 0x6f0]
mov qword [rbp + 0x3b0], rcx
movaps xmm0, xmmword [rbp + 0x6c0]
movaps xmm1, xmmword [rbp + 0x6d0]
movaps xmm2, xmmword [rbp + 0x6e0]
movups xmmword [rbp + 0x380], xmm0
movups xmmword [rbp + 0x390], xmm1
movups xmmword [rbp + 0x3a0], xmm2
movups xmm0, xmmword [rbp + 0x738]
movups xmm1, xmmword [rbp + 0x748]
movups xmm2, xmmword [rbp + 0x758]
movups xmmword [rbp + 0x3f0], xmm2
movups xmmword [rbp + 0x3e0], xmm1
movups xmmword [rbp + 0x3d0], xmm0
mov qword [rbp + 0x1d8], rax
mov byte [rbp + 0x230], r13b
mov byte [rbp + 0x288], dil
mov rax, qword [rbp + 0xcb0]
mov qword [rbp + 0x2e0], rax
mov rax, qword [rbp + 0xca0]
mov qword [rbp + 0x2e8], rax
mov rax, qword [rbp + 0xc98]
mov qword [rbp + 0x2f0], rax
mov rax, qword [rbp + 0xc88]
mov qword [rbp + 0x2f8], rax
mov rax, qword [rbp + 0xc70]
mov qword [rbp + 0x300], rax
mov rax, qword [rbp + 0xc58]
mov qword [rbp + 0x308], rax
mov rax, qword [rbp + 0xc60]
mov qword [rbp + 0x310], rax
mov rax, qword [rbp + 0xc68]
mov qword [rbp + 0x318], rax
mov rax, qword [rbp + 0xcb8]
mov qword [rbp + 0x320], rax
mov rax, qword [rbp + 0xc78]
mov qword [rbp + 0x328], rax
mov rax, qword [rbp + 0xc48]
mov qword [rbp + 0x330], rax
mov rax, qword [rbp + 0xc80]
mov qword [rbp + 0x338], rax
mov rax, qword [rbp + 0xc90]
mov qword [rbp + 0x340], rax
mov rax, qword [rbp + 0xca8]
mov qword [rbp + 0x348], rax
mov rax, qword [rbp + 0xc50]
mov qword [rbp + 0x350], rax
mov rax, qword [rbp + 0xc08]
mov qword [rbp + 0x358], rax
mov rax, qword [rbp + 0xc10]
mov qword [rbp + 0x360], rax
mov rax, qword [rbp + 0xc00]
mov qword [rbp + 0x368], rax
mov qword [rbp + 0x370], 1
mov qword [rbp + 0x378], 0
mov qword [rbp + 0x3b8], rsi
mov qword [rbp + 0x3c0], r14
mov qword [rbp + 0x3c8], rbx
mov rdi, qword [0x00437048]
mov rbx, qword [0x00437038]
cmp rdi, 4
jne 0x417832
mov qword [0x00437048], 3
mov edx, 0x690
add rdx, qword [0x00437040]
lea rcx, [rbp + 0x8c0]
mov r8d, 0x230
call sub.msvcrt.dll_memcpy
mov edi, 3
movabs rax, 0x8000000000000000
cmp qword [rbp + 0x8c8], rax
je 0x417832
lea rcx, [rbp + 0x8c8]
call fcn.00421220
mov rdi, qword [0x00437048]
mov rbx, qword [0x00437038]
lea rsi, [rbp + 0x8c8]
lea rdx, [rbp + 0x1d8]
mov r8d, 0x228
mov rcx, rsi
call sub.msvcrt.dll_memcpy
mov qword [rbp + 0x8c0], r15
cmp rdi, rbx
jne 0x41785f
call fcn.00421150
mov r14, qword [0x00437040]
test rdi, rdi
je 0x417c6e
lea rcx, [r14 + 0x230]
imul r8, rdi, 0x230
mov rdx, r14
call sub.msvcrt.dll_memmove
lea rdx, [rbp + 0x8c0]
mov r8d, 0x230
mov rcx, r14
call sub.msvcrt.dll_memcpy
inc rdi
mov qword [0x00437048], rdi
mov rcx, qword [rbp + 0xc40]
jne 0x4144ed
lea r8, [0x0043da48]
xor ecx, ecx
xor edx, edx
call fcn.00402460
lea rdx, [0x0043bfd6]
lea r13, [rbp + 0x7a0]
mov r8d, 0xf
mov rcx, r13
call fcn.004182b0
test rax, rax
cmove rdx, rax
mov qword [rbp + 0xcc8], rdx
mov edi, 1
cmove rax, rdi
mov qword [rbp + 0xcc0], rax
lea rdx, [0x0043c05b]
mov r8d, 0xf
mov rcx, r13
call fcn.004182b0
mov qword [rbp + 0xc38], rax
mov qword [rbp + 0xbc8], rdx
lea rdx, str..debug_abbrev.dwo.debug_info.dwo.debug_line.dwo.debug_loc.dwo.debug_loclists.dwo.debug_rnglists.dwo.debug_str.dwo.debug_str_offsets.dwo.debug_types.dwostd_src...._backtrace_src_symbolizegimli.rs
mov r8d, 0x11
mov rcx, r13
call fcn.004182b0
test rax, rax
cmove rdx, rax
mov qword [rbp + 0xca0], rdx
cmove rax, rdi
mov qword [rbp + 0xcb0], rax
lea rdx, [0x0043d979]
mov r8d, 0xf
mov rcx, r13
call fcn.004182b0
test rax, rax
cmove rdx, rax
mov qword [rbp + 0xc88], rdx
cmove rax, rdi
mov qword [rbp + 0xc98], rax
lea rdx, [0x0043d988]
mov r8d, 0xf
mov rcx, r13
call fcn.004182b0
test rax, rax
cmove rdx, rax
mov qword [rbp + 0xc58], rdx
cmove rax, rdi
mov qword [rbp + 0xc70], rax
lea rdx, [0x0043d9cb]
mov r8d, 0xe
mov rcx, r13
call fcn.004182b0
test rax, rax
cmove rdx, rax
mov qword [rbp + 0xc68], rdx
cmove rax, rdi
mov qword [rbp + 0xc60], rax
lea rdx, [0x0043d9d9]
mov r8d, 0x16
mov rcx, r13
call fcn.004182b0
test rax, rax
cmove rdx, rax
mov qword [rbp + 0xc78], rdx
cmove rax, rdi
mov qword [rbp + 0xcb8], rax
lea rdx, [0x0043d997]
mov r8d, 0xe
mov rcx, r13
call fcn.004182b0
test rax, rax
cmove rdx, rax
mov qword [rbp + 0xc80], rdx
cmove rax, rdi
mov qword [rbp + 0xc48], rax
lea rdx, [0x0043d9a5]
mov r8d, 0x13
mov rcx, r13
call fcn.004182b0
test rax, rax
cmove rdx, rax
mov qword [rbp + 0xca8], rdx
cmove rax, rdi
mov qword [rbp + 0xc90], rax
lea rdx, [0x0043d9b8]
mov r8d, 0x13
mov rcx, r13
call fcn.004182b0
test rax, rax
cmove rdx, rax
mov qword [rbp + 0xc08], rdx
cmove rax, rdi
mov qword [rbp + 0xc50], rax
lea rdx, [0x0043d9ef]
mov r8d, 0x10
mov rcx, r13
call fcn.004182b0
test rax, rax
cmove rdx, rax
mov qword [rbp + 0xc00], rdx
cmove rax, rdi
mov qword [rbp + 0xc10], rax
lea rcx, [rbp + 0x8c0]
mov rdx, qword [rbp + 0xcc0]
mov r8, qword [rbp + 0xcc8]
call fcn.00420620
movzx r13d, byte [rbp + 0x8c0]
cmp r13b, 0x16
je 0x417b71
mov rax, qword [rbp + 0xc38]
test rax, rax
cmovne rdi, rax
mov r8, qword [rbp + 0xbc8]
cmove r8, rax
mov rax, qword [rbp + 0x8d0]
mov qword [rbp + 0xb2f], rax
movups xmm0, xmmword [rbp + 0x8c1]
movaps xmmword [rbp + 0xb20], xmm0
movups xmm0, xmmword [rbp + 0x8d8]
movaps xmmword [rbp + 0x510], xmm0
movups xmm0, xmmword [rbp + 0x8e8]
movaps xmmword [rbp + 0x520], xmm0
movups xmm0, xmmword [rbp + 0x8f8]
movaps xmmword [rbp + 0x530], xmm0
movups xmm0, xmmword [rbp + 0x908]
movaps xmmword [rbp + 0x540], xmm0
lea rcx, [rbp + 0x8c0]
mov rdx, rdi
call fcn.00420620
movzx edi, byte [rbp + 0x8c0]
cmp dil, 0x16
jne 0x417ba7
test rsi, rsi
je 0x417b87
mov rcx, qword [rbp + 0x7a8]
mov edx, 8
call fcn.00401a50
lea rcx, [rbp + 0x768]
call fcn.00421030
jmp 0x4159f6
lea r8, [0x0043da30]
mov rcx, r15
call fcn.00402460
mov rax, qword [rbp + 0x8d0]
mov qword [rbp + 0x72f], rax
movups xmm0, xmmword [rbp + 0x8c1]
movaps xmmword [rbp + 0x720], xmm0
movups xmm0, xmmword [rbp + 0x8d8]
movaps xmmword [rbp + 0x420], xmm0
movups xmm0, xmmword [rbp + 0x8e8]
movaps xmmword [rbp + 0x430], xmm0
movups xmm0, xmmword [rbp + 0x8f8]
movaps xmmword [rbp + 0x440], xmm0
movups xmm0, xmmword [rbp + 0x908]
movaps xmmword [rbp + 0x450], xmm0
movaps xmm0, xmmword [rbp + 0xb20]
movaps xmmword [rbp + 0x4b0], xmm0
mov rax, qword [rbp + 0xb2f]
mov qword [rbp + 0x4bf], rax
movaps xmm0, xmmword [rbp + 0x510]
movaps xmm1, xmmword [rbp + 0x520]
movaps xmm2, xmmword [rbp + 0x530]
movaps xmm3, xmmword [rbp + 0x540]
movups xmmword [rbp + 0x4f7], xmm3
movups xmmword [rbp + 0x4e7], xmm2
movups xmmword [rbp + 0x4d7], xmm1
movups xmmword [rbp + 0x4c7], xmm0
test rsi, rsi
je 0x4174a1
mov rcx, qword [rbp + 0x7a8]
mov edx, 8
call fcn.00401a50
jmp 0x4174a1
lea rdx, [rbp + 0x8c0]
mov r8d, 0x230
mov rcx, r14
call sub.msvcrt.dll_memcpy
mov qword [0x00437048], 1
jmp 0x4144e6
lea r8, str._rust_deps_addr2line_0.22.0_srclib.rs
call fcn.00402e40
lea r8, str._rust_deps_addr2line_0.22.0_srclib.rs
call fcn.00402460
mov ecx, 8
mov edx, 0x108
call fcn.00401d90
ud2