Function at 0x41f520
Capabilities:
Parse pe header
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, 0x8d8
movdqa xmmword [rsp + 0x8c0], xmm7
movdqa xmmword [rsp + 0x8b0], xmm6
mov qword [rsp + 0x68], rdx
mov qword [rsp + 0x88], rcx
mov rax, qword [0x00bb5090]
test rax, rax
je 0x41f573
mov rdx, qword [0x00bb5098]
test rdx, rdx
jne 0x41fa5f
jmp 0x42341b
mov rcx, qword [0x00bb5140]
test rcx, rcx
jne 0x41f597
call fcn.00451564
test rax, rax
je 0x4248d8
mov rcx, rax
mov qword [0x00bb5140], rax
mov r8d, 0x3c0
xor edx, edx
call fcn.00451584
test rax, rax
je 0x4248d8
mov qword [rsp + 0x2d0], 4
mov qword [rsp + 0x2d8], rax
mov qword [rsp + 0x2e0], 0
mov qword [rsp + 0x220], 0
mov qword [rsp + 0x228], 8
mov qword [rsp + 0x230], 0
mov ecx, 8
xor edx, edx
call fcn.004514b4
cmp rax, 0xffffffffffffffff
je 0x41f9e7
mov rdi, rax
lea rsi, [rsp + 0x470]
mov r8d, 0x438
mov rcx, rsi
xor edx, edx
call fcn.00451d50
mov dword [rsp + 0x470], 0x438
mov rcx, rdi
mov rdx, rsi
call fcn.004515bc
cmp eax, 1
jne 0x41f9df
lea r12, [rsp + 0x8a8]
lea r14, [rsp + 0x1a0]
jmp 0x41f6c9
mov rax, qword [rsp + 0x228]
mov rcx, rdx
shl rcx, 6
movdqu xmm0, xmmword [rsp + 0x340]
movdqu xmm1, xmmword [rsp + 0x350]
movdqu xmm2, xmmword [rsp + 0x360]
movdqu xmm3, xmmword [rsp + 0x370]
movdqu xmmword [rax + rcx + 0x30], xmm3
movdqu xmmword [rax + rcx + 0x20], xmm2
movdqu xmmword [rax + rcx + 0x10], xmm1
movdqu xmmword [rax + rcx], xmm0
inc rdx
mov qword [rsp + 0x230], rdx
nop dword [rax + rax]
mov rcx, rdi
lea rdx, [rsp + 0x470]
call fcn.004515c4
cmp eax, 1
jne 0x41f9df
xor r8d, r8d
nop dword [rax]
cmp word [rsp + r8*2 + 0x6a0], 0
je 0x41f730
lea rax, [rsp + r8*2]
add rax, 0x6a0
cmp word [rax + 2], 0
je 0x41f717
cmp word [rax + 4], 0
je 0x41f71c
cmp word [rax + 6], 0
je 0x41f722
cmp word [rax + 8], 0
je 0x41f728
add r8, 5
add rax, 0xa
cmp rax, r12
jne 0x41f6d0
mov r8d, 0x104
jmp 0x41f730
inc r8
jmp 0x41f730
add r8, 2
jmp 0x41f730
add r8, 3
jmp 0x41f730
add r8, 4
nop dword [rax]
mov rcx, r14
lea rdx, [rsp + 0x6a0]
call fcn.00429f10
mov rsi, qword [rsp + 0x1a0]
mov rbp, qword [rsp + 0x1a8]
mov r13, qword [rsp + 0x1b0]
movzx r15d, byte [rsp + 0x1b8]
lea rcx, [rsp + 0x1a8]
mov eax, dword [rcx + 0x11]
mov ecx, dword [rcx + 0x14]
mov dword [rsp + 0x298], eax
mov dword [rsp + 0x29b], ecx
mov rcx, r14
mov rdx, rbp
mov r8, r13
call fcn.0041f230
cmp qword [rsp + 0x1a0], 0
je 0x41f848
mov rbx, r14
lea rcx, [rsp + 0x1a8]
mov rax, qword [rcx + 0x10]
mov qword [rsp + 0xf0], rax
movdqu xmm0, xmmword [rcx]
movdqa xmmword [rsp + 0xe0], xmm0
mov r14, qword [rsp + 0xe8]
cmp rax, 0x40
jb 0x41f830
test r14, r14
je 0x41f830
movzx ecx, word [r14]
cmp ecx, 0x5a4d
jne 0x41f830
mov edx, dword [r14 + 0x3c]
mov rcx, rax
sub rcx, rdx
setb r8b
lea r9, [r14 + rdx]
cmp rcx, 0x88
setb cl
or cl, r8b
mov ecx, 0
cmove rcx, r9
jne 0x41f830
cmp dword [rcx], 0x4550
jne 0x41f830
movzx r8d, word [rcx + 0x18]
cmp r8d, 0x20b
jne 0x41f830
movzx r8d, word [rcx + 0x14]
cmp r8, 0x70
jae 0x41f867
nop dword [rax + rax]
mov rcx, r14
call fcn.00451644
mov rcx, qword [rsp + 0xe0]
call fcn.00451474
mov r14, rbx
test rsi, rsi
je 0x41f6b0
mov rcx, qword [0x00bb5140]
xor edx, edx
mov r8, rbp
call fcn.0045158c
jmp 0x41f6b0
add rdx, 0x88
sub rax, rdx
jb 0x41f830
add r8, 0xffffffffffffff90
cmp rax, r8
jb 0x41f830
mov eax, dword [rcx + 0x84]
shl rax, 3
cmp rax, r8
ja 0x41f830
mov rax, qword [rcx + 0x30]
mov qword [rsp + 0x78], rax
mov rax, qword [rsp + 0x488]
mov qword [rsp + 0xa0], rax
mov rax, qword [0x00bb5140]
test rax, rax
jne 0x41f8c5
call fcn.00451564
test rax, rax
je 0x424a9b
mov qword [0x00bb5140], rax
mov r8d, 0x10
mov rcx, rax
xor edx, edx
call fcn.00451584
test rax, rax
je 0x424a9b
mov ecx, dword [rsp + 0x490]
mov rdx, qword [rsp + 0x78]
mov qword [rax], rdx
mov qword [rsp + 0xc8], rax
mov qword [rax + 8], rcx
mov eax, dword [rsp + 0x298]
mov ecx, dword [rsp + 0x29b]
mov dword [rsp + 0x1a3], ecx
mov dword [rsp + 0x1a0], eax
mov rcx, r14
call fcn.00451644
mov rcx, qword [rsp + 0xe0]
call fcn.00451474
cmp r15b, 2
mov r14, rbx
je 0x41f6b0
mov r8, qword [rsp + 0xa0]
sub r8, qword [rsp + 0x78]
mov qword [rsp + 0x340], rsi
mov qword [rsp + 0x348], rbp
mov qword [rsp + 0x350], r13
mov byte [rsp + 0x358], r15b
mov eax, dword [rsp + 0x1a0]
mov ecx, dword [rsp + 0x1a3]
lea rdx, [rsp + 0x359]
mov dword [rdx + 3], ecx
mov dword [rdx], eax
mov qword [rsp + 0x360], r8
mov qword [rsp + 0x368], 1
mov rax, qword [rsp + 0xc8]
mov qword [rsp + 0x370], rax
mov qword [rsp + 0x378], 1
mov rdx, qword [rsp + 0x230]
cmp rdx, qword [rsp + 0x220]
jne 0x41f653
lea rcx, [rsp + 0x220]
call fcn.0041bc30
mov rdx, qword [rsp + 0x230]
jmp 0x41f653
mov rcx, rdi
call fcn.00451474
mov rax, qword [rsp + 0x230]
mov qword [rsp + 0x480], rax
movups xmm0, xmmword [rsp + 0x220]
movdqu xmm1, xmmword [rsp + 0x2d0]
movdqu xmmword [rsp + 0x488], xmm1
mov rax, qword [rsp + 0x2e0]
mov qword [rsp + 0x498], rax
movups xmmword [0x00bb5088], xmm0
movaps xmm0, xmmword [rsp + 0x480]
movups xmmword [0x00bb5098], xmm0
movdqa xmm0, xmmword [rsp + 0x490]
movdqu xmmword [0x00bb50a8], xmm0
mov rax, qword [0x00bb5090]
mov rdx, qword [0x00bb5098]
test rdx, rdx
je 0x42341b
mov rcx, rdx
shl rcx, 6
add rcx, rax
xor r14d, r14d
mov r12, qword [rsp + 0x88]
sub r12, 1
cmovb r12, r14
mov r8, rax
mov r13, qword [r8 + 0x20]
mov r10, qword [r8 + 0x30]
mov r9, qword [r8 + 0x38]
add r8, 0x40
shl r9, 4
nop word cs:[rax + rax]
test r9, r9
je 0x41fad0
mov r11, r10
add r10, 0x10
mov rsi, qword [r11]
add rsi, r13
add r9, 0xfffffffffffffff0
cmp rsi, r12
ja 0x41faa0
add rsi, qword [r11 + 8]
cmp rsi, r12
jbe 0x41faa0
jmp 0x41fadd
inc r14
cmp r8, rcx
jne 0x41fa7f
jmp 0x42341b
mov rdi, qword [0x00bb50b0]
test rdi, rdi
je 0x41fb1a
mov rbp, qword [0x00bb50a8]
imul rsi, rdi, 0xf0
xor ecx, ecx
xor r15d, r15d
nop dword [rax]
cmp qword [rbp + r15], r14
je 0x41fcb3
add r15, 0xf0
dec rcx
cmp rsi, r15
jne 0x41fb00
cmp rdx, r14
jbe 0x42375b
mov rcx, r14
shl rcx, 6
mov rdx, qword [rax + rcx + 8]
mov r8, qword [rax + rcx + 0x10]
lea rcx, [rsp + 0x470]
call fcn.0041f230
cmp qword [rsp + 0x470], 0
je 0x42341b
mov rbp, qword [rsp + 0x488]
mov qword [rsp + 0x330], rbp
movdqu xmm0, xmmword [rsp + 0x478]
movdqa xmmword [rsp + 0x320], xmm0
mov qword [rsp + 0x2b8], 0
mov qword [rsp + 0x2c0], 8
mov qword [rsp + 0x2c8], 0
mov qword [rsp + 0x298], 0
mov rbx, qword [rsp + 0x328]
xor eax, eax
cmp rbp, 0x40
cmovae rax, rbx
jb 0x41fc08
movzx ecx, word [rax]
cmp ecx, 0x5a4d
jne 0x41fc08
mov ecx, dword [rax + 0x3c]
mov rax, rbp
sub rax, rcx
setb dl
lea r8, [rbx + rcx]
cmp rax, 0x88
setb r9b
xor eax, eax
or r9b, dl
cmove rax, r8
jne 0x41fc08
cmp dword [rax], 0x4550
jne 0x41fc08
movzx edx, word [rax + 0x18]
cmp edx, 0x20b
jne 0x41fc08
movzx edx, word [rax + 0x14]
cmp rdx, 0x70
jae 0x422f9e
mov rsi, qword [rsp + 0x2c8]
test rsi, rsi
je 0x41fc53
mov rdi, qword [rsp + 0x2c0]
add rdi, 8
jmp 0x41fc39
add rdi, 0x18
dec rsi
je 0x41fc53
cmp qword [rdi - 8], 0
je 0x41fc30
mov r8, qword [rdi]
mov rcx, qword [0x00bb5140]
xor edx, edx
call fcn.0045158c
jmp 0x41fc30
cmp qword [rsp + 0x2b8], 0
je 0x41fc74
mov r8, qword [rsp + 0x2c0]
mov rcx, qword [0x00bb5140]
xor edx, edx
call fcn.0045158c
cmp qword [rsp + 0x298], 0
je 0x41fc99
mov rcx, qword [rsp + 0x2a8]
call fcn.00451644
mov rcx, qword [rsp + 0x2a0]
call fcn.00451474
mov rcx, rbx
call fcn.00451644
mov rcx, qword [rsp + 0x320]
call fcn.00451474
jmp 0x42341b
test rcx, rcx
je 0x41fe02
lea r14, [r15 + rbp]
lea rcx, [rsp + 0x470]
mov r8d, 0xf0
mov rdx, r14
call fcn.00451d60
lea rdx, [r15 + rbp]
add rdx, 0xf0
sub rsi, r15
add rsi, 0xffffffffffffff10
mov rcx, r14
mov r8, rsi
call fcn.00451d58
lea rsi, [rdi - 1]
mov qword [0x00bb50b0], rsi
cmp rsi, qword [0x00bb50a0]
jne 0x41fdca
lea rax, [rsi + rsi]
cmp rax, rdi
cmovbe rax, rdi
cmp rax, 5
mov r14d, 4
cmovae r14, rax
movabs rax, 0x88888888888888
xor r8d, r8d
cmp r14, rax
setbe r8b
imul rdx, r14, 0xf0
shl r8, 3
test rsi, rsi
je 0x41fd70
imul rax, rsi, 0xf0
mov qword [rsp + 0x340], rbp
mov qword [rsp + 0x348], rax
mov qword [rsp + 0x350], 8
jmp 0x41fd7c
mov qword [rsp + 0x350], 0
lea rcx, [rsp + 0x1a0]
lea r9, [rsp + 0x340]
call fcn.00451160
cmp qword [rsp + 0x1a0], 0
mov rbp, qword [rsp + 0x1a8]
je 0x4229ef
mov rdx, qword [rsp + 0x1b0]
movabs rax, 0x8000000000000001
cmp rdx, rax
jne 0x42491b
mov rbp, qword [0x00bb50a8]
test rsi, rsi
je 0x41fde5
lea rcx, [rbp + 0xf0]
imul r8, rsi, 0xf0
mov rdx, rbp
call fcn.00451d58
lea rdx, [rsp + 0x470]
mov r8d, 0xf0
mov rcx, rbp
call fcn.00451d60
mov qword [0x00bb50b0], rdi
sub r12, r13
mov rbx, r12
lea r11, [r12 + 1]
mov rax, qword [rbp + 0x68]
mov qword [rsp + 0x88], rax
mov rdx, qword [rbp + 0x70]
xor r15d, r15d
test rdx, rdx
je 0x41fe85
mov ecx, 0xff
mov rax, rdx
mov r8, rdx
mov rsi, qword [rsp + 0x88]
jmp 0x41fe48
mov r8, rax
sub rax, r15
jbe 0x41fe85
shr rax, 1
add rax, r15
mov r10, rax
shl r10, 5
xor r9d, r9d
cmp qword [rsi + r10], r11
setne r9b
cmovb r9d, ecx
cmp r9b, 1
je 0x41fe40
movzx r9d, r9b
inc rax
mov r15, rax
cmp r9d, 0xff
jne 0x41fe85
mov rax, r8
sub rax, r15
ja 0x41fe48
mov qword [rsp + 0xa0], r11
cmp r15, rdx
ja 0x4248e9
lea rax, [rbp + 0x58]
mov qword [rsp + 0x180], rax
shl r15, 5
add r15, qword [rsp + 0x88]
mov rax, qword [rbp + 0x80]
mov qword [rsp + 0xc8], rax
mov qword [rsp + 0x78], rbp
mov rax, qword [rbp + 0x88]
mov qword [rsp + 0xd8], rax
lea rax, [0x00bacb38]
mov qword [rsp + 0xd0], rax
lea rax, [rsp + 0x470]
mov qword [rsp + 0x198], rax
mov ecx, 3
cmp r15, qword [rsp + 0x88]
je 0x422766
mov r10, r15
cmp qword [r10 - 8], rbx
jbe 0x422766
mov rsi, rbx
lea r15, [r10 - 0x20]
cmp qword [r10 - 0x18], rbx
jbe 0x41fef0
mov rax, qword [rsp + 0xa0]
cmp rax, qword [r10 - 0x20]
jbe 0x41fef0
mov rcx, qword [r15 + 0x10]
cmp rcx, qword [rsp + 0xd8]
mov rdi, qword [rsp + 0x68]
jae 0x423801
imul rcx, rcx, 0x230
mov rax, qword [rsp + 0xc8]
lea r13, [rax + rcx]
lea rsi, [rax + rcx]
add rsi, 0x200
mov qword [rsp + 0x318], rcx
cmp qword [rax + rcx + 0x200], 0
mov rbp, qword [rsp + 0x78]
mov qword [rsp + 0x60], r13
je 0x41ff9e
cmp qword [rsi + 8], 0
je 0x420934
add rsi, 8
mov rax, qword [rsi + 0x18]
test rax, rax
jne 0x42094b
jmp 0x4209bb
mov qword [rsp + 0x220], 0
mov qword [rsp + 0x228], 8
mov qword [rsp + 0x230], 0
mov qword [rsp + 0xe0], 0
mov qword [rsp + 0xe8], 8
mov qword [rsp + 0xf0], 0
lea rax, [r13 + 0x50]
lea rcx, [r13 + 0x20]
mov r8, qword [r13 + 0x50]
mov rdx, qword [r13 + 0x58]
mov qword [rsp + 0x358], rax
mov qword [rsp + 0x360], rcx
mov qword [rsp + 0x348], rdx
mov qword [rsp + 0x350], 0
mov qword [rsp + 0x340], r8
test rdx, rdx
mov qword [rsp + 0x148], rsi
mov qword [rsp + 0xb8], r14
je 0x421b3a
mov r12, qword [rbp + 0x90]
mov eax, dword [r13 + 0x98]
mov rsi, qword [r13 + 0xd0]
movzx ecx, ah
mov qword [rsp + 0x160], rcx
lea rcx, [r12 + 0x40]
mov qword [rsp + 0x150], rcx
lea rcx, [r12 + 0x30]
mov qword [rsp + 0xb0], rcx
mov ecx, eax
shr ecx, 0x10
mov dword [rsp + 0x168], ecx
and eax, 0xff00
mov dword [rsp + 0x158], eax
mov eax, 8
mov qword [rsp + 0x90], rax
xor eax, eax
mov qword [rsp + 0x50], rax
xor ebp, ebp
mov qword [rsp + 0x80], rsi
mov qword [rsp + 0x48], r13
mov r8, qword [rsp + 0x340]
mov rax, qword [rsp + 0x358]
mov rcx, qword [rax + 0x20]
xor r9d, r9d
cmp byte [rax + 0x49], 8
sete r9b
sub rcx, qword [rax + 8]
lea rsi, [rcx + r9*8]
add rsi, r8
sub rsi, qword [rax]
add rsi, 4
mov r9d, 1
sub r9, rdx
lea r10, [r8 + 1]
xor r13d, r13d
xor ecx, ecx
nop word cs:[rax + rax]
movzx r11d, byte [r10 - 1]
cmp ecx, 0x3f
jne 0x420114
cmp r11b, 2
jae 0x420d2f
movzx r11d, r11b
mov edi, r11d
and edi, 0x7f
shl rdi, cl
or r13, rdi
test r11b, r11b
jns 0x42013d
add ecx, 7
inc r9
inc r10
cmp r9, 1
jne 0x420100
jmp 0x420d49
mov qword [rsp + 0x340], r10
neg r9
mov qword [rsp + 0x348], r9
test r13, r13
je 0x420179
mov qword [rsp + 0x58], r12
mov rcx, qword [rsp + 0x360]
lea rdx, [r13 - 1]
cmp rdx, qword [rcx + 0x28]
jae 0x420197
imul r12, rdx, 0x70
add r12, qword [rcx + 0x20]
jmp 0x420217
dec qword [rsp + 0x350]
mov rdx, qword [rsp + 0x348]
test rdx, rdx
jne 0x4200ab
jmp 0x4208e9
mov r12, qword [rcx + 8]
mov r14b, 0x12
test r12, r12
je 0x421034
mov rcx, qword [rcx]
movzx r9d, word [r12 + 0x532]
imul r10, r9, 0x70
mov rdx, 0xffffffffffffffff
xor r8d, r8d
mov r11, r10
add r11, r8
je 0x4201f9
xor r11d, r11d
cmp qword [r12 + rdx*8 + 0x4e0], r13
setne r11b
mov edi, 0xff
cmova r11d, edi
inc rdx
add r8, 0xffffffffffffff90
cmp r11b, 1
je 0x4201c1
movzx r9d, r11b
test r9d, r9d
jne 0x4201fc
jmp 0x420210
mov rdx, r9
sub rcx, 1
jb 0x421034
mov r12, qword [r12 + rdx*8 + 0x538]
jmp 0x4201aa
sub r12, r8
add r12, 0xffffffffffffff90
cmp byte [r12 + 0x6a], 1
jne 0x420227
inc qword [rsp + 0x350]
cmp word [r12 + 0x68], 0x2e
jne 0x42025b
mov qword [rsp + 0x430], 0
mov qword [rsp + 0x280], 0
cmp qword [r12], 0
je 0x420275
mov r14, qword [r12 + 0x18]
mov r12, qword [r12 + 0x10]
jmp 0x420288
cmp qword [r12], 0
je 0x4204d2
mov r14, qword [r12 + 0x18]
mov r12, qword [r12 + 0x10]
jmp 0x4204e5
mov r14, qword [r12 + 8]
cmp r14, 6
jae 0x424b2a
add r12, 0x10
test r14, r14
je 0x420534
shl r14, 4
xor edi, edi
xor eax, eax
mov qword [rsp + 0x98], rax
xor eax, eax
mov qword [rsp + 0x48], rax
jmp 0x4202c9
mov rdx, qword [rsp + 0x1a8]
mov qword [rax], 1
mov qword [rcx], rdx
add rdi, 0x10
cmp r14, rdi
je 0x42054f
movdqu xmm0, xmmword [r12 + rdi]
movdqa xmmword [rsp + 0x2d0], xmm0
mov rax, qword [rsp + 0x358]
mov r8d, dword [rax + 0x48]
movdqa xmmword [rsp + 0x1a0], xmm0
lea rcx, [rsp + 0x470]
lea rdx, [rsp + 0x340]
lea r9, [rsp + 0x1a0]
call fcn.0043fcc0
cmp dword [rsp + 0x470], 0x2e
je 0x420e8c
movzx eax, word [rsp + 0x488]
cmp eax, 0x11
je 0x4203f8
cmp eax, 0x12
je 0x4203a4
cmp eax, 0x55
jne 0x4202bc
lea rcx, [rsp + 0x1a0]
lea rdx, [rsp + 0x470]
call fcn.00441920
mov rax, qword [rsp + 0x1a0]
cmp rax, 0x18
je 0x42043e
cmp eax, 0x16
jne 0x4204a3
cmp word [rsp + 0x168], 5
mov ecx, 0
cmovb rcx, qword [rsp + 0x80]
mov rax, qword [rsp + 0x58]
cmp byte [rax + 0xe8], 0
mov eax, 0
cmove rcx, rax
add rcx, qword [rsp + 0x1a8]
mov qword [rsp + 0x338], rcx
jmp 0x4204c3
lea rcx, [rsp + 0x1a0]
lea rdx, [rsp + 0x470]
call fcn.00441920
mov rdx, qword [rsp + 0x1a0]
lea rax, [rsp + 0x430]
lea rcx, [rsp + 0x320]
test rdx, rdx
je 0x4202aa
cmp edx, 7
jne 0x4202bc
lea rax, [rsp + 0x280]
lea rcx, [rsp + 0x468]
jmp 0x4202aa
lea rcx, [rsp + 0x1a0]
lea rdx, [rsp + 0x470]
call fcn.00441920
cmp qword [rsp + 0x1a0], 0
jne 0x4202bc
mov eax, 1
mov qword [rsp + 0x98], rax
mov rax, qword [rsp + 0x1a8]
mov qword [rsp + 0x270], rax
jmp 0x4202bc
mov rax, qword [rsp + 0x58]
mov rdx, qword [rax + 0x40]
mov rax, qword [rax + 0x48]
mov rcx, qword [rsp + 0x80]
sub rax, rcx
jb 0x421456
add rdx, rcx
mov rcx, qword [rsp + 0x1a8]
imul rcx, qword [rsp + 0x160]
sub rax, rcx
jb 0x421456
add rdx, rcx
mov rcx, rdx
cmp dword [rsp + 0x158], 0x800
jne 0x4204a7
cmp rax, 7
jbe 0x422669
mov rax, qword [rcx]
mov qword [rsp + 0x29f], rax
jmp 0x4204b3
xor eax, eax
jmp 0x4204c8
cmp rax, 4
jb 0x4226d6
mov eax, dword [rcx]
add rax, qword [rsp + 0x80]
mov qword [rsp + 0x338], rax
mov eax, 1
mov qword [rsp + 0x48], rax
jmp 0x4202bc
mov r14, qword [r12 + 8]
cmp r14, 5
ja 0x424b2a
add r12, 0x10
mov r8d, dword [rax + 0x48]
mov qword [rsp + 0x20], r14
lea rcx, [rsp + 0x470]
lea rdx, [rsp + 0x340]
mov r9, r12
call fcn.00441180
movzx r14d, byte [rsp + 0x470]
cmp r14b, 0x4b
jne 0x4224f1
mov r12, qword [rsp + 0x58]
mov rdx, qword [rsp + 0x348]
test rdx, rdx
jne 0x4200ab
jmp 0x4208e9
mov r12, qword [rsp + 0x58]
mov rdx, qword [rsp + 0x348]
test rdx, rdx
jne 0x4200ab
jmp 0x4208e9
cmp qword [rsp + 0x48], 0
je 0x4206da
mov r9, qword [rsp + 0x60]
mov eax, dword [r9 + 0x98]
mov ecx, eax
shr ecx, 0x10
xor r8d, r8d
cmp cx, 5
setae r8b
mov rdx, qword [rsp + 0xb0]
cmovae rdx, qword [rsp + 0x150]
shl r8, 4
mov rdx, qword [rdx + 8]
mov r12, qword [rsp + 0x58]
mov r11, qword [r8 + r12 + 0x30]
mov r10, qword [rsp + 0x338]
sub rdx, r10
jb 0x422739
mov r8, qword [r9 + 0xb0]
mov r9, qword [r9 + 0xc0]
add r11, r10
cmp cx, 5
movdqu xmm0, xmmword [r12 + 0x60]
movdqu xmmword [rsp + 0x470], xmm0
mov qword [rsp + 0x480], r8
mov qword [rsp + 0x488], r9
mov qword [rsp + 0x490], r11
mov qword [rsp + 0x498], rdx
mov dword [rsp + 0x4a0], eax
setae byte [rsp + 0x4a4]
xor edi, edi
lea rcx, [rsp + 0x1a0]
lea rdx, [rsp + 0x470]
call fcn.00431f50
mov rax, qword [rsp + 0x1a0]
mov r14, qword [rsp + 0x1a8]
mov rcx, qword [rsp + 0x1b0]
cmp rax, 1
jne 0x4206b1
cmp r14, rcx
jae 0x420601
mov rdi, rcx
mov rax, qword [rsp + 0x50]
cmp rax, qword [rsp + 0xe0]
jne 0x42067a
lea rcx, [rsp + 0xe0]
mov rdx, qword [rsp + 0x50]
call fcn.0041bd00
mov rax, qword [rsp + 0xe8]
mov qword [rsp + 0x90], rax
mov rax, qword [rsp + 0xf0]
mov qword [rsp + 0x50], rax
mov rcx, qword [rsp + 0x50]
lea rax, [rcx + rcx*2]
mov rdx, qword [rsp + 0x90]
mov qword [rdx + rax*8], r14
mov qword [rdx + rax*8 + 8], rdi
mov qword [rdx + rax*8 + 0x10], rbp
inc rcx
mov qword [rsp + 0x50], rcx
mov qword [rsp + 0xf0], rcx
mov dil, 1
jmp 0x420601
mov qword [rsp + 0x48], rcx
cmp eax, 2
jne 0x4206cc
mov rdi, r14
shr rdi, 8
cmp r14b, 0x4b
jne 0x422755
test dil, dil
jne 0x42081c
jmp 0x4208c0
mov rax, qword [rsp + 0x98]
test rax, rax
mov r12, qword [rsp + 0x58]
je 0x420776
cmp qword [rsp + 0x430], 0
je 0x420776
mov rdi, qword [rsp + 0x320]
cmp qword [rsp + 0x270], rdi
jae 0x4208c0
mov rax, qword [rsp + 0x50]
cmp rax, qword [rsp + 0xe0]
jne 0x42074f
lea rcx, [rsp + 0xe0]
mov rdx, qword [rsp + 0x50]
call fcn.0041bd00
mov rax, qword [rsp + 0xe8]
mov qword [rsp + 0x90], rax
mov rax, qword [rsp + 0xf0]
mov qword [rsp + 0x50], rax
mov rdx, qword [rsp + 0x50]
lea rax, [rdx + rdx*2]
mov rcx, qword [rsp + 0x270]
mov r8, qword [rsp + 0x90]
mov qword [r8 + rax*8], rcx
mov qword [r8 + rax*8 + 8], rdi
jmp 0x420802
test rax, rax
je 0x4208c0
cmp qword [rsp + 0x280], 0
je 0x4208c0
mov rdi, qword [rsp + 0x468]
mov rax, qword [rsp + 0x270]
add rdi, rax
cmp rax, rdi
jae 0x4208d3
mov rax, qword [rsp + 0x50]
cmp rax, qword [rsp + 0xe0]
jne 0x4207d8
lea rcx, [rsp + 0xe0]
mov rdx, qword [rsp + 0x50]
call fcn.0041bd00
mov rax, qword [rsp + 0xf0]
mov qword [rsp + 0x50], rax
mov r8, qword [rsp + 0xe8]
mov rdx, qword [rsp + 0x50]
lea rax, [rdx + rdx*2]
mov rcx, qword [rsp + 0x270]
mov qword [r8 + rax*8], rcx
mov qword [r8 + rax*8 + 8], rdi
mov qword [rsp + 0x90], r8
mov qword [r8 + rax*8 + 0x10], rbp
inc rdx
mov qword [rsp + 0x50], rdx
mov qword [rsp + 0xf0], rdx
mov r12, qword [rsp + 0x58]
mov qword [rsp + 0x470], rsi
mov qword [rsp + 0x478], 0
mov rbp, qword [rsp + 0x230]
cmp rbp, qword [rsp + 0x220]
jne 0x42085a
lea rcx, [rsp + 0x220]
mov rdx, rbp
call fcn.0041b8e0
mov rbp, qword [rsp + 0x230]
mov rax, qword [rsp + 0x228]
lea rcx, [rbp*8]
add rcx, rbp
mov rdx, qword [rsp + 0x4b0]
mov qword [rax + rcx*8 + 0x40], rdx
movdqu xmm0, xmmword [rsp + 0x470]
movdqu xmm1, xmmword [rsp + 0x480]
movdqu xmm2, xmmword [rsp + 0x490]
movdqu xmm3, xmmword [rsp + 0x4a0]
movdqu xmmword [rax + rcx*8 + 0x30], xmm3
movdqu xmmword [rax + rcx*8 + 0x20], xmm2
movdqu xmmword [rax + rcx*8 + 0x10], xmm1
movdqu xmmword [rax + rcx*8], xmm0
inc rbp
mov qword [rsp + 0x230], rbp
mov rdx, qword [rsp + 0x348]
test rdx, rdx
jne 0x4200ab
jmp 0x4208e9
mov r12, qword [rsp + 0x58]
mov rdx, qword [rsp + 0x348]
test rdx, rdx
jne 0x4200ab
mov rax, qword [rsp + 0xe8]
mov qword [rsp + 0x98], rax
mov rdi, qword [rsp + 0x50]
cmp rdi, 0x15
mov esi, dword [rsp + 0xc0]
jae 0x42146b
cmp rdi, 2
jb 0x421b41
mov r8d, 1
mov rcx, qword [rsp + 0x98]
mov rdx, rdi
call fcn.004334d0
jmp 0x421b41
cmp byte [rsi + 0x10], 0x4b
jne 0x42283c
mov rsi, qword [rsi + 0x18]
mov rax, qword [rsi + 0x18]
test rax, rax
je 0x4209bb
mov rcx, qword [rsi + 0x10]
xor r8d, r8d
mov rdx, rax
jmp 0x420968
mov rdx, rax
sub rax, r8
jbe 0x4209bb
shr rax, 1
add rax, r8
lea r9, [rax + rax*2]
mov r11, rbx
cmp rbx, qword [rcx + r9*8 + 8]
mov r10d, 0
adc r10b, 0xff
cmp qword [rcx + r9*8], rbx
movzx r10d, r10b
mov r11d, 1
cmova r10d, r11d
cmp r10b, 1
je 0x420960
movzx r8d, r10b
cmp r8d, 0xff
jne 0x420be8
inc rax
mov r8, rax
mov rax, rdx
sub rax, r8
ja 0x420968
xor r8d, r8d
mov rax, qword [rbp + 0x90]
add rax, 0x10
mov qword [rsp + 0xe0], r13
mov qword [rsp + 0x1a0], rax
cmp dword [r13 + 0x100], 0x2f
jne 0x4209ed
mov ebp, 2
jmp 0x420e6e
mov r12, r8
lea rax, [r13 + 0xd8]
mov qword [rsp + 0x340], rax
mov rax, qword [rsp + 0xc8]
mov rcx, qword [rsp + 0x318]
lea rcx, [rax + rcx + 0x1d8]
lea rax, [rsp + 0x340]
mov qword [rsp + 0x470], rax
lea rax, [rsp + 0xe0]
mov qword [rsp + 0x478], rax
lea rax, [rsp + 0x1a0]
mov qword [rsp + 0x480], rax
lea rdx, [rsp + 0x470]
call fcn.00436890
lea rcx, [rax + 8]
cmp qword [rax], 0
cmove rax, rcx
jne 0x420a6f
cmp byte [rax], 0x4b
jne 0x42283c
mov rax, qword [rax + 8]
mov ebp, 2
test rax, rax
je 0x420e6b
mov rcx, qword [rax + 0x10]
mov r8, qword [rax + 0x18]
test r8, r8
je 0x420af7
mov rdx, r8
xor r10d, r10d
mov r9, r8
jmp 0x420a9d
mov r9, rdx
sub rdx, r10
jbe 0x420aee
shr rdx, 1
add rdx, r10
mov r11, rdx
shl r11, 5
mov rdi, rbx
cmp rbx, qword [rcx + r11 + 0x18]
mov esi, 0
adc sil, 0xff
cmp qword [rcx + r11 + 0x10], rbx
movzx r11d, sil
mov esi, 1
cmova r11d, esi
cmp r11b, 1
je 0x420a95
movzx r10d, r11b
cmp r10d, 0xff
jne 0x420af9
inc rdx
mov r10, rdx
mov rdx, r9
sub rdx, r10
ja 0x420a9d
test r10, r10
jne 0x420e6b
xor edx, edx
cmp rdx, r8
jae 0x420b73
mov r10, rdx
shl r10, 5
mov r9, qword [rcx + r10 + 8]
test r9, r9
je 0x420b73
mov r13, r14
mov r10, qword [rcx + r10]
xor esi, esi
mov r11, r9
jmp 0x420b25
mov r11, r9
sub r9, rsi
jbe 0x420b67
shr r9, 1
add r9, rsi
lea r14, [r9 + r9*2]
xor edi, edi
cmp qword [r10 + r14*8], rbx
setne dil
mov r14d, 0xff
cmovb edi, r14d
cmp dil, 1
je 0x420b1d
movzx esi, dil
cmp esi, 0xff
jne 0x420e5f
inc r9
mov rsi, r9
mov r9, r11
sub r9, rsi
ja 0x420b25
sub rsi, 1
mov r9, rsi
mov r14, r13
jae 0x420b76
xor r9d, r9d
cmp rdx, r8
jae 0x420e6b
mov r10, rdx
shl r10, 5
mov r11, qword [rsp + 0xa0]
cmp qword [rcx + r10 + 0x10], r11
jae 0x420e6b
cmp r9, qword [rcx + r10 + 8]
jae 0x420e25
add rcx, r10
mov rcx, qword [rcx]
lea rdx, [r9 + r9*2]
mov r8, qword [rsp + 0xa0]
cmp qword [rcx + rdx*8], r8
mov r8, r12
jae 0x420e6e
mov r8, qword [rcx + rdx*8 + 8]
cmp r8, qword [rax + 8]
jae 0x420f80
mov rax, qword [rax]
lea r8, [r8 + r8*2]
mov rdi, qword [rax + r8*8 + 8]
mov r13, qword [rax + r8*8 + 0x10]
jmp 0x420f82
mov rcx, qword [rcx + r9*8 + 0x10]
mov rdx, qword [rsi + 8]
cmp rcx, rdx
jae 0x424846
mov rax, qword [rsi]
lea rcx, [rcx + rcx*8]
lea r8, [rax + rcx*8]
add r8, 8
cmp qword [rax + rcx*8 + 8], 0
jne 0x420f2f
mov qword [rsp + 0xa8], r8
mov qword [rsp + 0xb8], r14
mov r9, qword [rax + rcx*8]
mov rdx, qword [r13 + 0x58]
mov rax, qword [r13 + 0x70]
xor ecx, ecx
cmp byte [r13 + 0x99], 8
sete cl
mov r8, rax
sub r8, rdx
lea r8, [r8 + rcx*8]
add r8, 4
xor r10d, r10d
mov qword [rsp + 0x70], r10
mov r10, r9
mov r14b, 0x38
mov edi, 0
sub r10, r8
jb 0x420ec3
mov r12d, 0
cmp rdx, r10
mov r8, qword [rsp + 0xa8]
jbe 0x420ece
mov qword [rsp + 0x188], r9
lea r11, [r13 + 0x50]
lea r8, [r13 + 0x20]
mov r9, qword [r13 + 0x50]
lea rsi, [r9 + r10]
mov qword [rsp + 0x358], r11
mov qword [rsp + 0x360], r8
mov r11, rdx
mov r14b, 0x13
sub r11, r10
mov qword [rsp + 0x348], r11
mov qword [rsp + 0x350], 0
mov qword [rsp + 0x340], rsi
je 0x420e85
lea rcx, [rcx*8 + 4]
lea rdi, [r9 + rdx]
mov r10, qword [rsp + 0x188]
sub r10, rcx
sub r10, rax
xor eax, eax
xor ecx, ecx
movzx r11d, byte [rdi + r10]
cmp ecx, 0x3f
jne 0x420d04
cmp r11b, 1
ja 0x420eb9
movzx r11d, r11b
mov esi, r11d
and esi, 0x7f
shl rsi, cl
or rax, rsi
test r11b, r11b
jns 0x420f43
add ecx, 7
inc r10
jne 0x420cf0
mov qword [rsp + 0x70], rdi
jmp 0x420ec1
mov qword [rsp + 0x340], r10
neg r9
mov qword [rsp + 0x348], r9
mov r14b, 6
xor edi, edi
jmp 0x420d6a
add r8, rdx
mov qword [rsp + 0x340], r8
mov qword [rsp + 0x348], 0
mov r14b, 0x13
xor edi, edi
mov qword [rsp + 0x48], r8
xor r12d, r12d
mov r13, qword [rsp + 0x60]
cmp qword [rsp + 0xe0], 0
je 0x420d9b
mov r8, qword [rsp + 0xe8]
mov rcx, qword [0x00bb5140]
xor edx, edx
call fcn.0045158c
mov rbp, qword [rsp + 0x230]
test rbp, rbp
je 0x420df8
mov rsi, qword [rsp + 0x228]
add rsi, 0x38
jmp 0x420db9
add rsi, 0x48
dec rbp
je 0x420df8
cmp qword [rsi - 0x30], 0
je 0x420db0
mov r8, qword [rsi - 0x18]
test r8, r8
je 0x420db0
cmp qword [rsi - 0x10], 0
je 0x420dde
mov rcx, qword [0x00bb5140]
xor edx, edx
call fcn.0045158c
cmp qword [rsi], 0
je 0x420db0
mov r8, qword [rsi - 8]
mov rcx, qword [0x00bb5140]
xor edx, edx
call fcn.0045158c
jmp 0x420db0
cmp qword [rsp + 0x220], 0
je 0x420e19
mov r8, qword [rsp + 0x228]
mov rcx, qword [0x00bb5140]
xor edx, edx
call fcn.0045158c
xor esi, esi
mov rbp, qword [rsp + 0x78]
jmp 0x421c6e
lea r9, [rdx + 1]
cmp r9, r8
je 0x420e6b
not rdx
add rdx, r8
add rcx, r10
add rcx, 0x20
mov r8, qword [rsp + 0xa0]
cmp qword [rcx + 0x10], r8
jae 0x420e6b
cmp qword [rcx + 8], 0
jne 0x420fb4
add rcx, 0x20
dec rdx
jne 0x420e3b
jmp 0x420e6b
mov r14, r13
cmp rdx, r8
jb 0x420b7f
mov r8, r12
test r8, r8
jne 0x42310c
cmp ebp, 2
je 0x41fef0
jmp 0x423275
mov qword [rsp + 0x70], rsi
jmp 0x420ec1
mov r14, qword [rsp + 0x478]
mov rax, qword [rsp + 0x480]
mov qword [rsp + 0x48], rax
mov r13, qword [rsp + 0x60]
mov rdi, r14
shr rdi, 8
mov r12, r14
shr r12, 0x10
jmp 0x420d72
mov qword [rsp + 0x70], rdi
mov r14b, 6
xor edi, edi
xor r12d, r12d
mov r8, qword [rsp + 0xa8]
cmp qword [r8], 0
jne 0x420f22
xor esi, esi
shl r12, 0x10
movzx eax, dil
shl rax, 8
or rax, r12
movzx ecx, r14b
or rcx, rax
mov qword [r8 + 8], rcx
mov rax, qword [rsp + 0x70]
mov qword [r8 + 0x10], rax
mov qword [r8 + 0x18], rsi
mov rax, qword [rsp + 0x140]
mov qword [r8 + 0x20], rax
mov rax, qword [rsp + 0x170]
mov qword [r8 + 0x28], rax
movdqu xmmword [r8 + 0x30], xmm6
mov qword [r8], 1
mov rdi, qword [rsp + 0x68]
mov r14, qword [rsp + 0xb8]
cmp qword [r8 + 0x18], 0
je 0x422630
add r8, 8
jmp 0x4209be
add r9, rdx
lea rcx, [r10 + r9]
inc rcx
mov qword [rsp + 0x340], rcx
not r10
mov qword [rsp + 0x348], r10
test rax, rax
je 0x424bf4
lea rcx, [rax - 1]
cmp rcx, qword [r13 + 0x48]
jae 0x420fbc
imul rdi, rcx, 0x70
add rdi, qword [r13 + 0x40]
jmp 0x421047
xor edi, edi
mov r8d, dword [rcx + rdx*8 + 0x10]
mov eax, dword [rcx + rdx*8 + 0x14]
mov rcx, rax
shl rcx, 0x20
xor r14d, r14d
test eax, eax
setne r14b
or r14, rcx
xor ebp, ebp
mov dword [rsp + 0xc0], r8d
test r8d, r8d
setne bpl
jmp 0x420e6b
xor r9d, r9d
jmp 0x420ba7
mov rdi, qword [r13 + 0x28]
mov r14b, 0x12
test rdi, rdi
je 0x42144a
mov rcx, qword [r8]
movzx r9d, word [rdi + 0x532]
imul r10, r9, 0x70
mov rdx, 0xffffffffffffffff
xor r8d, r8d
mov r11, r10
add r11, r8
je 0x42101d
xor r11d, r11d
cmp qword [rdi + rdx*8 + 0x4e0], rax
setne r11b
mov esi, 0xff
cmova r11d, esi
inc rdx
add r8, 0xffffffffffffff90
cmp r11b, 1
je 0x420fe5
movzx r9d, r11b
test r9d, r9d
jne 0x421020
jmp 0x421040
mov rdx, r9
sub rcx, 1
jb 0x42144a
mov rdi, qword [rdi + rdx*8 + 0x538]
jmp 0x420fcf
xor eax, eax
mov qword [rsp + 0x48], rax
jmp 0x420d45
sub rdi, r8
add rdi, 0xffffffffffffff90
cmp byte [rdi + 0x6a], 1
jne 0x421059
mov qword [rsp + 0x350], 1
cmp qword [rdi], 0
je 0x421069
mov r14, qword [rdi + 0x18]
mov rdi, qword [rdi + 0x10]
jmp 0x42107b
mov r14, qword [rdi + 8]
cmp r14, 6
jae 0x424c5c
add rdi, 0x10
test r14, r14
je 0x4212a1
mov rax, qword [rbp + 0x90]
add rax, 0x10
mov qword [rsp + 0x48], rax
shl r14, 4
xor r12d, r12d
xor esi, esi
jmp 0x4210c3
cmp eax, 3
je 0x42119c
cmp eax, 0x31
jne 0x4210b6
test rsi, rsi
je 0x421228
add r12, 0x10
cmp r14, r12
je 0x4212a3
movdqu xmm0, xmmword [rdi + r12]
movdqa xmmword [rsp + 0xe0], xmm0
mov rax, qword [rsp + 0x358]
mov r8d, dword [rax + 0x48]
movdqa xmmword [rsp + 0x1a0], xmm0
lea rcx, [rsp + 0x470]
lea rdx, [rsp + 0x340]
lea r9, [rsp + 0x1a0]
call fcn.0043fcc0
cmp dword [rsp + 0x470], 0x2e
je 0x42140b
movzx eax, word [rsp + 0x488]
cmp eax, 0x46
jle 0x42109f
cmp eax, 0x47
je 0x4210ad
cmp eax, 0x6e
je 0x421130
cmp eax, 0x2007
jne 0x4210b6
lea r13, [rsp + 0x1a0]
mov rcx, r13
lea rdx, [rsp + 0x470]
call fcn.00441920
mov rax, qword [rsp + 0x60]
movzx r8d, byte [rax + 0x99]
mov r9, qword [rax + 0xb8]
mov qword [rsp + 0x20], r13
lea rcx, [rsp + 0xe0]
mov rdx, qword [rsp + 0x48]
call fcn.0044cdd0
cmp qword [rsp + 0xe0], 0
jne 0x4210b6
mov rax, qword [rsp + 0xf0]
mov qword [rsp + 0x70], rax
mov rsi, qword [rsp + 0xe8]
jmp 0x4210b6
test rsi, rsi
jne 0x4210b6
lea r13, [rsp + 0x1a0]
mov rcx, r13
lea rdx, [rsp + 0x470]
call fcn.00441920
mov rax, qword [rsp + 0x60]
movzx r8d, byte [rax + 0x99]
mov r9, qword [rax + 0xb8]
mov qword [rsp + 0x20], r13
lea rcx, [rsp + 0xe0]
mov rdx, qword [rsp + 0x48]
call fcn.0044cdd0
cmp qword [rsp + 0xe0], 0
mov rcx, qword [rsp + 0x80]
cmove rcx, qword [rsp + 0xf0]
mov rsi, qword [rsp + 0xe8]
mov eax, 0
cmovne rsi, rax
mov qword [rsp + 0x80], rcx
mov rax, rcx
mov qword [rsp + 0x70], rcx
jmp 0x4210b6
lea rcx, [rsp + 0x1a0]
lea rdx, [rsp + 0x470]
call fcn.00441920
mov rdx, qword [rsp + 0x1a0]
mov r8, qword [rsp + 0x1a8]
mov rax, qword [rsp + 0x180]
mov qword [rsp + 0x20], rax
mov qword [rsp + 0x28], 0x10
lea rcx, [rsp + 0xe0]
mov r9, qword [rsp + 0x60]
call fcn.004457b0
cmp qword [rsp + 0xe0], 0
mov rsi, qword [rsp + 0xe8]
mov rax, qword [rsp + 0xf0]
mov qword [rsp + 0x70], rax
je 0x4210b6
mov r14, rsi
jmp 0x421420
xor esi, esi
mov qword [rsp + 0x460], rsi
mov qword [rsp + 0xe0], 0
mov qword [rsp + 0xe8], 8
mov qword [rsp + 0xf0], 0
mov qword [rsp + 0x1a0], 0
mov qword [rsp + 0x1a8], 8
mov qword [rsp + 0x1b0], 0
lea rax, [rsp + 0x1a0]
mov qword [rsp + 0x30], rax
lea rax, [rsp + 0xe0]
mov qword [rsp + 0x28], rax
mov rax, qword [rsp + 0x180]
mov qword [rsp + 0x20], rax
mov qword [rsp + 0x38], 0
lea rcx, [rsp + 0x470]
lea rdx, [rsp + 0x340]
xor r8d, r8d
mov r13, qword [rsp + 0x60]
mov r9, r13
call fcn.00444560
movzx r14d, byte [rsp + 0x470]
cmp r14b, 0x4b
jne 0x421398
mov rax, qword [rsp + 0x1a8]
mov qword [rsp + 0x58], rax
mov rdx, qword [rsp + 0x1b0]
cmp rdx, 0x15
jae 0x421da0
cmp rdx, 2
jb 0x42249d
mov r8d, 1
mov rcx, qword [rsp + 0x58]
lea r9, [rsp + 0x2d0]
call fcn.004331c0
jmp 0x42249d
movzx edi, byte [rsp + 0x471]
mov r12d, dword [rsp + 0x472]
movzx esi, word [rsp + 0x476]
mov rax, qword [rsp + 0x478]
mov qword [rsp + 0x70], rax
cmp qword [rsp + 0x1a0], 0
je 0x4213de
mov r8, qword [rsp + 0x1a8]
mov rcx, qword [0x00bb5140]
xor edx, edx
call fcn.0045158c
shl rsi, 0x20
cmp qword [rsp + 0xe0], 0
je 0x421403
mov r8, qword [rsp + 0xe8]
mov rcx, qword [0x00bb5140]
xor edx, edx
call fcn.0045158c
or r12, rsi
jmp 0x420ec6
mov r14, qword [rsp + 0x478]
mov rax, qword [rsp + 0x480]
mov qword [rsp + 0x70], rax
mov r8, qword [rsp + 0xa8]
mov r12, r14
shr r12, 0x10
mov rdi, r14
shr rdi, 8
mov r13, qword [rsp + 0x60]
cmp qword [r8], 0
jne 0x420f22
jmp 0x420ed4
xor eax, eax
mov qword [rsp + 0x70], rax
jmp 0x420ec1
mov qword [rsp + 0x48], rdx
mov r13, qword [rsp + 0x60]
mov r14d, 0x13
jmp 0x420ea6
mov rax, qword [0x00bb5140]
test rax, rax
jne 0x42148c
call fcn.00451564
test rax, rax
je 0x424c22
mov qword [0x00bb5140], rax
mov rsi, rdi
shr rsi, 1
lea rcx, [rsi*8]
lea r8, [rcx + rcx*2]
mov rcx, rax
xor edx, edx
call fcn.00451584
mov qword [rsp + 0x58], rax
test rax, rax
je 0x424c22
mov rax, qword [0x00bb5140]
test rax, rax
mov qword [rsp + 0x268], rsi
jne 0x4214df
call fcn.00451564
test rax, rax
je 0x424c3f
mov qword [0x00bb5140], rax
mov r8d, 0x100
mov rcx, rax
xor edx, edx
call fcn.00451584
test rax, rax
je 0x424c3f
mov r13, rax
mov rax, qword [rsp + 0x98]
lea rcx, [rax + 0x30]
mov qword [rsp + 0x188], rcx
add rax, 0xffffffffffffffe8
mov qword [rsp + 0xa8], rax
mov eax, 0x10
mov qword [rsp + 0x178], rax
xor r12d, r12d
xor ebp, ebp
jmp 0x421542
mov ebp, 1
mov r12, qword [rsp + 0x70]
cmp r12, rdi
jae 0x421b16
mov r8, rdi
sub r8, r12
lea r9, [r12 + r12*2]
mov rax, qword [rsp + 0x98]
lea rcx, [rax + r9*8]
cmp r8, 2
jae 0x4215af
mov rax, rdi
mov rsi, rax
sub rsi, r12
jb 0x424aaf
cmp rax, rdi
ja 0x424aaf
jae 0x4215d9
cmp r8, 0xa
jae 0x4215d9
lea rsi, [r12 + 0xa]
cmp rsi, rdi
cmovae rsi, rdi
mov qword [rsp + 0x70], rsi
sub rsi, r12
jb 0x424b43
cmp r8, 2
mov eax, 1
cmovb r8, rax
mov rdx, rsi
call fcn.004334d0
jmp 0x4215de
mov rax, qword [rcx]
mov rdx, qword [rcx + 0x18]
cmp rdx, rax
jae 0x4219eb
cmp r8, 2
jne 0x421a01
lea rax, [r12 + 2]
mov r8d, 2
jmp 0x421a71
mov qword [rsp + 0x70], rax
cmp rbp, qword [rsp + 0x178]
jne 0x42165a
mov rax, rbp
add rax, rbp
mov qword [rsp + 0x178], rax
mov rax, qword [0x00bb5140]
test rax, rax
jne 0x421617
call fcn.00451564
test rax, rax
je 0x424b0d
mov qword [0x00bb5140], rax
mov r8, rbp
shl r8, 5
mov rcx, rax
xor edx, edx
call fcn.00451584
test rax, rax
je 0x424b0d
mov r14, rax
mov r8, rbp
shl r8, 4
mov rcx, rax
mov rdx, r13
call fcn.00451d60
mov rcx, qword [0x00bb5140]
xor edx, edx
mov r8, r13
call fcn.0045158c
mov r13, r14
mov rax, rbp
shl rax, 4
mov qword [r13 + rax], rsi
mov qword [r13 + rax + 8], r12
inc rbp
cmp rbp, 2
jb 0x421534
mov qword [rsp + 0x310], r13
jmp 0x421707
mov rsi, r13
mov rdx, qword [rsp + 0x58]
mov rdi, qword [rsp + 0xb0]
sub rbp, rdx
mov rcx, rsi
mov r8, rbp
call fcn.00451d60
mov rax, qword [rsp + 0x160]
add rax, r14
mov qword [r12], rax
mov rax, qword [rsp + 0x168]
mov rcx, qword [rsp + 0x150]
mov qword [rcx], rax
lea rdx, [rdi + 0x10]
mov rax, qword [rsp + 0x80]
not rax
mov r8, qword [rsp + 0x158]
add r8, rax
shl r8, 4
mov rcx, rdi
call fcn.00451d58
mov rbp, qword [rsp + 0x48]
cmp rbp, 1
mov rdi, qword [rsp + 0x50]
mov r13, qword [rsp + 0x310]
jbe 0x42152f
lea r10, [rbp - 1]
mov rcx, r10
shl rcx, 4
mov rax, qword [r13 + rcx]
mov rcx, qword [r13 + rcx + 8]
add rcx, rax
cmp rcx, rdi
je 0x421771
mov rdx, rbp
shl rdx, 4
mov r8, qword [rdx + r13 - 0x20]
cmp r8, rax
jbe 0x421771
cmp rbp, 3
jb 0x421b02
lea r11, [rbp - 3]
mov rcx, r11
shl rcx, 4
mov rcx, qword [r13 + rcx]
lea r9, [r8 + rax]
cmp rcx, r9
jbe 0x421787
cmp rbp, 4
jb 0x421b0c
add r8, rcx
cmp qword [rdx + r13 - 0x40], r8
jbe 0x421787
jmp 0x421534
cmp rbp, 3
jb 0x42178c
lea r11, [rbp - 3]
mov rcx, r11
shl rcx, 4
mov rcx, qword [r13 + rcx]
cmp rcx, rax
jb 0x421790
lea r11, [rbp - 2]
cmp rbp, r11
jbe 0x42492e
lea rax, [r11 + 1]
cmp rbp, rax
jbe 0x42495e
mov r8, r11
shl r8, 4
mov rcx, qword [r13 + r8 + 8]
shl rax, 4
mov r9, qword [r13 + rax]
mov rdx, qword [r13 + rax + 8]
add rdx, r9
mov r14, rdx
sub r14, rcx
jb 0x4249ca
cmp rdx, rdi
ja 0x4249b1
mov qword [rsp + 0x158], rbp
mov qword [rsp + 0x160], r9
mov qword [rsp + 0x80], r11
mov qword [rsp + 0x48], r10
lea r9, [r8 + r13]
mov qword [rsp + 0xb0], r9
mov r12, qword [r13 + r8]
lea r8, [r13 + rax]
mov qword [rsp + 0x90], r8
lea rax, [r13 + rax + 8]
mov qword [rsp + 0x150], rax
mov qword [rsp + 0x168], rcx
lea rax, [rcx + rcx*2]
mov rcx, qword [rsp + 0x98]
lea rsi, [rcx + rax*8]
lea rax, [r12 + r12*2]
lea r13, [rsi + rax*8]
lea rax, [rdx + rdx*2]
mov qword [rsp + 0x190], rax
mov rdi, r14
sub rdi, r12
cmp rdi, r12
jae 0x421903
lea rax, [rdi*8]
lea rbp, [rax + rax*2]
mov r14, qword [rsp + 0x58]
mov rcx, r14
mov rdx, r13
mov r8, rbp
call fcn.00451d60
add rbp, r14
test r12, r12
mov r14, r12
jle 0x4219b3
test rdi, rdi
mov r12, qword [rsp + 0x90]
jle 0x421685
mov rax, qword [rsp + 0xa8]
mov rcx, qword [rsp + 0x190]
lea rax, [rax + rcx*8]
mov r8, qword [rsp + 0x58]
mov rdi, qword [rsp + 0xb0]
nop dword [rax + rax]
mov rcx, qword [rbp - 0x18]
cmp rcx, qword [r13 - 0x18]
jb 0x4218d3
add rbp, 0xffffffffffffffe8
mov rcx, rbp
jmp 0x4218da
add r13, 0xffffffffffffffe8
mov rcx, r13
mov rdx, qword [rcx + 0x10]
mov qword [rax + 0x10], rdx
movdqu xmm0, xmmword [rcx]
movdqu xmmword [rax], xmm0
cmp r13, rsi
jbe 0x4218f8
add rax, 0xffffffffffffffe8
cmp rbp, r8
ja 0x4218c0
mov rsi, r13
mov rdx, r8
jmp 0x421695
lea rax, [r12*8]
lea rbp, [rax + rax*2]
mov rdi, qword [rsp + 0x58]
mov rcx, rdi
mov rdx, rsi
mov r8, rbp
call fcn.00451d60
add rbp, rdi
test r12, r12
jle 0x4219d0
cmp r14, r12
mov r14, r12
jle 0x4219ae
mov rax, qword [rsp + 0x98]
mov rcx, qword [rsp + 0x190]
lea rax, [rax + rcx*8]
mov rdx, rdi
mov rcx, rdi
mov rdi, qword [rsp + 0xb0]
mov r12, qword [rsp + 0x90]
mov r8, qword [r13]
cmp r8, qword [rcx]
jae 0x421975
lea r8, [r13 + 0x18]
mov r9, rcx
mov rcx, r13
jmp 0x42197f
lea rdx, [rcx + 0x18]
mov r9, rdx
mov r8, r13
lea r10, [rsi + 0x18]
mov r11, qword [rcx + 0x10]
mov qword [rsi + 0x10], r11
movdqu xmm0, xmmword [rcx]
movdqu xmmword [rsi], xmm0
cmp r9, rbp
jae 0x4219a6
mov r13, r8
mov rcx, r9
mov rsi, r10
cmp r8, rax
jb 0x421960
mov rsi, r10
jmp 0x421695
mov rdx, rdi
jmp 0x4219bb
mov rsi, r13
mov rdx, qword [rsp + 0x58]
mov rdi, qword [rsp + 0xb0]
mov r12, qword [rsp + 0x90]
jmp 0x421695
mov rdx, rdi
mov rdi, qword [rsp + 0xb0]
mov r14, r12
mov r12, qword [rsp + 0x90]
jmp 0x421695
cmp r8, 2
jne 0x421a2f
lea rax, [r12 + 2]
mov r8d, 2
jmp 0x421561
mov r10, qword [rsp + 0x188]
lea r10, [r10 + r9*8]
mov r9d, 2
mov r11, rdx
mov rsi, r11
mov r11, qword [r10]
cmp r11, rsi
jae 0x421a5e
inc r9
add r10, 0x18
cmp r8, r9
jne 0x421a16
jmp 0x421a5b
mov r10, qword [rsp + 0x188]
lea r10, [r10 + r9*8]
mov r9d, 2
mov r11, rdx
mov rsi, r11
mov r11, qword [r10]
cmp r11, rsi
jb 0x421a5e
inc r9
add r10, 0x18
cmp r8, r9
jne 0x421a44
mov r9, r8
lea r10, [r9 + r12]
mov r8, r9
cmp rdx, rax
mov rax, r10
jae 0x421561
cmp rax, r12
jb 0x424b82
cmp rax, rdi
ja 0x424ba1
cmp r8, 2
jb 0x421561
mov r11, rax
mov rax, r8
shr rax, 1
lea rdx, [r12 + r8]
lea rdx, [rdx + rdx*2]
mov r9, qword [rsp + 0xa8]
lea rdx, [r9 + rdx*8]
mov r9, rcx
mov r10, qword [r9 + 0x10]
mov qword [rsp + 0x480], r10
movups xmm0, xmmword [r9]
movaps xmmword [rsp + 0x470], xmm0
mov r10, qword [rdx + 0x10]
mov qword [r9 + 0x10], r10
movups xmm0, xmmword [rdx]
movups xmmword [r9], xmm0
mov r10, qword [rsp + 0x480]
mov qword [rdx + 0x10], r10
movdqa xmm0, xmmword [rsp + 0x470]
movdqu xmmword [rdx], xmm0
add r9, 0x18
add rdx, 0xffffffffffffffe8
dec rax
jne 0x421aad
mov rax, r11
jmp 0x421561
mov ebp, 2
jmp 0x421534
mov ebp, 3
jmp 0x421534
mov rcx, qword [0x00bb5140]
xor edx, edx
mov r8, r13
call fcn.0045158c
mov rcx, qword [0x00bb5140]
xor edx, edx
mov r8, qword [rsp + 0x58]
call fcn.0045158c
mov esi, dword [rsp + 0xc0]
movdqu xmm0, xmmword [rsp + 0x220]
movdqa xmmword [rsp + 0x470], xmm0
mov r14, qword [rsp + 0x230]
mov qword [rsp + 0x480], r14
cmp qword [rsp + 0x470], r14
mov dword [rsp + 0xc0], esi
jbe 0x421bab
mov r8, qword [rsp + 0x478]
test r14, r14
je 0x421bb5
lea rax, [r14*8]
lea r12, [rax + rax*8]
mov rcx, qword [0x00bb5140]
xor edx, edx
mov r9, r12
call fcn.00451594
mov rsi, rax
test rax, rax
jne 0x421bc8
jmp 0x424acc
mov rsi, qword [rsp + 0x478]
jmp 0x421bc8
mov rcx, qword [0x00bb5140]
xor edx, edx
call fcn.0045158c
mov esi, 8
mov qword [rsp + 0x1a0], rsi
mov qword [rsp + 0x1a8], r14
mov r12, qword [rsp + 0xe0]
mov r13, qword [rsp + 0xe8]
mov rax, qword [rsp + 0xf0]
cmp r12, rax
mov qword [rsp + 0x190], rax
jbe 0x421c34
test rax, rax
je 0x421c3b
lea rax, [rax*8]
lea rbp, [rax + rax*2]
mov rcx, qword [0x00bb5140]
xor edx, edx
mov r8, r13
mov r9, rbp
call fcn.00451594
mov rcx, rax
mov qword [rsp + 0x48], rax
test rax, rax
jne 0x421c56
jmp 0x424ade
mov qword [rsp + 0x48], r13
jmp 0x421c56
mov rcx, qword [0x00bb5140]
xor edx, edx
mov r8, r13
call fcn.0045158c
mov eax, 8
mov qword [rsp + 0x48], rax
mov rdi, r14
shr rdi, 8
mov r12, r14
shr r12, 0x10
mov rbp, qword [rsp + 0x78]
mov r13, qword [rsp + 0x60]
shl r12, 0x10
movzx eax, dil
shl rax, 8
or rax, r12
movzx edi, r14b
or rdi, rax
mov rcx, qword [rsp + 0x148]
cmp qword [rcx], 0
je 0x421d08
test rsi, rsi
mov r14, qword [rsp + 0xb8]
je 0x421d8e
test rdi, rdi
je 0x421d5a
mov r13, r14
lea r14, [rsi + 0x38]
jmp 0x421cc9
add r14, 0x48
dec rdi
je 0x421d41
cmp qword [r14 - 0x30], 0
je 0x421cc0
mov r8, qword [r14 - 0x18]
test r8, r8
je 0x421cc0
cmp qword [r14 - 0x10], 0
je 0x421cee
mov rcx, qword [0x00bb5140]
xor edx, edx
call fcn.0045158c
cmp qword [r14], 0
je 0x421cc0
mov r8, qword [r14 - 8]
mov rcx, qword [0x00bb5140]
xor edx, edx
call fcn.0045158c
jmp 0x421cc0
mov qword [rcx + 8], rsi
mov qword [rcx + 0x10], rdi
mov rax, qword [rsp + 0x48]
mov qword [rcx + 0x18], rax
mov rax, qword [rsp + 0x190]
mov qword [rcx + 0x20], rax
mov qword [rcx], 1
mov rdi, qword [rsp + 0x68]
mov r14, qword [rsp + 0xb8]
mov rsi, rcx
jmp 0x41ff7d
mov rcx, qword [0x00bb5140]
xor edx, edx
mov r8, rsi
call fcn.0045158c
mov r14, r13
mov r13, qword [rsp + 0x60]
cmp qword [rsp + 0x190], 0
mov rdi, qword [rsp + 0x68]
mov rsi, qword [rsp + 0x148]
je 0x41ff7d
mov rcx, qword [0x00bb5140]
xor edx, edx
mov r8, qword [rsp + 0x48]
call fcn.0045158c
jmp 0x41ff7d
mov rdi, qword [rsp + 0x68]
mov rsi, qword [rsp + 0x148]
jmp 0x41ff7d
mov qword [rsp + 0x98], rdx
mov rax, qword [0x00bb5140]
test rax, rax
jne 0x421dc9
call fcn.00451564
test rax, rax
je 0x424c72
mov qword [0x00bb5140], rax
mov r8, qword [rsp + 0x98]
shr r8, 1
mov qword [rsp + 0x458], r8
shl r8, 5
mov rcx, rax
xor edx, edx
call fcn.00451584
mov qword [rsp + 0x50], rax
test rax, rax
je 0x424c72
mov rax, qword [0x00bb5140]
test rax, rax
jne 0x421e19
call fcn.00451564
test rax, rax
je 0x424c8c
mov qword [0x00bb5140], rax
mov r8d, 0x100
mov rcx, rax
xor edx, edx
call fcn.00451584
test rax, rax
je 0x424c8c
mov rbp, rax
mov rax, qword [rsp + 0x58]
lea rcx, [rax + 0x50]
mov qword [rsp + 0x268], rcx
add rax, 0xffffffffffffffe0
mov qword [rsp + 0x178], rax
mov eax, 0x10
mov qword [rsp + 0x170], rax
xor r13d, r13d
xor edi, edi
mov r14, qword [rsp + 0x98]
jmp 0x421e84
mov edi, 1
mov r13, qword [rsp + 0x140]
cmp r13, r14
jae 0x422479
mov rax, r14
sub rax, r13
mov rdx, r13
shl rdx, 5
mov rcx, qword [rsp + 0x58]
add rcx, rdx
cmp rax, 2
jae 0x421eab
mov r8, rax
lea rax, [r8 + r13]
jmp 0x421fd0
mov r9, qword [rcx + 0x30]
cmp r9, qword [rcx + 0x10]
jb 0x421ec0
mov r10, qword [rcx + 0x20]
ja 0x421efb
cmp r10, qword [rcx]
jae 0x421efb
mov r8d, 2
cmp rax, 3
jb 0x421f46
add rdx, qword [rsp + 0x268]
jmp 0x421ee2
inc r8
add rdx, 0x20
cmp rax, r8
je 0x421f43
mov r10, r9
mov r9, qword [rdx]
cmp r9, r10
jb 0x421ed6
ja 0x421f46
mov r10, qword [rdx - 0x30]
cmp qword [rdx - 0x10], r10
jb 0x421ed6
jmp 0x421f46
mov r8d, 2
cmp rax, 3
jb 0x421ea2
add rdx, qword [rsp + 0x268]
jmp 0x421f24
inc r8
add rdx, 0x20
mov r10, r11
cmp rax, r8
je 0x421e9f
mov r11, r9
mov r9, qword [rdx]
cmp r9, r11
jb 0x421ea2
mov r11, qword [rdx - 0x10]
ja 0x421f11
cmp r11, r10
jae 0x421f11
jmp 0x421ea2
mov r8, rax
mov rax, r8
add rax, r13
jb 0x424bb8
cmp rax, r14
ja 0x424bdd
cmp r8, 2
jb 0x421fd0
mov rdx, rax
mov rax, r8
shr rax, 1
mov r10, rdx
shl rdx, 5
add rdx, qword [rsp + 0x178]
mov r9, rcx
movups xmm0, xmmword [r9]
movups xmm1, xmmword [r9 + 0x10]
movaps xmmword [rsp + 0x480], xmm1
movaps xmmword [rsp + 0x470], xmm0
movups xmm0, xmmword [rdx]
movups xmm1, xmmword [rdx + 0x10]
movups xmmword [r9 + 0x10], xmm1
movups xmmword [r9], xmm0
movdqa xmm0, xmmword [rsp + 0x470]
movdqa xmm1, xmmword [rsp + 0x480]
movdqu xmmword [rdx + 0x10], xmm1
movdqu xmmword [rdx], xmm0
add r9, 0x20
add rdx, 0xffffffffffffffe0
dec rax
jne 0x421f7c
mov rax, r10
mov rsi, rax
sub rsi, r13
jb 0x424af0
cmp rax, r14
ja 0x424af0
jae 0x422028
cmp r8, 0xa
jae 0x422028
lea rsi, [r13 + 0xa]
cmp rsi, r14
cmovae rsi, r14
mov qword [rsp + 0x140], rsi
sub rsi, r13
jb 0x424b71
cmp r8, 2
mov eax, 1
cmovb r8, rax
mov rdx, rsi
lea r9, [rsp + 0x2d0]
call fcn.004331c0
jmp 0x422030
mov qword [rsp + 0x140], rax
cmp rdi, qword [rsp + 0x170]
jne 0x4220b2
lea rax, [rdi + rdi]
mov qword [rsp + 0x170], rax
mov rax, qword [0x00bb5140]
test rax, rax
jne 0x422067
call fcn.00451564
test rax, rax
je 0x424b54
mov qword [0x00bb5140], rax
mov r8, rdi
shl r8, 5
mov rcx, rax
xor edx, edx
call fcn.00451584
test rax, rax
je 0x424b54
mov r14, rax
mov r8, rdi
shl r8, 4
mov rcx, rax
mov rdx, rbp
call fcn.00451d60
mov rcx, qword [0x00bb5140]
xor edx, edx
mov r8, rbp
call fcn.0045158c
mov rbp, r14
mov r14, qword [rsp + 0x98]
mov rax, rdi
shl rax, 4
mov qword [rbp + rax], rsi
mov qword [rbp + rax + 8], r13
inc rdi
cmp rdi, 2
jb 0x421e73
mov qword [rsp + 0x310], rbp
jmp 0x42215d
mov r12, r10
mov r14, rsi
mov rbp, rax
mov rdx, r9
sub rbp, rdx
mov rcx, r14
mov r8, rbp
call fcn.00451d60
mov rax, qword [rsp + 0x158]
add rax, r12
mov rcx, qword [rsp + 0x150]
mov qword [rcx], rax
mov rax, qword [rsp + 0x160]
mov rcx, qword [rsp + 0xb0]
mov qword [rcx], rax
mov rcx, qword [rsp + 0x90]
lea rdx, [rcx + 0x10]
not r13
mov r8, qword [rsp + 0x168]
add r8, r13
shl r8, 4
call fcn.00451d58
cmp rdi, 1
mov rbp, qword [rsp + 0x310]
mov r14, qword [rsp + 0x98]
jbe 0x421e6e
mov r11, rdi
lea r10, [rdi - 1]
mov rcx, r10
shl rcx, 4
mov rax, qword [rbp + rcx]
mov rcx, qword [rbp + rcx + 8]
add rcx, rax
cmp rcx, r14
je 0x4221ca
mov rdx, r11
shl rdx, 4
mov r8, qword [rdx + rbp - 0x20]
cmp r8, rax
jbe 0x4221ca
cmp r11, 3
jb 0x42245d
lea rsi, [r11 - 3]
mov rcx, rsi
shl rcx, 4
mov rcx, qword [rbp + rcx]
lea r9, [r8 + rax]
cmp rcx, r9
jbe 0x4221e0
cmp r11, 4
jb 0x422467
add r8, rcx
cmp qword [rdx + rbp - 0x40], r8
jbe 0x4221e0
jmp 0x422471
cmp r11, 3
jb 0x4221e5
lea rsi, [r11 - 3]
mov rcx, rsi
shl rcx, 4
mov rcx, qword [rbp + rcx]
cmp rcx, rax
jb 0x4221e9
lea rsi, [r11 - 2]
cmp r11, rsi
jbe 0x4249e8
mov qword [rsp + 0x48], r10
lea rax, [rsi + 1]
cmp r11, rax
jbe 0x424a18
mov rdx, rsi
shl rdx, 4
mov rcx, qword [rbp + rdx + 8]
shl rax, 4
mov r8, qword [rbp + rax]
mov r12, qword [rbp + rax + 8]
add r12, r8
mov rdi, r12
sub rdi, rcx
jb 0x424a87
mov qword [rsp + 0x80], rsi
cmp r12, r14
ja 0x424a6b
mov qword [rsp + 0x158], r8
mov qword [rsp + 0x168], r11
lea r8, [rdx + rbp]
mov qword [rsp + 0x90], r8
mov r8, qword [rbp + rdx]
lea rdx, [rbp + rax]
mov qword [rsp + 0x150], rdx
lea rax, [rbp + rax + 8]
mov qword [rsp + 0xb0], rax
mov qword [rsp + 0x160], rcx
mov r14, rcx
shl r14, 5
add r14, qword [rsp + 0x58]
mov rbp, r8
shl rbp, 5
lea rsi, [r14 + rbp]
shl r12, 5
mov r13, rdi
sub r13, r8
mov qword [rsp + 0x148], r8
cmp r13, r8
jae 0x422374
mov rbp, r13
shl rbp, 5
mov rdi, qword [rsp + 0x50]
mov rcx, rdi
mov rdx, rsi
mov r8, rbp
call fcn.00451d60
add rbp, rdi
mov r10, qword [rsp + 0x148]
test r10, r10
jle 0x422440
test r13, r13
mov rdi, qword [rsp + 0x48]
jle 0x422428
add r12, qword [rsp + 0x178]
mov r9, qword [rsp + 0x50]
mov r13, qword [rsp + 0x80]
nop word cs:[rax + rax]
lea rcx, [rsi - 0x20]
mov rdx, qword [rbp - 0x10]
mov r8, qword [rsi - 0x10]
cmp rdx, r8
jb 0x422336
lea rax, [rbp - 0x20]
cmp rdx, r8
ja 0x42236f
mov r8, qword [rcx]
mov rdx, rax
cmp qword [rbp - 0x20], r8
jae 0x42233f
mov rax, rbp
mov rsi, rcx
mov rdx, rcx
movdqu xmm0, xmmword [rdx]
movdqu xmm1, xmmword [rdx + 0x10]
movdqu xmmword [r12 + 0x10], xmm1
movdqu xmmword [r12], xmm0
cmp rsi, r14
jbe 0x4220dd
add r12, 0xffffffffffffffe0
mov rbp, rax
cmp rax, r9
ja 0x422310
jmp 0x4220dd
mov rdx, rax
jmp 0x42233f
mov r13, qword [rsp + 0x50]
mov rcx, r13
mov rdx, r14
mov r8, rbp
call fcn.00451d60
add rbp, r13
mov r10, qword [rsp + 0x148]
test r10, r10
jle 0x422420
cmp rdi, r10
jle 0x422420
add r12, qword [rsp + 0x58]
mov rdx, r13
mov rax, r13
mov rdi, qword [rsp + 0x48]
mov r13, qword [rsp + 0x80]
nop dword [rax]
mov rcx, qword [rax + 0x10]
cmp qword [rsi + 0x10], rcx
jb 0x4223d4
ja 0x4223e0
mov rcx, qword [rax]
cmp qword [rsi], rcx
jae 0x4223e0
lea rcx, [rsi + 0x20]
mov r8, rax
mov rax, rsi
jmp 0x4223ea
lea rdx, [rax + 0x20]
mov r8, rdx
mov rcx, rsi
lea r9, [r14 + 0x20]
movdqu xmm0, xmmword [rax]
movdqu xmm1, xmmword [rax + 0x10]
movdqu xmmword [r14 + 0x10], xmm1
movdqu xmmword [r14], xmm0
cmp r8, rbp
jae 0x422415
mov rsi, rcx
mov rax, r8
mov r14, r9
cmp rcx, r12
jb 0x4223c0
mov r12, r10
mov r14, r9
jmp 0x4220e9
mov r12, r10
mov rdx, r13
jmp 0x42244b
mov r12, r10
mov r14, rsi
mov rdx, qword [rsp + 0x50]
mov r13, qword [rsp + 0x80]
jmp 0x4220e9
mov r12, r10
mov r14, rsi
mov rdx, qword [rsp + 0x50]
mov rdi, qword [rsp + 0x48]
mov r13, qword [rsp + 0x80]
jmp 0x4220e9
mov edi, 2
jmp 0x421e73
mov edi, 3
jmp 0x421e73
mov rdi, r11
jmp 0x421e73
mov rcx, qword [0x00bb5140]
xor edx, edx
mov r8, rbp
call fcn.0045158c
mov rcx, qword [0x00bb5140]
xor edx, edx
mov r8, qword [rsp + 0x50]
call fcn.0045158c
mov r12, qword [rsp + 0xe0]
mov r14, qword [rsp + 0xe8]
mov rbp, qword [rsp + 0xf0]
cmp r12, rbp
jbe 0x4224ec
test rbp, rbp
je 0x422522
lea rax, [rbp*8]
lea r13, [rax + rax*4]
mov rcx, qword [0x00bb5140]
xor edx, edx
mov r8, r14
mov r9, r13
call fcn.00451594
mov rsi, rax
test rax, rax
jne 0x422538
jmp 0x424ca6
mov rsi, r14
jmp 0x422538
movzx edi, byte [rsp + 0x471]
mov eax, dword [rsp + 0x472]
movzx r12d, word [rsp + 0x476]
shl r12, 0x20
or r12, rax
mov rax, qword [rsp + 0x478]
mov qword [rsp + 0x48], rax
jmp 0x420d6d
mov rcx, qword [0x00bb5140]
xor edx, edx
mov r8, r14
call fcn.0045158c
mov esi, 8
mov r12, qword [rsp + 0x1a0]
mov r14, qword [rsp + 0x1a8]
mov rdi, qword [rsp + 0x1b0]
cmp r12, rdi
mov qword [rsp + 0x140], rbp
jbe 0x422587
test rdi, rdi
je 0x42258c
mov r13, rdi
shl r13, 5
mov rcx, qword [0x00bb5140]
xor edx, edx
mov r8, r14
mov r9, r13
call fcn.00451594
test rax, rax
jne 0x4225a2
jmp 0x424cb5
mov rax, r14
jmp 0x4225a2
mov rcx, qword [0x00bb5140]
xor edx, edx
mov r8, r14
call fcn.0045158c
mov eax, 8
mov qword [rsp + 0x170], rax
movq xmm0, qword [rsp + 0x188]
movq xmm6, rdi
punpcklqdq xmm6, xmm0
mov r8, qword [rsp + 0xa8]
cmp qword [r8], 0
je 0x422644
cmp qword [rsp + 0x140], 0
je 0x4225e6
mov rcx, qword [0x00bb5140]
xor edx, edx
mov r8, rsi
call fcn.0045158c
movq rax, xmm6
test rax, rax
je 0x422606
mov rcx, qword [0x00bb5140]
xor edx, edx
mov r8, qword [rsp + 0x170]
call fcn.0045158c
mov rdi, qword [rsp + 0x68]
mov rbp, qword [rsp + 0x78]
mov r14, qword [rsp + 0xb8]
mov r13, qword [rsp + 0x60]
mov r8, qword [rsp + 0xa8]
cmp qword [r8 + 0x18], 0
jne 0x420f3a
cmp byte [r8 + 8], 0x4b
jne 0x42283c
mov r8, qword [r8 + 0x10]
jmp 0x4209be
mov r14, qword [rsp + 0x460]
mov rdi, r14
shr rdi, 8
mov r12, r14
shr r12, 0x10
mov rbp, qword [rsp + 0x78]
mov r13, qword [rsp + 0x60]
jmp 0x420ed6
mov byte [rsp + 0x2d6], 0
mov word [rsp + 0x2d4], 0
mov dword [rsp + 0x2d0], 0
mov qword [rsp + 0x2d7], rcx
mov rax, qword [rsp + 0x2d0]
lea rdx, [rsp + 0x2d8]
mov ecx, dword [rdx]
mov edx, dword [rdx + 3]
mov dword [rsp + 0x278], ecx
mov dword [rsp + 0x27b], edx
mov qword [rsp + 0x298], rax
mov eax, dword [rsp + 0x278]
mov ecx, dword [rsp + 0x27b]
lea rdx, [rsp + 0x2a0]
mov dword [rdx + 3], ecx
mov dword [rdx], eax
jmp 0x4226fb
mov dword [rsp + 0x298], 0
mov byte [rsp + 0x29e], 0
mov word [rsp + 0x29c], 0
mov qword [rsp + 0x29f], rcx
movzx eax, byte [rsp + 0x29e]
shl eax, 0x10
movzx ecx, word [rsp + 0x29c]
or ecx, eax
mov eax, dword [rsp + 0x298]
mov rdx, qword [rsp + 0x29f]
mov qword [rsp + 0x48], rdx
shl rcx, 0x28
shl rax, 8
lea r14, [rcx + rax]
add r14, 0x13
jmp 0x420ea1
mov qword [rsp + 0x48], r11
mov r12d, 0x13
mov r14b, 0x13
xor edi, edi
mov r13, r9
shr r12, 0x10
jmp 0x420d72
mov r12, r14
mov r13, qword [rsp + 0x60]
shr r12, 0x10
jmp 0x420d72
mov qword [rsp + 0x470], r9
mov qword [rsp + 0x478], r11
mov dword [rsp + 0x480], ebp
mov dword [rsp + 0x484], r8d
mov qword [rsp + 0x488], rax
mov qword [rsp + 0x490], rdi
mov qword [rsp + 0x498], r13
mov dword [rsp + 0x4a0], ecx
mov eax, dword [rsp + 0xc0]
mov dword [rsp + 0x4a4], eax
mov qword [rsp + 0x4a8], r14
mov qword [rsp + 0x4b0], r15
mov qword [rsp + 0x4b8], rdx
mov qword [rsp + 0x4c0], r12
lea rcx, [rsp + 0x340]
lea rdx, [rsp + 0x470]
call fcn.00432d80
mov rdi, qword [rsp + 0x68]
mov rsi, qword [rsp + 0x360]
cmp rsi, 1
jbe 0x422935
mov eax, dword [rsp + 0x4a0]
add eax, 0xfffffffd
cmp eax, 2
jb 0x42282e
cmp qword [rsp + 0x470], 0
je 0x42282e
mov r8, qword [rsp + 0x488]
mov rcx, qword [0x00bb5140]
xor edx, edx
call fcn.0045158c
cmp esi, 2
mov rbp, qword [rsp + 0x78]
jb 0x42341b
mov rdx, qword [rbp + 0xe8]
test rdx, rdx
je 0x42341b
mov rax, qword [rbp + 0xe0]
xor r9d, r9d
mov r8d, 0xff
mov rcx, rdx
mov r10, rdx
jmp 0x422878
mov r10, rcx
sub rcx, r9
jbe 0x4228b5
shr rcx, 1
add rcx, r9
mov rsi, rcx
shl rsi, 4
xor r11d, r11d
cmp qword [rax + rsi], rbx
setne r11b
cmovb r11d, r8d
cmp r11b, 1
je 0x422870
movzx r9d, r11b
cmp r9d, 0xff
jne 0x4228c2
inc rcx
mov r9, rcx
mov rcx, r10
sub rcx, r9
ja 0x422878
sub r9, 1
mov rcx, r9
jb 0x42341b
cmp rcx, rdx
jae 0x423892
shl rcx, 4
mov rax, qword [rax + rcx + 8]
cmp byte [rax], 0
je 0x422a83
cmp byte [rax], 0
je 0x422b1b
cmp byte [rax + 1], 0
je 0x422f8b
cmp byte [rax + 2], 0
je 0x4230f6
cmp byte [rax + 3], 0
je 0x42330c
cmp byte [rax + 4], 0
je 0x423322
cmp byte [rax + 5], 0
je 0x4233ad
cmp byte [rax + 6], 0
je 0x4233e2
cmp byte [rax + 7], 1
mov r9d, 8
sbb r9, 0
jmp 0x4233e8
cmp word [rsp + 0x380], 2
jne 0x4229da
mov r14, qword [rsp + 0x78]
mov rdx, qword [r14 + 0xe8]
test rdx, rdx
je 0x422b3f
mov rax, qword [r14 + 0xe0]
xor r9d, r9d
mov r8d, 0xff
mov rcx, rdx
mov r10, rdx
jmp 0x422988
mov r10, rcx
sub rcx, r9
jbe 0x4229c5
shr rcx, 1
add rcx, r9
mov rdi, rcx
shl rdi, 4
xor r11d, r11d
cmp qword [rax + rdi], rbx
setne r11b
cmovb r11d, r8d
cmp r11b, 1
je 0x422980
movzx r9d, r11b
cmp r9d, 0xff
jne 0x422a0b
inc rcx
mov r9, rcx
mov rcx, r10
sub rcx, r9
ja 0x422988
sub r9, 1
mov rcx, r9
jae 0x422a0b
xor edx, edx
mov rdi, qword [rsp + 0x68]
jmp 0x422b41
mov rdx, qword [rsp + 0x370]
mov r8, qword [rsp + 0x378]
jmp 0x422b41
mov qword [0x00bb50a8], rbp
mov qword [0x00bb50a0], r14
test rsi, rsi
jne 0x41fdcf
jmp 0x41fde5
cmp rcx, rdx
mov rdi, qword [rsp + 0x68]
jae 0x424835
shl rcx, 4
mov rdx, qword [rax + rcx + 8]
cmp byte [rdx], 0
je 0x422b23
cmp byte [rdx], 0
je 0x422f96
cmp byte [rdx + 1], 0
je 0x423101
cmp byte [rdx + 2], 0
je 0x423317
cmp byte [rdx + 3], 0
je 0x42335a
cmp byte [rdx + 4], 0
je 0x4233b5
cmp byte [rdx + 5], 0
je 0x42353f
cmp byte [rdx + 6], 0
je 0x423656
cmp byte [rdx + 7], 1
mov r8d, 8
sbb r8, 0
jmp 0x422b41
mov rdx, qword [rbp + 0x98]
test rdx, rdx
je 0x42341b
mov eax, dword [rax + 4]
add rax, qword [rbp + 0xa8]
jb 0x42341b
mov r8, qword [rbp + 0xb0]
mov rcx, r8
sub rcx, rax
setb r9b
cmp r8, qword [rbp + 0xa0]
seta r8b
or r8b, r9b
add rdx, rax
xor eax, eax
test r8b, r8b
cmove rax, rdx
jne 0x42341b
test rcx, rcx
je 0x42341b
cmp rcx, 0x40
mov r9d, 0x40
cmovb r9, rcx
lea rdx, [rax + rcx]
cmp rcx, 0xf
ja 0x42332d
xor r9d, r9d
cmp byte [rax + r9], 0
je 0x42334c
lea r8, [rax + r9]
inc r8
inc r9
cmp r8, rdx
jb 0x422afc
jmp 0x42341b
xor r9d, r9d
jmp 0x4233e8
mov rax, qword [r14 + 0x98]
test rax, rax
je 0x422b3f
mov edx, dword [rdx + 4]
add rdx, qword [r14 + 0xa8]
jae 0x423292
xor edx, edx
movdqu xmm0, xmmword [rsp + 0x340]
movdqu xmm1, xmmword [rsp + 0x350]
movdqa xmmword [rsp + 0x1b0], xmm1
movdqa xmmword [rsp + 0x1a0], xmm0
mov qword [rsp + 0x1c0], rdx
mov qword [rsp + 0x1c8], r8
mov qword [rsp + 0x1d0], rbx
lea rdx, [rsp + 0x1a0]
mov rcx, rdi
call fcn.0042a420
lea r14, [rsp + 0x340]
lea r15, [rsp + 0x470]
xor r13d, r13d
mov ebp, 0xff
pxor xmm6, xmm6
lea r12, [rsp + 0x1a0]
jmp 0x422c17
mov r8, qword [rsp + 0x370]
mov rdx, qword [rsp + 0x378]
movdqu xmm0, xmmword [rsp + 0x340]
movdqu xmm1, xmmword [rsp + 0x350]
movdqa xmmword [rsp + 0x1b0], xmm1
movdqa xmmword [rsp + 0x1a0], xmm0
mov qword [rsp + 0x1c0], r8
mov qword [rsp + 0x1c8], rdx
mov qword [rsp + 0x1d0], rbx
mov rcx, rdi
mov rdx, r12
call fcn.0042a420
mov rcx, r14
mov rdx, r15
call fcn.00432d80
cmp dword [rsp + 0x360], 2
jae 0x4227fe
cmp word [rsp + 0x380], 2
jne 0x422bc0
mov rax, qword [rsp + 0x78]
mov rdx, qword [rax + 0xe8]
test rdx, rdx
je 0x422d50
mov rax, qword [rax + 0xe0]
mov rcx, rdx
xor r9d, r9d
mov r8, rdx
jmp 0x422c78
mov r8, rcx
sub rcx, r9
jbe 0x422cb5
shr rcx, 1
add rcx, r9
mov r11, rcx
shl r11, 4
xor r10d, r10d
cmp qword [rax + r11], rbx
setne r10b
cmovb r10d, ebp
cmp r10b, 1
je 0x422c70
movzx r9d, r10b
cmp r9d, 0xff
jne 0x422cc2
inc rcx
mov r9, rcx
mov rcx, r8
sub rcx, r9
ja 0x422c78
sub r9, 1
mov rcx, r9
jb 0x422d50
cmp rcx, rdx
jae 0x42354a
shl rcx, 4
mov r8, qword [rax + rcx + 8]
cmp byte [r8], 0
je 0x422d31
cmp byte [r8], 0
je 0x422d58
cmp byte [r8 + 1], 0
je 0x422d5f
cmp byte [r8 + 2], 0
je 0x422dda
cmp byte [r8 + 3], 0
je 0x422de4
cmp byte [r8 + 4], 0
je 0x422dee
cmp byte [r8 + 5], 0
je 0x422e1e
cmp byte [r8 + 6], 0
je 0x422e28
cmp byte [r8 + 7], 1
mov edx, 8
sbb rdx, 0
jmp 0x422bd0
mov r10, qword [rsp + 0x78]
mov rax, qword [r10 + 0x98]
test rax, rax
je 0x422d50
mov edx, dword [r8 + 4]
add rdx, qword [r10 + 0xa8]
jae 0x422d69
nop
xor r8d, r8d
jmp 0x422bd0
xor edx, edx
jmp 0x422bd0
mov edx, 1
jmp 0x422bd0
mov r8, qword [r10 + 0xb0]
mov rcx, r8
sub rcx, rdx
setb r9b
cmp r8, qword [r10 + 0xa0]
seta r8b
or r8b, r9b
add rax, rdx
test r8b, r8b
cmovne rax, r13
jne 0x422d50
mov r8d, 0
test rcx, rcx
je 0x422bd0
cmp rcx, 0x40
mov edx, 0x40
cmovb rdx, rcx
lea r8, [rax + rcx]
cmp rcx, 0xf
ja 0x422df8
xor edx, edx
nop dword [rax]
cmp byte [rax + rdx], 0
je 0x422e0f
lea r9, [rax + rdx]
inc r9
inc rdx
cmp r9, r8
jb 0x422dc0
jmp 0x422d50
mov edx, 2
jmp 0x422bd0
mov edx, 3
jmp 0x422bd0
mov edx, 4
jmp 0x422bd0
movdqu xmm0, xmmword [rax]
pcmpeqb xmm0, xmm6
pmovmskb r9d, xmm0
test r9d, r9d
je 0x422e32
tzcnt edx, r9d
cmp rdx, rcx
cmova rax, r13
mov r8, rax
jmp 0x422bd0
mov edx, 5
jmp 0x422bd0
mov edx, 6
jmp 0x422bd0
mov r10, rax
and r10, 0xfffffffffffffff0
add r10, 0x10
cmp rcx, 0x40
jb 0x422eb5
lea r11, [r8 - 0x40]
cmp r10, r11
ja 0x422eb5
mov r10d, eax
and r10d, 0xf
mov r9d, 0x40
sub r9, r10
movdqa xmm3, xmmword [rax + r9 - 0x30]
pcmpeqb xmm3, xmm6
movdqa xmm2, xmmword [rax + r9 - 0x20]
pcmpeqb xmm2, xmm6
movdqa xmm1, xmmword [rax + r9 - 0x10]
pcmpeqb xmm1, xmm6
movdqa xmm0, xmmword [rax + r9]
pcmpeqb xmm0, xmm6
movdqa xmm4, xmm2
por xmm4, xmm3
movdqa xmm5, xmm1
por xmm5, xmm0
por xmm5, xmm4
pmovmskb r10d, xmm5
test r10d, r10d
jne 0x422f10
add r9, rdx
lea r10, [rax + r9]
add r10, 0xffffffffffffffd0
cmp r10, r11
jbe 0x422e5c
lea r9, [r8 - 0x10]
cmp r10, r9
ja 0x422ee2
mov r11, r10
sub r11, rax
movdqu xmm0, xmmword [r10]
pcmpeqb xmm0, xmm6
pmovmskb edx, xmm0
test edx, edx
jne 0x422f28
add r10, 0x10
add r11, 0x10
cmp r10, r9
jbe 0x422ec4
cmp r10, r8
jae 0x422d50
movdqu xmm0, xmmword [r8 - 0x10]
pcmpeqb xmm0, xmm6
pmovmskb edx, xmm0
test edx, edx
je 0x422d50
sub r9, rax
tzcnt edx, edx
add rdx, r9
jmp 0x422e0f
pmovmskb edx, xmm3
test edx, edx
je 0x422f34
tzcnt edx, edx
add rdx, r9
add rdx, 0xffffffffffffffd0
jmp 0x422e0f
tzcnt edx, edx
add rdx, r11
jmp 0x422e0f
pmovmskb edx, xmm2
test edx, edx
je 0x422f4c
tzcnt edx, edx
add rdx, r9
add rdx, 0xffffffffffffffe0
jmp 0x422e0f
pmovmskb edx, xmm1
test edx, edx
je 0x422f64
tzcnt edx, edx
add rdx, r9
add rdx, 0xfffffffffffffff0
jmp 0x422e0f
psllw xmm0, 7
pmovmskb edx, xmm0
test edx, edx
je 0x422f77
tzcnt edx, edx
jmp 0x422f7c
mov edx, 0x20
mov edx, edx
add rdx, r9
mov rdi, qword [rsp + 0x68]
jmp 0x422e0f
mov r9d, 1
jmp 0x4233e8
xor r8d, r8d
jmp 0x422b41
add rcx, 0x88
mov r8, rbp
sub r8, rcx
jb 0x41fc08
add rdx, 0xffffffffffffff90
cmp r8, rdx
jb 0x41fc08
mov r8d, dword [rax + 0x84]
shl r8, 3
cmp r8, rdx
ja 0x41fc08
add rdx, rcx
movzx ecx, word [rax + 6]
lea r8, [rcx*8]
lea r8, [r8 + r8*4]
mov r9, rbp
sub r9, rdx
setb r10b
add rdx, rbx
cmp r9, r8
setb r8b
or r8b, r10b
lea r10, [0x00bac8e0]
cmove r10, rdx
mov edx, 0x1f
cmove rdx, rcx
jne 0x41fc08
mov ecx, dword [rax + 0xc]
test rcx, rcx
mov qword [rsp + 0x88], rdx
je 0x42376c
mov r11d, dword [rax + 0x10]
lea rdx, [r11 + r11]
lea rdx, [rdx + rdx*8]
mov r8, rbp
sub r8, rcx
lea r15, [rbx + rcx]
xor r9d, r9d
cmp r8, rdx
cmovb r15, r9
cmp rbp, rcx
cmovb r15, r9
mov r8, rdx
test r15, r15
cmove r8, r15
je 0x41fc08
cmp rdx, rdx
ja 0x41fc08
add r8, rcx
mov rcx, rbp
sub rcx, r8
jb 0x41fc08
cmp rcx, 4
jb 0x41fc08
mov qword [rsp + 0x78], r10
mov ecx, dword [rbx + r8]
mov qword [rsp + 0xc0], r8
add rcx, r8
mov qword [rsp + 0xd0], rcx
mov rax, qword [rax + 0x30]
mov qword [rsp + 0x180], rax
mov qword [rsp + 0x470], 0
mov qword [rsp + 0x478], 8
mov qword [rsp + 0x480], 0
test r11, r11
je 0x423866
mov ecx, 8
xor edx, edx
xor edi, edi
mov r10, qword [rsp + 0x88]
mov qword [rsp + 0x198], r11
jmp 0x4235bd
mov r9d, 2
jmp 0x4233e8
mov r8d, 1
jmp 0x422b41
mov qword [rsp + 0xb8], r14
mov qword [rsp + 0x470], 0
mov qword [rsp + 0x478], 8
mov qword [rsp + 0x480], 0
mov r14, qword [r8 + 0x28]
test r14, r14
je 0x423365
mov rsi, qword [r8 + 0x20]
mov rax, qword [r8 + 0x10]
mov qword [rsp + 0xc8], rax
mov r12, r8
mov rax, qword [r8 + 0x18]
mov qword [rsp + 0xa0], rax
mov eax, 8
mov qword [rsp + 0x88], rax
xor r8d, r8d
lea r11, [rsp + 0x470]
mov r15, r14
xor ecx, ecx
mov rax, r14
jmp 0x423195
mov rax, r15
mov r15, rax
sub r15, rcx
jbe 0x42336b
shr r15, 1
add r15, rcx
mov rdx, r15
shl rdx, 5
lea r9, [rsi + rdx]
cmp qword [rsi + rdx + 0x10], r8
ja 0x423186
jb 0x4231bd
cmp qword [r9], rbx
ja 0x423186
mov r10, rbx
cmp qword [r9 + 8], rbx
ja 0x4231d0
inc r15
mov rcx, r15
mov r15, rax
sub r15, rcx
ja 0x423195
jmp 0x42336b
mov rcx, qword [rsi + rdx + 0x18]
mov rax, rcx
mov qword [rsp + 0xd8], rcx
cmp rcx, qword [rsp + 0xa0]
jae 0x4248fa
cmp r8, qword [rsp + 0x470]
jne 0x423223
mov rcx, r11
mov rdx, r8
call fcn.0041bde0
mov rax, qword [rsp + 0x478]
mov qword [rsp + 0x88], rax
mov r8, qword [rsp + 0x480]
lea r11, [rsp + 0x470]
mov rax, qword [rsp + 0xd8]
lea rax, [rax + rax*4]
mov rcx, qword [rsp + 0xc8]
lea rax, [rcx + rax*8]
mov rcx, qword [rsp + 0x88]
mov qword [rcx + r8*8], rax
mov r8, qword [rsp + 0x480]
inc r8
mov qword [rsp + 0x480], r8
inc r15
mov rax, r15
shl rax, 5
add rsi, rax
sub r14, r15
jne 0x42317c
jmp 0x42336b
mov ecx, 4
mov eax, dword [rsp + 0xc0]
mov r8d, eax
mov rax, r14
mov r11, r13
mov r9, rdi
jmp 0x422766
mov r8, qword [r14 + 0xb0]
mov rcx, r8
sub rcx, rdx
setb r9b
cmp r8, qword [r14 + 0xa0]
seta r8b
or r8b, r9b
add rax, rdx
xor edx, edx
test r8b, r8b
cmovne rax, rdx
jne 0x422b41
test rcx, rcx
je 0x422b41
cmp rcx, 0x40
mov r8d, 0x40
cmovb r8, rcx
lea r9, [rax + rcx]
cmp rcx, 0xf
ja 0x4233c0
xor edx, edx
xor r8d, r8d
cmp byte [rax + r8], 0
je 0x424873
lea r10, [rax + r8]
inc r10
inc r8
cmp r10, r9
jb 0x4232ed
jmp 0x422b41
mov r9d, 3
jmp 0x4233e8
mov r8d, 2
jmp 0x422b41
mov r9d, 4
jmp 0x4233e8
movdqu xmm0, xmmword [rax]
pxor xmm1, xmm1
pcmpeqb xmm1, xmm0
pmovmskb r8d, xmm1
test r8d, r8d
je 0x42343f
tzcnt r9d, r8d
cmp r9, rcx
jbe 0x4233e8
jmp 0x42341b
mov r8d, 3
jmp 0x422b41
mov r12, r8
xor r8d, r8d
mov r9, qword [rsp + 0x470]
mov rax, qword [rsp + 0x478]
lea r8, [rax + r8*8]
mov rcx, qword [rsp + 0x78]
mov rdx, qword [rcx + 0x90]
add rdx, 0x10
mov ecx, ebp
mov ebp, r8d
shr r8, 0x20
mov r11, rax
mov r14, qword [rsp + 0xb8]
mov r15, qword [rsp + 0x60]
jmp 0x422766
mov r9d, 5
jmp 0x4233e8
mov r8d, 4
jmp 0x422b41
movdqu xmm0, xmmword [rax]
pxor xmm1, xmm1
pcmpeqb xmm1, xmm0
pmovmskb edx, xmm1
test edx, edx
je 0x423661
tzcnt r8d, edx
jmp 0x424873
mov r9d, 6
mov dword [rsp + 0x480], 3
mov qword [rsp + 0x488], rax
mov qword [rsp + 0x490], r9
mov qword [rsp + 0x498], rbx
lea rdx, [rsp + 0x470]
mov rcx, rdi
call fcn.0042a420
movaps xmm6, xmmword [rsp + 0x8b0]
movaps xmm7, xmmword [rsp + 0x8c0]
add rsp, 0x8d8
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
mov r10, rax
and r10, 0xfffffffffffffff0
add r10, 0x10
cmp rcx, 0x40
jb 0x4234d6
lea r11, [rdx - 0x40]
cmp r10, r11
ja 0x4234d6
mov r10d, eax
and r10d, 0xf
mov r8d, 0x40
sub r8, r10
pxor xmm2, xmm2
movdqa xmm4, xmmword [rax + r8 - 0x30]
movdqa xmm3, xmmword [rax + r8 - 0x20]
movdqa xmm1, xmmword [rax + r8 - 0x10]
movdqa xmm0, xmmword [rax + r8]
movdqa xmm5, xmm4
pcmpeqb xmm5, xmm2
movdqa xmm6, xmm3
pcmpeqb xmm6, xmm2
por xmm6, xmm5
movdqa xmm5, xmm1
pcmpeqb xmm5, xmm2
movdqa xmm7, xmm0
pcmpeqb xmm7, xmm2
por xmm7, xmm5
por xmm7, xmm6
pmovmskb r10d, xmm7
test r10d, r10d
jne 0x4237b0
add r8, r9
lea r10, [rax + r8]
add r10, 0xffffffffffffffd0
cmp r10, r11
jbe 0x423471
lea r8, [rdx - 0x10]
cmp r10, r8
ja 0x42350d
mov r11, r10
sub r11, rax
pxor xmm0, xmm0
movdqu xmm1, xmmword [r10]
pcmpeqb xmm1, xmm0
pmovmskb r9d, xmm1
test r9d, r9d
jne 0x4237d1
add r10, 0x10
add r11, 0x10
cmp r10, r8
jbe 0x4234e9
cmp r10, rdx
jae 0x42341b
movdqu xmm0, xmmword [rdx - 0x10]
pxor xmm1, xmm1
pcmpeqb xmm1, xmm0
pmovmskb edx, xmm1
test edx, edx
je 0x42341b
sub r8, rax
tzcnt r9d, edx
add r9, r8
jmp 0x42334c
mov r8d, 5
jmp 0x422b41
lea r8, [0x00bac1d0]
call fcn.0040f0c0
jmp 0x424cde
add rsi, qword [rsp + 0x180]
mov rax, qword [rsp + 0xd8]
add rax, rsi
shl rdx, 4
mov qword [rcx + rdx], rax
mov rax, qword [rsp + 0xc8]
mov qword [rcx + rdx + 8], rax
mov rdx, qword [rsp + 0x480]
inc rdx
mov qword [rsp + 0x480], rdx
mov r10, qword [rsp + 0x88]
mov r11, qword [rsp + 0x198]
mov rsi, qword [rsp + 0xa0]
add rdi, rsi
inc rdi
cmp rdi, r11
jae 0x4238a0
cmp rdi, r11
jae 0x42384a
lea r8, [rdi + rdi*8]
movzx esi, byte [r15 + r8*2 + 0x11]
movzx eax, word [r15 + r8*2 + 0xc]
test rax, rax
je 0x4235ae
movzx r9d, word [r15 + r8*2 + 0xe]
and r9d, 0x30
cmp r9w, 0x20
jne 0x4235ae
mov qword [rsp + 0xa0], rsi
dec rax
cmp rax, r10
jae 0x42384a
lea r8, [r15 + r8*2]
mov qword [rsp + 0xc8], r8
mov esi, dword [r8 + 8]
lea rax, [rax + rax*4]
mov r8, qword [rsp + 0x78]
mov eax, dword [r8 + rax*8 + 0xc]
mov qword [rsp + 0xd8], rax
cmp rdx, qword [rsp + 0x470]
jne 0x42355b
lea rcx, [rsp + 0x470]
call fcn.0041bb60
mov rcx, qword [rsp + 0x478]
mov rdx, qword [rsp + 0x480]
jmp 0x42355b
mov r8d, 6
jmp 0x422b41
mov r10, rax
and r10, 0xfffffffffffffff0
add r10, 0x10
cmp rcx, 0x40
jb 0x4236ef
lea r11, [r9 - 0x40]
cmp r10, r11
ja 0x4236ef
mov r10d, eax
and r10d, 0xf
mov edx, 0x40
sub rdx, r10
pxor xmm2, xmm2
movdqa xmm4, xmmword [rax + rdx - 0x30]
movdqa xmm3, xmmword [rax + rdx - 0x20]
movdqa xmm1, xmmword [rax + rdx - 0x10]
movdqa xmm0, xmmword [rax + rdx]
movdqa xmm5, xmm4
pcmpeqb xmm5, xmm2
movdqa xmm6, xmm3
pcmpeqb xmm6, xmm2
por xmm6, xmm5
movdqa xmm5, xmm1
pcmpeqb xmm5, xmm2
movdqa xmm7, xmm0
pcmpeqb xmm7, xmm2
por xmm7, xmm5
por xmm7, xmm6
pmovmskb r10d, xmm7
test r10d, r10d
jne 0x4237de
add rdx, r8
lea r10, [rax + rdx]
add r10, 0xffffffffffffffd0
cmp r10, r11
jbe 0x42368e
lea rdx, [r9 - 0x10]
cmp r10, rdx
ja 0x423726
mov r11, r10
sub r11, rax
pxor xmm0, xmm0
movdqu xmm1, xmmword [r10]
pcmpeqb xmm1, xmm0
pmovmskb r8d, xmm1
test r8d, r8d
jne 0x42383d
add r10, 0x10
add r11, 0x10
cmp r10, rdx
jbe 0x423702
cmp r10, r9
jae 0x422b3f
movdqu xmm0, xmmword [r9 - 0x10]
pxor xmm1, xmm1
pcmpeqb xmm1, xmm0
pmovmskb r8d, xmm1
test r8d, r8d
je 0x4229ce
sub rdx, rax
tzcnt r8d, r8d
add r8, rdx
jmp 0x42486e
lea r8, [0x00bac160]
mov rcx, r14
call fcn.0040f0c0
ud2
mov qword [rsp + 0x78], r10
mov qword [rsp + 0x470], 0
mov qword [rsp + 0x478], 8
mov qword [rsp + 0x480], 0
mov esi, 8
xor r15d, r15d
xor eax, eax
mov qword [rsp + 0xc0], rax
xor edi, edi
xor edx, edx
jmp 0x4238b3
pxor xmm2, xmm2
pcmpeqb xmm4, xmm2
pmovmskb edx, xmm4
test edx, edx
je 0x423817
tzcnt edx, edx
lea r9, [rdx + r8]
add r9, 0xffffffffffffffd0
jmp 0x42334c
tzcnt r9d, r9d
add r9, r11
jmp 0x42334c
pxor xmm2, xmm2
pcmpeqb xmm4, xmm2
pmovmskb r8d, xmm4
test r8d, r8d
je 0x42386f
tzcnt r8d, r8d
add r8, rdx
add r8, 0xffffffffffffffd0
jmp 0x42486e
lea r8, [0x00bae028]
mov rdx, qword [rsp + 0xd8]
call fcn.0040f0c0
ud2
pcmpeqb xmm3, xmm2
pmovmskb edx, xmm3
test edx, edx
je 0x424813
tzcnt edx, edx
lea r9, [rdx + r8]
add r9, 0xffffffffffffffe0
mov rdi, qword [rsp + 0x68]
jmp 0x42334c
tzcnt r8d, r8d
add r8, r11
jmp 0x424873
cmp qword [rsp + 0x470], 0
je 0x41fc08
mov r8, qword [rsp + 0x478]
jmp 0x42466b
mov esi, 8
xor edx, edx
jmp 0x4238a8
pcmpeqb xmm3, xmm2
pmovmskb r8d, xmm3
test r8d, r8d
je 0x424854
tzcnt r8d, r8d
add r8, rdx
add r8, 0xffffffffffffffe0
jmp 0x42486e
lea r8, [0x00bac1d0]
call fcn.0040f0c0
ud2
mov rsi, qword [rsp + 0x478]
mov rdi, rbx
mov r15, qword [rsp + 0xd0]
test rdx, rdx
je 0x4238c2
bsr rax, rdx
xor rax, 0x3f
jmp 0x4238c7
mov eax, 0x40
mov r9d, 0x40
sub r9d, eax
mov rcx, rsi
xor r8d, r8d
call fcn.004335d0
movups xmm0, xmmword [rsp + 0x470]
movups xmmword [rsp + 0x120], xmm0
mov rax, qword [rsp + 0x480]
mov qword [rsp + 0x130], rax
mov qword [rsp + 0xe0], rdi
mov qword [rsp + 0xe8], rbp
mov rax, qword [rsp + 0xc0]
mov qword [rsp + 0xf0], rax
mov qword [rsp + 0xf8], r15
mov qword [rsp + 0x100], rbx
mov qword [rsp + 0x108], rbp
mov rdi, qword [rsp + 0x78]
mov qword [rsp + 0x110], rdi
mov rsi, qword [rsp + 0x88]
mov qword [rsp + 0x118], rsi
mov qword [rsp + 0x20], 0xa
lea r9, [0x00baa9f3]
lea r8, [rsp + 0xe0]
mov rcx, rdi
mov rdx, rsi
call fcn.0042b820
test rax, rax
je 0x4239a6
mov ecx, dword [rax + 8]
mov r9d, dword [rax + 0x10]
cmp ecx, r9d
cmovb r9d, ecx
mov ecx, dword [rax + 0x14]
mov rdx, rbp
sub rdx, rcx
lea rax, [rbx + rcx]
xor r8d, r8d
cmp rdx, r9
cmovb rax, r8
cmp rbp, rcx
cmovb rax, r8
jmp 0x4239a8
xor eax, eax
test rax, rax
lea r15, [0x00baf220]
mov rcx, rax
cmove rcx, r15
mov qword [rsp + 0xc8], rcx
cmove r9, rax
mov qword [rsp + 0xa0], r9
mov qword [rsp + 0x20], 0xf
lea r9, [0x00baa9e4]
lea r8, [rsp + 0xe0]
mov rcx, rdi
mov rdx, rsi
call fcn.0042b820
test rax, rax
je 0x423a23
mov ecx, dword [rax + 8]
mov r9d, dword [rax + 0x10]
cmp ecx, r9d
cmovb r9d, ecx
mov ecx, dword [rax + 0x14]
mov rdx, rbp
sub rdx, rcx
lea rax, [rbx + rcx]
xor r8d, r8d
cmp rdx, r9
cmovb rax, r8
cmp rbp, rcx
cmovb rax, r8
jmp 0x423a25
xor eax, eax
test rax, rax
mov rcx, rax
cmove rcx, r15
mov qword [rsp + 0xc0], rcx
cmove r9, rax
mov qword [rsp + 0xd8], r9
mov qword [rsp + 0x20], 0xd
lea r9, [0x00baa9d7]
lea r8, [rsp + 0xe0]
mov rcx, rdi
mov rdx, rsi
call fcn.0042b820
test rax, rax
je 0x423a99
mov ecx, dword [rax + 8]
mov r9d, dword [rax + 0x10]
cmp ecx, r9d
cmovb r9d, ecx
mov ecx, dword [rax + 0x14]
mov rdx, rbp
sub rdx, rcx
lea rax, [rbx + rcx]
xor r8d, r8d
cmp rdx, r9
cmovb rax, r8
cmp rbp, rcx
cmovb rax, r8
jmp 0x423a9b
xor eax, eax
test rax, rax
mov rcx, rax
cmove rcx, r15
mov qword [rsp + 0x198], rcx
cmove r9, rax
mov qword [rsp + 0x180], r9
mov qword [rsp + 0x20], 0xf
lea r9, [0x00baa9c8]
lea r8, [rsp + 0xe0]
mov rcx, rdi
mov rdx, rsi
call fcn.0042b820
test rax, rax
je 0x423b0f
mov ecx, dword [rax + 8]
mov r9d, dword [rax + 0x10]
cmp ecx, r9d
cmovb r9d, ecx
mov ecx, dword [rax + 0x14]
mov rdx, rbp
sub rdx, rcx
lea rax, [rbx + rcx]
xor r8d, r8d
cmp rdx, r9
cmovb rax, r8
cmp rbp, rcx
cmovb rax, r8
jmp 0x423b11
xor eax, eax
test rax, rax
mov rcx, rax
cmove rcx, r15
mov qword [rsp + 0x60], rcx
cmove r9, rax
mov qword [rsp + 0xd0], r9
mov qword [rsp + 0x20], 0xd
lea r9, [0x00baaa3b]
lea r8, [rsp + 0xe0]
mov rcx, rdi
mov rdx, rsi
call fcn.0042b820
test rax, rax
je 0x423b82
mov ecx, dword [rax + 8]
mov r9d, dword [rax + 0x10]
cmp ecx, r9d
cmovb r9d, ecx
mov ecx, dword [rax + 0x14]
mov rdx, rbp
sub rdx, rcx
lea rax, [rbx + rcx]
xor r8d, r8d
cmp rdx, r9
cmovb rax, r8
cmp rbp, rcx
cmovb rax, r8
jmp 0x423b84
xor eax, eax
test rax, rax
mov rcx, rax
cmove rcx, r15
mov qword [rsp + 0x48], rcx
cmove r9, rax
mov qword [rsp + 0x318], r9
mov qword [rsp + 0x20], 0xb
lea r9, [0x00baaa30]
lea r8, [rsp + 0xe0]
mov rcx, rdi
mov rdx, rsi
call fcn.0042b820
test rax, rax
je 0x423bf5
mov ecx, dword [rax + 8]
mov r9d, dword [rax + 0x10]
cmp ecx, r9d
cmovb r9d, ecx
mov ecx, dword [rax + 0x14]
mov rdx, rbp
sub rdx, rcx
lea rax, [rbx + rcx]
xor r8d, r8d
cmp rdx, r9
cmovb rax, r8
cmp rbp, rcx
cmovb rax, r8
jmp 0x423bf7
xor eax, eax
test rax, rax
mov rcx, rax
cmove rcx, r15
mov qword [rsp + 0x168], rcx
cmove r9, rax
mov qword [rsp + 0x80], r9
mov qword [rsp + 0x20], 0xe
lea r9, [0x00baaa22]
lea r8, [rsp + 0xe0]
mov rcx, rdi
mov rdx, rsi
call fcn.0042b820
test rax, rax
je 0x423c6b
mov ecx, dword [rax + 8]
mov r9d, dword [rax + 0x10]
cmp ecx, r9d
cmovb r9d, ecx
mov ecx, dword [rax + 0x14]
mov rdx, rbp
sub rdx, rcx
lea rax, [rbx + rcx]
xor r8d, r8d
cmp rdx, r9
cmovb rax, r8
cmp rbp, rcx
cmovb rax, r8
jmp 0x423c6d
xor eax, eax
test rax, rax
mov rcx, rax
cmove rcx, r15
mov qword [rsp + 0x158], rcx
cmove r9, rax
mov qword [rsp + 0x160], r9
mov qword [rsp + 0x20], 0xb
lea r9, [0x00baaa17]
lea r8, [rsp + 0xe0]
mov rcx, rdi
mov rdx, rsi
call fcn.0042b820
test rax, rax
je 0x423ce1
mov ecx, dword [rax + 8]
mov r9d, dword [rax + 0x10]
cmp ecx, r9d
cmovb r9d, ecx
mov ecx, dword [rax + 0x14]
mov rdx, rbp
sub rdx, rcx
lea rax, [rbx + rcx]
xor r8d, r8d
cmp rdx, r9
cmovb rax, r8
cmp rbp, rcx
cmovb rax, r8
jmp 0x423ce3
xor eax, eax
test rax, rax
mov rcx, rax
cmove rcx, r15
mov qword [rsp + 0x150], rcx
cmove r9, rax
mov qword [rsp + 0x90], r9
mov qword [rsp + 0x20], 0xb
lea r9, [0x00baaa0c]
lea r8, [rsp + 0xe0]
mov rcx, rdi
mov rdx, rsi
call fcn.0042b820
test rax, rax
je 0x423d57
mov ecx, dword [rax + 8]
mov r9d, dword [rax + 0x10]
cmp ecx, r9d
cmovb r9d, ecx
mov ecx, dword [rax + 0x14]
mov rdx, rbp
sub rdx, rcx
lea rax, [rbx + rcx]
xor r8d, r8d
cmp rdx, r9
cmovb rax, r8
cmp rbp, rcx
cmovb rax, r8
jmp 0x423d59
xor eax, eax
test rax, rax
mov rcx, rax
cmove rcx, r15
mov qword [rsp + 0x148], rcx
cmove r9, rax
mov qword [rsp + 0xb0], r9
movups xmm0, xmmword [rsp + 0xe0]
movups xmm1, xmmword [rsp + 0xf0]
movaps xmmword [rsp + 0x480], xmm1
movaps xmmword [rsp + 0x470], xmm0
mov qword [rsp + 0x20], 0xf
lea r9, [0x00baa9fd]
lea r8, [rsp + 0x470]
mov rcx, rdi
mov rdx, rsi
call fcn.0042b820
test rax, rax
je 0x423ded
mov ecx, dword [rax + 8]
mov r9d, dword [rax + 0x10]
cmp ecx, r9d
cmovb r9d, ecx
mov ecx, dword [rax + 0x14]
mov rdx, rbp
sub rdx, rcx
lea rax, [rbx + rcx]
xor r8d, r8d
cmp rdx, r9
cmovb rax, r8
cmp rbp, rcx
cmovb rax, r8
jmp 0x423def
xor eax, eax
test rax, rax
mov rcx, rax
cmove rcx, r15
mov qword [rsp + 0x50], rcx
cmove r9, rax
mov qword [rsp + 0xb8], r9
movups xmm0, xmmword [rsp + 0xe0]
movups xmm1, xmmword [rsp + 0xf0]
movaps xmmword [rsp + 0x480], xmm1
movaps xmmword [rsp + 0x470], xmm0
mov qword [rsp + 0x20], 0xa
lea r9, [0x00baa9be]
lea r8, [rsp + 0x470]
mov rcx, rdi
mov rdx, rsi
call fcn.0042b820
test rax, rax
je 0x423e7d
mov ecx, dword [rax + 8]
mov esi, dword [rax + 0x10]
cmp ecx, esi
cmovb esi, ecx
mov ecx, dword [rax + 0x14]
mov rdx, rbp
sub rdx, rcx
lea rax, [rbx + rcx]
xor r8d, r8d
cmp rdx, rsi
cmovb rax, r8
cmp rbp, rcx
cmovb rax, r8
jmp 0x423e7f
xor eax, eax
test rax, rax
mov rcx, rax
cmove rcx, r15
mov qword [rsp + 0x58], rcx
cmove rsi, rax
movups xmm0, xmmword [rsp + 0xe0]
movups xmm1, xmmword [rsp + 0xf0]
movaps xmmword [rsp + 0x480], xmm1
movaps xmmword [rsp + 0x470], xmm0
mov qword [rsp + 0x20], 0x12
lea r9, [0x00baa9ac]
lea r8, [rsp + 0x470]
mov rcx, rdi
mov rdx, qword [rsp + 0x88]
call fcn.0042b820
mov rcx, rdi
test rax, rax
je 0x423f11
mov edx, dword [rax + 8]
mov r15d, dword [rax + 0x10]
cmp edx, r15d
cmovb r15d, edx
mov r9d, dword [rax + 0x14]
mov rdx, rbp
sub rdx, r9
lea rax, [rbx + r9]
xor r8d, r8d
cmp rdx, r15
cmovb rax, r8
cmp rbp, r9
cmovb rax, r8
jmp 0x423f13
xor eax, eax
test rax, rax
mov rdi, rax
lea rdx, [0x00baf220]
cmove rdi, rdx
cmove r15, rax
movdqu xmm0, xmmword [rsp + 0xe0]
movdqu xmm1, xmmword [rsp + 0xf0]
movdqa xmmword [rsp + 0x480], xmm1
movdqa xmmword [rsp + 0x470], xmm0
mov qword [rsp + 0x20], 0xc
lea r9, [0x00baa9a0]
lea r8, [rsp + 0x470]
mov rdx, qword [rsp + 0x88]
call fcn.0042b820
test rax, rax
je 0x423fa1
mov edx, dword [rax + 8]
mov ecx, dword [rax + 0x10]
cmp edx, ecx
cmovb ecx, edx
mov edx, dword [rax + 0x14]
mov r8, rbp
sub r8, rdx
lea rax, [rbx + rdx]
xor r9d, r9d
cmp r8, rcx
cmovb rax, r9
cmp rbp, rdx
cmovb rax, r9
jmp 0x423fa3
xor eax, eax
test rax, rax
cmove rcx, rax
lea rdx, [0x00baf220]
cmovne rdx, rax
mov rax, qword [rsp + 0xc8]
mov qword [rsp + 0x480], rax
mov rax, qword [rsp + 0xa0]
mov qword [rsp + 0x488], rax
mov rax, qword [rsp + 0xc0]
mov qword [rsp + 0x490], rax
mov rax, qword [rsp + 0xd8]
mov qword [rsp + 0x498], rax
mov rax, qword [rsp + 0x198]
mov qword [rsp + 0x4a0], rax
mov rax, qword [rsp + 0x180]
mov qword [rsp + 0x4a8], rax
mov rax, qword [rsp + 0x60]
mov qword [rsp + 0x4b0], rax
mov rax, qword [rsp + 0xd0]
mov qword [rsp + 0x4b8], rax
mov rax, qword [rsp + 0x48]
mov qword [rsp + 0x4c0], rax
mov rax, qword [rsp + 0x318]
mov qword [rsp + 0x4c8], rax
mov rax, qword [rsp + 0x168]
mov qword [rsp + 0x4d0], rax
mov rax, qword [rsp + 0x80]
mov qword [rsp + 0x4d8], rax
mov rax, qword [rsp + 0x158]
mov qword [rsp + 0x4e0], rax
mov rax, qword [rsp + 0x160]
mov qword [rsp + 0x4e8], rax
mov rax, qword [rsp + 0x150]
mov qword [rsp + 0x4f0], rax
mov rax, qword [rsp + 0x90]
mov qword [rsp + 0x4f8], rax
mov rax, qword [rsp + 0x148]
mov qword [rsp + 0x500], rax
mov rax, qword [rsp + 0xb0]
mov qword [rsp + 0x508], rax
mov rax, qword [rsp + 0x50]
mov qword [rsp + 0x510], rax
mov rax, qword [rsp + 0xb8]
mov qword [rsp + 0x518], rax
mov rax, qword [rsp + 0x58]
mov qword [rsp + 0x520], rax
mov qword [rsp + 0x528], rsi
mov qword [rsp + 0x530], rdi
mov qword [rsp + 0x538], r15
mov qword [rsp + 0x540], rdx
mov qword [rsp + 0x548], rcx
mov qword [rsp + 0x550], 0
mov byte [rsp + 0x558], 0
mov qword [rsp + 0x470], 1
mov qword [rsp + 0x478], 1
mov rcx, qword [0x00bb5140]
test rcx, rcx
jne 0x424171
call fcn.00451564
test rax, rax
je 0x424c0e
mov rcx, rax
mov qword [0x00bb5140], rax
mov r8d, 0xf0
xor edx, edx
call fcn.00451584
test rax, rax
je 0x424c0e
mov rsi, rax
lea rdx, [rsp + 0x470]
mov r8d, 0xf0
mov rcx, rax
call fcn.00451d60
lea rcx, [rsp + 0x220]
mov rdx, rsi
call fcn.0042c1a0
mov rdi, qword [rsp + 0x230]
test rdi, rdi
je 0x424654
movdqu xmm0, xmmword [rsp + 0x220]
movdqu xmm1, xmmword [rsp + 0x238]
movdqu xmm2, xmmword [rsp + 0x248]
movdqa xmmword [rsp + 0x2d0], xmm0
movdqu xmmword [rsp + 0x2e8], xmm1
movdqu xmmword [rsp + 0x2f8], xmm2
mov rax, qword [rsp + 0x258]
mov qword [rsp + 0x308], rax
mov qword [rsp + 0x2e0], rdi
mov rdx, qword [rax + 0xe0]
test rdx, rdx
je 0x4242e9
lock inc qword [rdx]
jle 0x424cc4
lea rcx, [rsp + 0x470]
call fcn.0042c1a0
mov rax, qword [rsp + 0x480]
test rax, rax
je 0x424647
movdqu xmm0, xmmword [rsp + 0x470]
movdqu xmm1, xmmword [rsp + 0x488]
movdqu xmm2, xmmword [rsp + 0x498]
movdqa xmmword [rsp + 0x220], xmm0
movdqu xmmword [rsp + 0x238], xmm1
movdqu xmmword [rsp + 0x248], xmm2
mov rcx, qword [rsp + 0x4a8]
mov qword [rsp + 0x258], rcx
mov qword [rsp + 0x230], rax
mov ecx, 0x40
mov edx, 8
call fcn.00407640
test rax, rax
je 0x424cc8
mov rsi, rax
movdqa xmm0, xmmword [rsp + 0x220]
movdqa xmm1, xmmword [rsp + 0x230]
movdqa xmm2, xmmword [rsp + 0x240]
movdqa xmm3, xmmword [rsp + 0x250]
movdqu xmmword [rax + 0x30], xmm3
movdqu xmmword [rax + 0x20], xmm2
movdqu xmmword [rax + 0x10], xmm1
movdqu xmmword [rax], xmm0
jmp 0x4242eb
xor esi, esi
lea rbp, [rsp + 0x2e8]
mov r15, qword [rsp + 0x2d0]
test r15, r15
je 0x42437b
mov rcx, r15
call fcn.00425170
mov rcx, qword [0x00bb5140]
xor edx, edx
mov r8, r15
call fcn.0045158c
mov rdi, qword [rsp + 0x2e0]
mov qword [rsp + 0x2d0], rsi
mov rax, qword [rsp + 0x2d0]
mov qword [rsp + 0x280], rax
mov rax, qword [rsp + 0x2d8]
mov qword [rsp + 0x288], rax
movdqu xmm0, xmmword [rbp]
movdqu xmm1, xmmword [rbp + 0x10]
movdqa xmmword [rsp + 0x430], xmm0
movdqa xmmword [rsp + 0x440], xmm1
mov rax, qword [rbp + 0x20]
mov qword [rsp + 0x450], rax
test rdi, rdi
jne 0x4243cb
jmp 0x424654
mov qword [rsp + 0x2d0], rsi
mov rax, qword [rsp + 0x2d0]
mov qword [rsp + 0x280], rax
mov rax, qword [rsp + 0x2d8]
mov qword [rsp + 0x288], rax
movdqu xmm0, xmmword [rbp]
movdqu xmm1, xmmword [rbp + 0x10]
movdqa xmmword [rsp + 0x430], xmm0
movdqa xmmword [rsp + 0x440], xmm1
mov rax, qword [rbp + 0x20]
mov qword [rsp + 0x450], rax
mov rax, qword [rsp + 0x280]
mov qword [rsp + 0x4c0], rax
mov rax, qword [rsp + 0x288]
mov qword [rsp + 0x4c8], rax
movaps xmm0, xmmword [rsp + 0x430]
movaps xmm1, xmmword [rsp + 0x440]
movaps xmmword [rsp + 0x1a0], xmm0
movaps xmmword [rsp + 0x1b0], xmm1
mov rax, qword [rsp + 0x450]
mov qword [rsp + 0x1c0], rax
movups xmm0, xmmword [rsp + 0xe0]
movups xmm1, xmmword [rsp + 0xf0]
movups xmm2, xmmword [rsp + 0x100]
movups xmm3, xmmword [rsp + 0x110]
movups xmmword [rsp + 0x1c8], xmm0
movups xmmword [rsp + 0x1d8], xmm1
movups xmmword [rsp + 0x1e8], xmm2
movups xmmword [rsp + 0x1f8], xmm3
movups xmm0, xmmword [rsp + 0x120]
movups xmmword [rsp + 0x208], xmm0
mov rax, qword [rsp + 0x130]
mov qword [rsp + 0x218], rax
mov rax, qword [rsp + 0x210]
mov qword [rsp + 0x418], rax
mov rax, qword [rsp + 0x218]
mov qword [rsp + 0x420], rax
movaps xmm0, xmmword [rsp + 0x200]
movups xmmword [rsp + 0x408], xmm0
movaps xmm0, xmmword [rsp + 0x1f0]
movups xmmword [rsp + 0x3f8], xmm0
movaps xmm0, xmmword [rsp + 0x1e0]
movups xmmword [rsp + 0x3e8], xmm0
movaps xmm0, xmmword [rsp + 0x1a0]
movaps xmm1, xmmword [rsp + 0x1b0]
movaps xmm2, xmmword [rsp + 0x1c0]
movaps xmm3, xmmword [rsp + 0x1d0]
movups xmmword [rsp + 0x3d8], xmm3
movups xmmword [rsp + 0x3c8], xmm2
movups xmmword [rsp + 0x3b8], xmm1
movups xmmword [rsp + 0x3a8], xmm0
mov rax, qword [rsp + 0x330]
mov qword [rsp + 0x480], rax
movaps xmm0, xmmword [rsp + 0x320]
movaps xmmword [rsp + 0x470], xmm0
mov rax, qword [rsp + 0x2c8]
mov qword [rsp + 0x4b8], rax
movups xmm0, xmmword [rsp + 0x298]
movups xmm1, xmmword [rsp + 0x2a8]
movups xmm2, xmmword [rsp + 0x2b8]
movups xmmword [rsp + 0x4a8], xmm2
movups xmmword [rsp + 0x498], xmm1
movups xmmword [rsp + 0x488], xmm0
movaps xmm0, xmmword [rsp + 0x4c0]
movaps xmmword [rsp + 0x390], xmm0
mov rax, qword [rsp + 0x4b0]
mov qword [rsp + 0x380], rax
mov rax, qword [rsp + 0x4b8]
mov qword [rsp + 0x388], rax
movdqa xmm0, xmmword [rsp + 0x470]
movdqa xmm1, xmmword [rsp + 0x480]
movdqa xmm2, xmmword [rsp + 0x490]
movdqa xmm3, xmmword [rsp + 0x4a0]
movdqa xmmword [rsp + 0x370], xmm3
movdqa xmmword [rsp + 0x360], xmm2
movdqa xmmword [rsp + 0x350], xmm1
movdqa xmmword [rsp + 0x340], xmm0
mov qword [rsp + 0x3a0], rdi
mov rsi, qword [0x00bb50b0]
cmp rsi, 4
jne 0x424683
mov qword [0x00bb50b0], 3
mov edx, 0x2d0
add rdx, qword [0x00bb50a8]
lea rcx, [rsp + 0x470]
mov r8d, 0xf0
call fcn.00451d60
cmp qword [rsp + 0x4d8], 0
je 0x42467e
lea rcx, [rsp + 0x478]
call fcn.004252d0
mov rsi, qword [0x00bb50b0]
jmp 0x424683
lea rcx, [rsp + 0x2d0]
call fcn.00425170
cmp qword [rsp + 0x120], 0
je 0x41fc08
mov r8, qword [rsp + 0x128]
mov rcx, qword [0x00bb5140]
xor edx, edx
call fcn.0045158c
jmp 0x41fc08
mov esi, 3
lea rcx, [rsp + 0x478]
lea rdx, [rsp + 0x340]
mov r8d, 0xe8
call fcn.00451d60
mov qword [rsp + 0x470], r14
cmp rsi, qword [0x00bb50a0]
jne 0x424793
mov rax, rsi
inc rax
je 0x42477b
lea rcx, [rsi + rsi]
cmp rcx, rax
cmova rax, rcx
cmp rax, 5
mov edi, 4
cmovae rdi, rax
movabs rax, 0x88888888888888
xor r8d, r8d
cmp rdi, rax
setbe r8b
imul rdx, rdi, 0xf0
shl r8, 3
test rsi, rsi
je 0x424727
mov rax, qword [0x00bb50a8]
imul rcx, rsi, 0xf0
mov qword [rsp + 0x1a0], rax
mov qword [rsp + 0x1a8], rcx
mov qword [rsp + 0x1b0], 8
jmp 0x424733
mov qword [rsp + 0x1b0], 0
lea rcx, [rsp + 0xe0]
lea r9, [rsp + 0x1a0]
call fcn.00451160
cmp qword [rsp + 0xe0], 0
mov rcx, qword [rsp + 0xe8]
je 0x424785
mov rdx, qword [rsp + 0xf0]
movabs rax, 0x8000000000000001
cmp rdx, rax
je 0x424793
test rdx, rdx
jne 0x424cd9
call fcn.004081e0
jmp 0x424cde
mov qword [0x00bb50a8], rcx
mov qword [0x00bb50a0], rdi
mov rbp, qword [0x00bb50a8]
test rsi, rsi
je 0x4247ed
lea rcx, [rbp + 0xf0]
imul r8, rsi, 0xf0
mov rdx, rbp
call fcn.00451d58
lea rdx, [rsp + 0x470]
mov r8d, 0xf0
mov rcx, rbp
call fcn.00451d60
inc rsi
mov qword [0x00bb50b0], rsi
jne 0x41fe02
lea r8, [0x00bac178]
xor ecx, ecx
xor edx, edx
call fcn.0040f0c0
ud2
lea rdx, [rsp + 0x470]
mov r8d, 0xf0
mov rcx, rbp
call fcn.00451d60
mov qword [0x00bb50b0], 1
jmp 0x41fe02
pcmpeqb xmm1, xmm2
pmovmskb edx, xmm1
test edx, edx
je 0x424884
tzcnt edx, edx
lea r9, [rdx + r8]
add r9, 0xfffffffffffffff0
mov rdi, qword [rsp + 0x68]
jmp 0x42334c
lea r8, [0x00bac1d0]
call fcn.0040f0c0
jmp 0x424cde
lea r8, [0x00bac970]
call fcn.0040f0c0
ud2
pcmpeqb xmm1, xmm2
pmovmskb r8d, xmm1
test r8d, r8d
je 0x42489b
tzcnt r8d, r8d
add r8, rdx
add r8, 0xfffffffffffffff0
mov rdi, qword [rsp + 0x68]
xor edx, edx
cmp r8, rcx
cmova rax, rdx
mov rdx, rax
jmp 0x422b41
pcmpeqb xmm0, xmm2
psllw xmm0, 7
pmovmskb edx, xmm0
test edx, edx
je 0x4248b5
tzcnt edx, edx
jmp 0x4248ba
pcmpeqb xmm0, xmm2
psllw xmm0, 7
pmovmskb r8d, xmm0
test r8d, r8d
je 0x4248ca
tzcnt r8d, r8d
jmp 0x4248d0
mov edx, 0x20
mov r9d, edx
add r9, r8
mov rdi, qword [rsp + 0x68]
jmp 0x42334c
mov r8d, 0x20
mov r8d, r8d
jmp 0x423753
mov ecx, 0x3c0
mov edx, 8
call fcn.004085b0
ud2
lea r8, [0x00bac958]
mov rcx, r15
call fcn.00410030
ud2
lea r8, [0x00bae470]
mov rcx, qword [rsp + 0xd8]
mov rdx, qword [rsp + 0xa0]
call fcn.0040f0c0
jmp 0x424cde
test rdx, rdx
jne 0x4249db
call fcn.004081e0
jmp 0x424cde
lea rax, [0x00bacaf0]
mov qword [rsp + 0x480], rax
mov qword [rsp + 0x488], 1
mov qword [rsp + 0x470], 0
lea rdx, [0x00bacb50]
jmp 0x42498c
lea rax, [0x00bacaf0]
mov qword [rsp + 0x480], rax
mov qword [rsp + 0x488], 1
mov qword [rsp + 0x470], 0
lea rdx, [0x00bacb68]
lea rcx, [rsp + 0x470]
lea rax, [0x00baf220]
mov qword [rcx + 0x20], rax
mov qword [rcx + 0x28], 0
call fcn.0040f140
jmp 0x424cde
lea r8, [0x00bacb80]
mov rcx, rdx
mov rdx, qword [rsp + 0x50]
call fcn.00410030
jmp 0x424cde
lea r8, [0x00bacb80]
call fcn.004105f0
jmp 0x424cde
mov rcx, rbp
call fcn.004085b0
jmp 0x424cde
lea rax, [0x00bacaf0]
mov qword [rsp + 0x480], rax
mov qword [rsp + 0x488], 1
mov qword [rsp + 0x470], 0
lea rdx, [0x00bacb50]
jmp 0x424a46
lea rax, [0x00bacaf0]
mov qword [rsp + 0x480], rax
mov qword [rsp + 0x488], 1
mov qword [rsp + 0x470], 0
lea rdx, [0x00bacb68]
lea rax, [0x00baf220]
mov rcx, qword [rsp + 0x198]
mov qword [rcx + 0x20], rax
mov qword [rcx + 0x28], 0
call fcn.0040f140
jmp 0x424cde
lea r8, [0x00bacb80]
mov rcx, r12
mov rdx, qword [rsp + 0x98]
call fcn.00410030
jmp 0x424cde
lea r8, [0x00bacb80]
mov rdx, r12
call fcn.004105f0
jmp 0x424cde
mov ecx, 0x10
mov edx, 8
call fcn.004085b0
jmp 0x424cde
lea rcx, [0x00bacbf8]
lea r8, [0x00bacc28]
mov edx, 0x2c
call fcn.0040f180
jmp 0x424cde
mov edx, 8
mov rcx, r12
call fcn.004085b0
jmp 0x424cde
mov edx, 8
mov rcx, rbp
call fcn.004085b0
jmp 0x424cde
lea rcx, [0x00bacbf8]
lea r8, [0x00bacc28]
mov edx, 0x2c
call fcn.0040f180
jmp 0x424cde
lea rcx, [0x00baf010]
lea r8, [0x00bacbc8]
mov edx, 0x2b
call fcn.0040f180
jmp 0x424cde
lea r8, [0x00baa988]
mov edx, 5
mov rcx, r14
call fcn.00410030
jmp 0x424cde
lea rax, [0x00bacc40]
mov qword [rsp + 0xd0], rax
jmp 0x424b87
lea rcx, [0x00baf010]
lea r8, [0x00bacbc8]
mov edx, 0x2b
call fcn.0040f180
jmp 0x424cde
lea rax, [0x00bacc40]
mov qword [rsp + 0xd0], rax
jmp 0x424bc0
mov qword [rsp + 0x70], rax
mov rcx, r12
mov rdx, qword [rsp + 0x70]
mov r8, qword [rsp + 0xd0]
call fcn.004105f0
jmp 0x424cde
lea r8, [0x00bacb38]
mov rcx, rax
mov rdx, rdi
call fcn.00410030
jmp 0x424cde
mov qword [rsp + 0x140], rax
mov rcx, r13
mov rdx, qword [rsp + 0x140]
mov r8, qword [rsp + 0xd0]
call fcn.004105f0
jmp 0x424cde
lea r8, [0x00bacb38]
mov rcx, rax
mov rdx, r14
call fcn.00410030
jmp 0x424cde
lea rcx, [0x00baf010]
lea r8, [0x00bae488]
mov edx, 0x2b
call fcn.0040f180
ud2
mov ecx, 0xf0
mov edx, 8
call fcn.004085b0
jmp 0x424cde
lea rcx, [0x00baf010]
lea r8, [0x00bacb98]
mov edx, 0x2b
call fcn.0040f180
jmp 0x424cde
lea rcx, [0x00baf010]
lea r8, [0x00bacbb0]
mov edx, 0x2b
call fcn.0040f180
jmp 0x424cde
lea r8, [0x00baa988]
mov edx, 5
mov rcx, r14
call fcn.00410030
ud2
lea rcx, [0x00baf010]
lea r8, [0x00bacb98]
mov edx, 0x2b
call fcn.0040f180
jmp 0x424cde
lea rcx, [0x00baf010]
lea r8, [0x00bacbb0]
mov edx, 0x2b
call fcn.0040f180
jmp 0x424cde
mov edx, 8
mov rcx, r13
call fcn.004085b0
jmp 0x424cde
mov edx, 8
mov rcx, r13
call fcn.004085b0
jmp 0x424cde
ud2
mov ecx, 0x40
mov edx, 8
call fcn.004085b0
jmp 0x424cde
call fcn.004085b0
ud2