Function at 0x140012ca0
Capabilities:
Contain obfuscated stackstrings

Disassembly:
mov byte [rsp + 0x20], r9b
mov qword [rsp + 0x18], r8
mov byte [rsp + 0x10], dl
mov qword [rsp + 8], rcx
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x388]
sub rsp, 0x488
movzx r15d, r9b
mov rdi, rcx
mov dword [rsp + 0x40], 0
mov byte [r8], 0
call fcn.140026fe0
mov rcx, rax
test rax, rax
je 0x140014461
mov rax, qword [rax]
call qword [rax + 0x18]
add rax, 0x18
mov qword [rbp - 0x48], rax
mov rdx, rdi
lea rcx, [rbp - 0x48]
call fcn.140022350
mov r14, 0xffffffffffffffff
test al, al
jne 0x140012d3c
test rdi, rdi
jne 0x140012d20
xor eax, eax
jmp 0x140012d2c
mov rax, r14
inc rax
cmp byte [rdi + rax], 0
jne 0x140012d23
mov r8d, eax
mov rdx, rdi
lea rcx, [rbp - 0x48]
call fcn.140022f90
nop
call fcn.140026fe0
mov rcx, rax
test rax, rax
je 0x14001446c
mov rax, qword [rax]
call qword [rax + 0x18]
lea rdi, [rax + 0x18]
mov qword [rbp - 0x68], rdi
test r15b, r15b
je 0x140012e53
mov word [rsp + 0x78], 0x3f70
mov dword [rsp + 0x7a], 0x3d646975
mov dword [rsp + 0x73], 0x702e676f
mov word [rsp + 0x70], 0x692f
mov byte [rsp + 0x72], 0x6c
mov byte [rsp + 0x7e], 0
mov byte [rsp + 0x77], 0x68
call fcn.140026fe0
mov rcx, rax
test rax, rax
je 0x140014477
mov rax, qword [rax]
call qword [rax + 0x18]
add rax, 0x18
mov qword [rbp - 0x80], rax
lea rdx, [rsp + 0x70]
lea rcx, [rbp - 0x80]
call fcn.140022350
test al, al
jne 0x140012deb
lea rcx, [rsp + 0x70]
mov rax, r14
nop word [rax + rax]
inc rax
cmp byte [rcx + rax], 0
jne 0x140012dd0
mov r8d, eax
lea rdx, [rsp + 0x70]
lea rcx, [rbp - 0x80]
call fcn.140022f90
nop
mov rdx, qword [rbp - 0x80]
lea rbx, [rdx - 0x18]
lea rsi, [rdi - 0x18]
cmp rbx, rsi
je 0x140012e4e
cmp dword [rsi + 0x10], 0
jl 0x140012e40
mov rax, qword [rsi]
cmp qword [rbx], rax
jne 0x140012e40
mov rcx, rbx
call fcn.140022dd0
mov r15, rax
mov ecx, r14d
lock xadd dword [rsi + 0x10], ecx
sub ecx, 1
jg 0x140012e2e
mov rcx, qword [rsi]
mov rdi, qword [rcx]
mov rdx, rsi
call qword [rdi + 8]
lea rax, [r15 + 0x18]
mov qword [rbp - 0x68], rax
movzx r15d, byte [rbp + 0x3e8]
jmp 0x140012e4e
mov r8d, dword [rdx - 0x10]
lea rcx, [rbp - 0x68]
call fcn.140022f90
nop
jmp 0x140012f3e
mov word [rsp + 0x63], 0x676f
mov word [rsp + 0x66], 0x6870
mov word [rsp + 0x60], 0x692f
mov dword [rsp + 0x69], 0x3d693f
mov byte [rsp + 0x62], 0x6c
mov byte [rsp + 0x68], 0x70
mov byte [rsp + 0x65], 0x2e
call fcn.140026fe0
mov rcx, rax
test rax, rax
je 0x140014482
mov rax, qword [rax]
call qword [rax + 0x18]
add rax, 0x18
mov qword [rbp - 0x80], rax
lea rdx, [rsp + 0x60]
lea rcx, [rbp - 0x80]
call fcn.140022350
test al, al
jne 0x140012edb
lea rcx, [rsp + 0x60]
mov rax, r14
nop dword [rax + rax]
inc rax
cmp byte [rcx + rax], 0
jne 0x140012ec0
mov r8d, eax
lea rdx, [rsp + 0x60]
lea rcx, [rbp - 0x80]
call fcn.140022f90
nop
mov rdx, qword [rbp - 0x80]
lea rbx, [rdx - 0x18]
lea rsi, [rdi - 0x18]
cmp rbx, rsi
je 0x140012f3e
cmp dword [rsi + 0x10], 0
jl 0x140012f30
mov rax, qword [rsi]
cmp qword [rbx], rax
jne 0x140012f30
mov rcx, rbx
call fcn.140022dd0
mov r15, rax
mov ecx, r14d
lock xadd dword [rsi + 0x10], ecx
sub ecx, 1
jg 0x140012f1e
mov rcx, qword [rsi]
mov rdi, qword [rcx]
mov rdx, rsi
call qword [rdi + 8]
lea rax, [r15 + 0x18]
mov qword [rbp - 0x68], rax
movzx r15d, byte [rbp + 0x3e8]
jmp 0x140012f3e
mov r8d, dword [rdx - 0x10]
lea rcx, [rbp - 0x68]
call fcn.140022f90
nop
mov eax, r14d
lock xadd dword [rbx + 0x10], eax
sub eax, 1
jg 0x140012f57
mov rcx, qword [rbx]
mov rax, qword [rcx]
mov rdx, rbx
call qword [rax + 8]
call fcn.140026fe0
mov rcx, rax
test rax, rax
je 0x14001448d
mov rax, qword [rax]
call qword [rax + 0x18]
add rax, 0x18
mov qword [rbp - 0x60], rax
call fcn.140026fe0
mov rcx, rax
test rax, rax
je 0x140014498
mov rax, qword [rax]
call qword [rax + 0x18]
lea rdi, [rax + 0x18]
mov qword [rbp - 0x70], rdi
xor eax, eax
test r15b, r15b
je 0x14001309c
mov qword [rbp + 0x4c], rax
mov dword [rbp + 0x54], eax
lea rcx, [rbp + 0x4c]
call fcn.140032b10
mov rbx, rax
call fcn.140026fe0
mov rcx, rax
test rax, rax
je 0x1400144a3
mov rax, qword [rax]
call qword [rax + 0x18]
add rax, 0x18
mov qword [rbp - 0x18], rax
mov rdx, rbx
lea rcx, [rbp - 0x18]
call fcn.140022350
test al, al
jne 0x140013009
test rbx, rbx
jne 0x140012feb
xor eax, eax
jmp 0x140012ff9
mov rax, r14
nop
inc rax
cmp byte [rbx + rax], 0
jne 0x140012ff0
mov r8d, eax
mov rdx, rbx
lea rcx, [rbp - 0x18]
call fcn.140022f90
nop
mov rdx, qword [rbp - 0x18]
lea rbx, [rdx - 0x18]
lea rsi, [rdi - 0x18]
cmp rbx, rsi
je 0x14001306c
cmp dword [rsi + 0x10], 0
jl 0x14001305e
mov rax, qword [rsi]
cmp qword [rbx], rax
jne 0x14001305e
mov rcx, rbx
call fcn.140022dd0
mov r15, rax
mov ecx, r14d
lock xadd dword [rsi + 0x10], ecx
sub ecx, 1
jg 0x14001304c
mov rcx, qword [rsi]
mov rdi, qword [rcx]
mov rdx, rsi
call qword [rdi + 8]
lea rax, [r15 + 0x18]
mov qword [rbp - 0x70], rax
movzx r15d, byte [rbp + 0x3e8]
jmp 0x14001306c
mov r8d, dword [rdx - 0x10]
lea rcx, [rbp - 0x70]
call fcn.140022f90
nop
mov eax, r14d
lock xadd dword [rbx + 0x10], eax
sub eax, 1
jg 0x140013086
mov rcx, qword [rbx]
mov rax, qword [rcx]
mov rdx, rbx
call qword [rax + 8]
nop
lea rdi, [rbp + 0x4c]
xor eax, eax
mov ecx, 4
rep stosb byte [rdi], al
lea rdi, [rbp + 0x50]
jmp 0x140013197
mov qword [rbp + 0x40], rax
mov dword [rbp + 0x48], eax
lea rcx, [rbp + 0x40]
call fcn.140031e10
mov rbx, rax
call fcn.140026fe0
mov rcx, rax
test rax, rax
je 0x1400144ae
mov rax, qword [rax]
call qword [rax + 0x18]
add rax, 0x18
mov qword [rbp - 0x10], rax
mov rdx, rbx
lea rcx, [rbp - 0x10]
call fcn.140022350
test al, al
jne 0x140013109
test rbx, rbx
jne 0x1400130e7
xor eax, eax
jmp 0x1400130f9
mov rax, r14
nop word [rax + rax]
inc rax
cmp byte [rbx + rax], 0
jne 0x1400130f0
mov r8d, eax
mov rdx, rbx
lea rcx, [rbp - 0x10]
call fcn.140022f90
nop
mov rdx, qword [rbp - 0x10]
lea rbx, [rdx - 0x18]
lea rsi, [rdi - 0x18]
cmp rbx, rsi
je 0x14001316c
cmp dword [rsi + 0x10], 0
jl 0x14001315e
mov rax, qword [rsi]
cmp qword [rbx], rax
jne 0x14001315e
mov rcx, rbx
call fcn.140022dd0
mov r15, rax
mov ecx, r14d
lock xadd dword [rsi + 0x10], ecx
sub ecx, 1
jg 0x14001314c
mov rcx, qword [rsi]
mov rdi, qword [rcx]
mov rdx, rsi
call qword [rdi + 8]
lea rax, [r15 + 0x18]
mov qword [rbp - 0x70], rax
movzx r15d, byte [rbp + 0x3e8]
jmp 0x14001316c
mov r8d, dword [rdx - 0x10]
lea rcx, [rbp - 0x70]
call fcn.140022f90
nop
mov eax, r14d
lock xadd dword [rbx + 0x10], eax
sub eax, 1
jg 0x140013186
mov rcx, qword [rbx]
mov rax, qword [rcx]
mov rdx, rbx
call qword [rax + 8]
nop
lea rdi, [rbp + 0x40]
xor eax, eax
mov ecx, 4
rep stosb byte [rdi], al
lea rdi, [rbp + 0x44]
mov ecx, 8
rep stosb byte [rdi], al
call fcn.140026fe0
mov rcx, rax
test rax, rax
je 0x1400144b9
mov rax, qword [rax]
call qword [rax + 0x18]
lea rdi, [rax + 0x18]
mov qword [rbp - 0x78], rdi
test r15b, r15b
je 0x1400132b8
mov dword [rsp + 0x4b], 0x78652632
mov word [rsp + 0x49], 0x3d70
mov byte [rsp + 0x48], 0x26
mov word [rsp + 0x4f], 0x3d
call fcn.140026fe0
mov rcx, rax
test rax, rax
je 0x1400144c4
mov rax, qword [rax]
call qword [rax + 0x18]
add rax, 0x18
mov qword [rbp - 8], rax
lea rdx, [rsp + 0x48]
lea rcx, [rbp - 8]
call fcn.140022350
test al, al
jne 0x14001323b
lea rcx, [rsp + 0x48]
mov rax, r14
nop word [rax + rax]
inc rax
cmp byte [rcx + rax], 0
jne 0x140013220
mov r8d, eax
lea rdx, [rsp + 0x48]
lea rcx, [rbp - 8]
call fcn.140022f90
nop
mov rdx, qword [rbp - 8]
lea rbx, [rdx - 0x18]
lea rsi, [rdi - 0x18]
cmp rbx, rsi
je 0x140013296
cmp dword [rsi + 0x10], 0
jl 0x140013288
mov rax, qword [rsi]
cmp qword [rbx], rax
jne 0x140013288
mov rcx, rbx
call fcn.140022dd0
mov r15, rax
mov ecx, r14d
lock xadd dword [rsi + 0x10], ecx
sub ecx, 1
jg 0x14001327e
mov rcx, qword [rsi]
mov rdi, qword [rcx]
mov rdx, rsi
call qword [rdi + 8]
lea rax, [r15 + 0x18]
mov qword [rbp - 0x78], rax
jmp 0x140013296
mov r8d, dword [rdx - 0x10]
lea rcx, [rbp - 0x78]
call fcn.140022f90
nop
mov eax, r14d
lock xadd dword [rbx + 0x10], eax
sub eax, 1
jg 0x1400133c1
mov rcx, qword [rbx]
mov rax, qword [rcx]
mov rdx, rbx
call qword [rax + 8]
jmp 0x1400133c1
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbp + 0x18c], xmm0
mov qword [rbp + 0x19c], rax
lea rcx, [rbp + 0x18c]
call fcn.140032340
mov rbx, rax
call fcn.140026fe0
mov rcx, rax
test rax, rax
je 0x1400144cf
mov rax, qword [rax]
call qword [rax + 0x18]
add rax, 0x18
mov qword [rbp], rax
mov rdx, rbx
lea rcx, [rbp]
call fcn.140022350
test al, al
jne 0x14001332e
test rbx, rbx
jne 0x140013312
xor eax, eax
jmp 0x14001331e
mov rax, r14
inc rax
cmp byte [rbx + rax], 0
jne 0x140013315
mov r8d, eax
mov rdx, rbx
lea rcx, [rbp]
call fcn.140022f90
nop
mov rdx, qword [rbp]
lea rbx, [rdx - 0x18]
lea rsi, [rdi - 0x18]
cmp rbx, rsi
je 0x140013389
cmp dword [rsi + 0x10], 0
jl 0x14001337b
mov rax, qword [rsi]
cmp qword [rbx], rax
jne 0x14001337b
mov rcx, rbx
call fcn.140022dd0
mov r15, rax
mov ecx, r14d
lock xadd dword [rsi + 0x10], ecx
sub ecx, 1
jg 0x140013371
mov rcx, qword [rsi]
mov rdi, qword [rcx]
mov rdx, rsi
call qword [rdi + 8]
lea rax, [r15 + 0x18]
mov qword [rbp - 0x78], rax
jmp 0x140013389
mov r8d, dword [rdx - 0x10]
lea rcx, [rbp - 0x78]
call fcn.140022f90
nop
mov eax, r14d
lock xadd dword [rbx + 0x10], eax
sub eax, 1
jg 0x1400133a3
mov rcx, qword [rbx]
mov rax, qword [rcx]
mov rdx, rbx
call qword [rax + 8]
nop
lea rdi, [rbp + 0x18c]
xor eax, eax
mov ecx, 8
rep stosb byte [rdi], al
lea rdi, [rbp + 0x194]
mov ecx, 0x10
rep stosb byte [rdi], al
mov rbx, qword [rbp - 0x68]
lea rax, [rbx - 0x18]
mov qword [rbp + 0x108], rax
mov rcx, qword [rbx - 0x18]
test rcx, rcx
je 0x1400133e7
mov rax, qword [rcx]
call qword [rax + 0x20]
mov rcx, rax
test rax, rax
jne 0x140013401
call fcn.140026fe0
mov rdx, qword [rax]
mov rcx, rax
call qword [rdx + 0x20]
mov rcx, rax
test rax, rax
je 0x1400144da
mov rax, qword [rcx]
call qword [rax + 0x18]
lea rdi, [rax + 0x18]
mov qword [rbp + 0x98], rdi
mov dword [rsp + 0x40], 1
mov rsi, qword [rbp - 0x48]
movsxd r13, dword [rsi - 0x10]
movsxd r12, dword [rbx - 0x10]
lea r15d, [r12 + r13]
test r15d, r15d
js 0x140014456
mov ecx, 1
sub ecx, dword [rdi - 8]
mov eax, dword [rdi - 0xc]
sub eax, r15d
or eax, ecx
jge 0x14001345b
mov edx, r15d
lea rcx, [rbp + 0x98]
call fcn.140022e80
mov rdi, qword [rbp + 0x98]
test r12, r12
je 0x140013485
test rdi, rdi
jne 0x140013477
call fcn.1400f8c8c
mov dword [rax], 0x16
call fcn.1400f8ae0
jmp 0x140013485
mov r8, r12
mov rdx, rbx
mov rcx, rdi
call fcn.1400eb110
lea rcx, [r12 + rdi]
mov r8, r13
test r13d, r13d
je 0x1400134b0
test rcx, rcx
jne 0x1400134a8
call fcn.1400f8c8c
mov dword [rax], 0x16
call fcn.1400f8ae0
jmp 0x1400134b0
mov rdx, rsi
call fcn.1400eb110
cmp r15d, dword [rdi - 0xc]
jg 0x140014456
mov dword [rdi - 0x10], r15d
movsxd rax, r15d
mov byte [rax + rdi], 0
lea rax, [rdi - 0x18]
mov qword [rbp - 0x40], rax
mov rcx, qword [rdi - 0x18]
test rcx, rcx
je 0x1400134e4
mov rax, qword [rcx]
call qword [rax + 0x20]
mov rcx, rax
test rax, rax
jne 0x1400134fe
call fcn.140026fe0
mov rdx, qword [rax]
mov rcx, rax
call qword [rdx + 0x20]
mov rcx, rax
test rax, rax
je 0x1400144e5
mov rax, qword [rcx]
call qword [rax + 0x18]
lea rbx, [rax + 0x18]
mov qword [rbp + 0xa0], rbx
mov dword [rsp + 0x40], 3
mov rsi, qword [rbp - 0x70]
movsxd r13, dword [rsi - 0x10]
movsxd r12, dword [rdi - 0x10]
lea r15d, [r12 + r13]
test r15d, r15d
js 0x14001444b
mov ecx, 1
sub ecx, dword [rbx - 8]
mov eax, dword [rbx - 0xc]
sub eax, r15d
or eax, ecx
jge 0x140013558
mov edx, r15d
lea rcx, [rbp + 0xa0]
call fcn.140022e80
mov rbx, qword [rbp + 0xa0]
test r12, r12
je 0x140013582
test rbx, rbx
jne 0x140013574
call fcn.1400f8c8c
mov dword [rax], 0x16
call fcn.1400f8ae0
jmp 0x140013582
mov r8, r12
mov rdx, rdi
mov rcx, rbx
call fcn.1400eb110
lea rcx, [r12 + rbx]
mov r8, r13
test r13d, r13d
je 0x1400135ad
test rcx, rcx
jne 0x1400135a5
call fcn.1400f8c8c
mov dword [rax], 0x16
call fcn.1400f8ae0
jmp 0x1400135ad
mov rdx, rsi
call fcn.1400eb110
cmp r15d, dword [rbx - 0xc]
jg 0x14001444b
mov dword [rbx - 0x10], r15d
movsxd rax, r15d
mov byte [rax + rbx], 0
lea rax, [rbx - 0x18]
mov qword [rbp + 0xc0], rax
mov rcx, qword [rbx - 0x18]
test rcx, rcx
je 0x1400135e4
mov rax, qword [rcx]
call qword [rax + 0x20]
mov rcx, rax
test rax, rax
jne 0x1400135fe
call fcn.140026fe0
mov rdx, qword [rax]
mov rcx, rax
call qword [rdx + 0x20]
mov rcx, rax
test rax, rax
je 0x1400144f0
mov rax, qword [rcx]
call qword [rax + 0x18]
lea rdi, [rax + 0x18]
mov qword [rbp + 0xa8], rdi
mov dword [rsp + 0x40], 7
lea r13, str.bfb9c741749046ab93ddc750d47ca452
mov rsi, r14
inc rsi
cmp byte [rsi + r13], 0
jne 0x140013621
movsxd r12, dword [rbx - 0x10]
lea r15d, [r12 + rsi]
test r15d, r15d
js 0x140014579
mov ecx, 1
sub ecx, dword [rdi - 8]
mov eax, dword [rdi - 0xc]
sub eax, r15d
or eax, ecx
jge 0x140013664
mov edx, r15d
lea rcx, [rbp + 0xa8]
call fcn.140022e80
mov rdi, qword [rbp + 0xa8]
test r12, r12
je 0x14001368e
test rdi, rdi
jne 0x140013680
call fcn.1400f8c8c
mov dword [rax], 0x16
call fcn.1400f8ae0
jmp 0x14001368e
mov r8, r12
mov rdx, rbx
mov rcx, rdi
call fcn.1400eb110
lea rcx, [r12 + rdi]
movsxd r8, esi
test esi, esi
je 0x1400136b8
test rcx, rcx
jne 0x1400136b0
call fcn.1400f8c8c
mov dword [rax], 0x16
call fcn.1400f8ae0
jmp 0x1400136b8
mov rdx, r13
call fcn.1400eb110
cmp r15d, dword [rdi - 0xc]
jg 0x140014579
mov dword [rdi - 0x10], r15d
movsxd rax, r15d
mov byte [rax + rdi], 0
lea r12, [rdi - 0x18]
mov rcx, qword [r12]
test rcx, rcx
je 0x1400136e8
mov rax, qword [rcx]
call qword [rax + 0x20]
mov rcx, rax
test rax, rax
jne 0x140013702
call fcn.140026fe0
mov rdx, qword [rax]
mov rcx, rax
call qword [rdx + 0x20]
mov rcx, rax
test rax, rax
je 0x1400144fb
mov rax, qword [rcx]
call qword [rax + 0x18]
lea rbx, [rax + 0x18]
mov qword [rbp + 0xc8], rbx
mov dword [rsp + 0x40], 0xf
mov rsi, qword [rbp - 0x78]
mov eax, dword [rsi - 0x10]
mov dword [rsp + 0x44], eax
movsxd r13, dword [rdi - 0x10]
lea r15d, [rax + r13]
test r15d, r15d
js 0x14001456e
mov ecx, 1
sub ecx, dword [rbx - 8]
mov eax, dword [rbx - 0xc]
sub eax, r15d
or eax, ecx
jge 0x14001375f
mov edx, r15d
lea rcx, [rbp + 0xc8]
call fcn.140022e80
mov rbx, qword [rbp + 0xc8]
test r13, r13
je 0x140013789
test rbx, rbx
jne 0x14001377b
call fcn.1400f8c8c
mov dword [rax], 0x16
call fcn.1400f8ae0
jmp 0x140013789
mov r8, r13
mov rdx, rdi
mov rcx, rbx
call fcn.1400eb110
lea rcx, [rbx + r13]
movsxd r8, dword [rsp + 0x44]
test r8, r8
je 0x1400137b6
test rcx, rcx
jne 0x1400137ae
call fcn.1400f8c8c
mov dword [rax], 0x16
call fcn.1400f8ae0
jmp 0x1400137b6
mov rdx, rsi
call fcn.1400eb110
cmp r15d, dword [rbx - 0xc]
jg 0x14001456e
mov dword [rbx - 0x10], r15d
movsxd rax, r15d
mov byte [rax + rbx], 0
lea r15, [rbx - 0x18]
mov rcx, qword [r15]
test rcx, rcx
je 0x1400137e5
mov rax, qword [rcx]
call qword [rax + 0x20]
mov rcx, rax
test rax, rax
jne 0x1400137ff
call fcn.140026fe0
mov rdx, qword [rax]
mov rcx, rax
call qword [rdx + 0x20]
mov rcx, rax
test rax, rax
je 0x140014506
mov rax, qword [rcx]
call qword [rax + 0x18]
lea rdi, [rax + 0x18]
mov qword [rbp + 0xb0], rdi
mov dword [rsp + 0x40], 0x1f
movsxd r13, dword [rbx - 0x10]
lea esi, [r13 + 1]
test esi, esi
js 0x140014563
mov ecx, 1
sub ecx, dword [rdi - 8]
mov eax, dword [rdi - 0xc]
sub eax, esi
or eax, ecx
jge 0x14001384e
mov edx, esi
lea rcx, [rbp + 0xb0]
call fcn.140022e80
mov rdi, qword [rbp + 0xb0]
test r13, r13
je 0x140013878
test rdi, rdi
jne 0x14001386a
call fcn.1400f8c8c
mov dword [rax], 0x16
call fcn.1400f8ae0
jmp 0x140013878
mov r8, r13
mov rdx, rbx
mov rcx, rdi
call fcn.1400eb110
lea rcx, [rdi + r13]
test rcx, rcx
jne 0x140013893
call fcn.1400f8c8c
mov dword [rax], 0x16
call fcn.1400f8ae0
jmp 0x14001389c
movzx eax, byte [0x14014f4ec]
mov byte [rcx], al
cmp esi, dword [rdi - 0xc]
jg 0x140014563
mov dword [rdi - 0x10], esi
mov byte [r13 + rdi + 1], 0
lea rbx, [rdi - 0x18]
mov rsi, qword [rbp - 0x60]
add rsi, 0xffffffffffffffe8
cmp rbx, rsi
je 0x14001390b
cmp dword [rsi + 0x10], 0
jl 0x1400138fb
mov rax, qword [rsi]
cmp qword [rbx], rax
jne 0x1400138fb
mov rcx, rbx
call fcn.140022dd0
mov r13, rax
mov ecx, r14d
lock xadd dword [rsi + 0x10], ecx
sub ecx, 1
jg 0x1400138f1
mov rcx, qword [rsi]
mov rdi, qword [rcx]
mov rdx, rsi
call qword [rdi + 8]
lea rax, [r13 + 0x18]
mov qword [rbp - 0x60], rax
jmp 0x14001390b
mov r8d, dword [rdi - 0x10]
mov rdx, rdi
lea rcx, [rbp - 0x60]
call fcn.140022f90
mov dword [rsp + 0x40], 0xf
mov eax, r14d
lock xadd dword [rbx + 0x10], eax
sub eax, 1
jg 0x14001392c
mov rcx, qword [rbx]
mov rax, qword [rcx]
mov rdx, rbx
call qword [rax + 8]
mov dword [rsp + 0x40], 7
mov eax, r14d
lock xadd dword [r15 + 0x10], eax
sub eax, 1
jg 0x14001394e
mov rcx, qword [r15]
mov rax, qword [rcx]
mov rdx, r15
call qword [rax + 8]
mov dword [rsp + 0x40], 3
mov eax, r14d
lock xadd dword [r12 + 0x10], eax
sub eax, 1
jg 0x140013972
mov rcx, qword [r12]
mov rax, qword [rcx]
mov rdx, r12
call qword [rax + 8]
mov dword [rsp + 0x40], 1
mov eax, r14d
mov rdx, qword [rbp + 0xc0]
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x140013998
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
nop
mov eax, r14d
mov rdx, qword [rbp - 0x40]
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x1400139b2
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
call fcn.140026fe0
mov rcx, rax
test rax, rax
je 0x140014511
mov rax, qword [rax]
call qword [rax + 0x18]
add rax, 0x18
mov qword [rbp + 0xb8], rax
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbp + 0x1e8], xmm0
movups xmmword [rbp + 0x1f8], xmm0
mov qword [rbp + 0x208], rax
movzx edx, byte [rbp + 0x3e8]
lea rcx, [rbp + 0x110]
call fcn.140005aa0
mov rdi, rax
lea rcx, [rbp + 0x1e8]
call fcn.14003a9f0
mov rdx, rax
mov r9, qword [rbp - 0x60]
mov r8, qword [rdi]
lea rcx, [rbp + 0xb8]
call fcn.140023770
nop
lea rdi, [rbp + 0x1e8]
xor eax, eax
mov ecx, 0xd
rep stosb byte [rdi], al
lea rdi, [rbp + 0x1f6]
mov ecx, 0x1a
rep stosb byte [rdi], al
mov rdx, qword [rbp + 0x110]
add rdx, 0xffffffffffffffe8
mov eax, r14d
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x140013a66
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbp + 0xf0], xmm0
mov word [rbp + 0x100], ax
lea rcx, [rbp + 0xf0]
call fcn.14002f9d0
xor ebx, ebx
mov qword [rbp + 0x78], rbx
mov qword [rbp + 0x88], rbx
mov qword [rbp + 0x90], 0xf
mov byte [rbp + 0x78], bl
mov r8, r14
inc r8
cmp byte [rax + r8], bl
jne 0x140013aa3
mov rdx, rax
lea rcx, [rbp + 0x78]
call fcn.140004ef0
nop
lea rdi, [rbp + 0xf0]
xor eax, eax
mov ecx, 6
rep stosb byte [rdi], al
lea rdi, [rbp + 0xf6]
mov ecx, 0xc
rep stosb byte [rdi], al
xorps xmm0, xmm0
movups xmmword [rbp + 0x170], xmm0
mov qword [rbp + 0x180], rax
mov dword [rbp + 0x188], eax
lea rcx, [rbp + 0x170]
call fcn.140037710
mov qword [rbp + 0x58], rbx
mov qword [rbp + 0x68], rbx
mov qword [rbp + 0x70], 0xf
mov byte [rbp + 0x58], 0
mov r8, r14
inc r8
cmp byte [rax + r8], 0
jne 0x140013b11
mov rdx, rax
lea rcx, [rbp + 0x58]
call fcn.140004ef0
nop
lea rdi, [rbp + 0x170]
xor eax, eax
mov ecx, 9
rep stosb byte [rdi], al
lea rdi, [rbp + 0x17a]
mov ecx, 0x12
rep stosb byte [rdi], al
mov esi, ebx
mov r15, qword [rbp + 0xb8]
mov r12, qword [rbp + 0x410]
mov r13, qword [rbp + 0x408]
nop dword [rax]
mov qword [rbp + 8], rbx
mov qword [rbp + 0x18], rbx
mov qword [rbp + 0x20], 0xf
mov byte [rbp + 8], 0
mov byte [rbp + 0x28], 0
xorps xmm0, xmm0
movdqu xmmword [rbp + 0x30], xmm0
xorps xmm1, xmm1
movups xmmword [rbp + 0x230], xmm1
movups xmmword [rbp + 0x240], xmm1
movups xmmword [rbp + 0x250], xmm1
movups xmmword [rbp + 0x260], xmm1
lea rcx, [rbp + 0x230]
call fcn.1400b5b70
mov r8, r14
nop
inc r8
cmp byte [rax + r8], 0
jne 0x140013bb0
mov rdx, rax
lea rcx, [rbp + 8]
call fcn.140004ef0
nop
lea rdi, [rbp + 0x230]
xor eax, eax
mov ecx, 0x15
rep stosb byte [rdi], al
lea rdi, [rbp + 0x246]
mov ecx, 0x2a
rep stosb byte [rdi], al
mov qword [rbp + 0x210], rbx
mov qword [rbp + 0x220], rbx
mov qword [rbp + 0x228], 0xf
mov byte [rbp + 0x210], al
lea rcx, [r15 - 0x18]
call fcn.140022dd0
add rax, 0x18
mov qword [rbp - 0x50], rax
lea rdi, [rbp + 0x58]
cmp qword [rbp + 0x70], 0x10
cmovae rdi, qword [rbp + 0x58]
call fcn.14005bd90
mov r8d, eax
mov rdx, rdi
lea rcx, [rbp - 0x50]
call fcn.1400237a0
mov dword [rsp + 0x5c], ebx
xor edx, edx
mov r8d, 0x104
lea rcx, [rbp + 0x270]
call fcn.1400eb7c0
lea rcx, [rbp + 0x270]
call fcn.14000c780
mov qword [rbp + 0x128], rbx
mov qword [rbp + 0x138], rbx
mov qword [rbp + 0x140], 0xf
mov byte [rbp + 0x128], 0
lea rax, [rbp + 0x270]
mov r8, r14
inc r8
cmp byte [rax + r8], 0
jne 0x140013c85
lea rdx, [rbp + 0x270]
lea rcx, [rbp + 0x128]
call fcn.140004ef0
nop
mov qword [rbp + 0x1a8], rbx
mov qword [rbp + 0x1b8], rbx
mov qword [rbp + 0x1c0], 0xf
mov rdi, qword [rbp - 0x50]
mov r8, r14
inc r8
cmp byte [rdi + r8], 0
jne 0x140013cc3
mov rdx, rdi
lea rcx, [rbp + 0x1a8]
call fcn.140004ef0
lea r9, [rbp + 0x128]
lea r8, [rsp + 0x5c]
lea rdx, [rbp + 0x1a8]
lea rcx, [rbp + 8]
call fcn.1400aebb0
movzx ebx, al
mov rdx, qword [rbp + 0x140]
cmp rdx, 0x10
jb 0x140013d3c
inc rdx
mov rcx, qword [rbp + 0x128]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140013d37
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140014522
call fcn.1400e8464
test bl, bl
jne 0x140013f3f
mov ecx, 0x1f4
call fcn.14005e080
nop
lea rdx, [rdi - 0x18]
mov eax, r14d
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x140013d6a
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
nop
cmp byte [rbp + 0x28], 0
je 0x140013d82
mov rcx, qword [rbp + 0x38]
call fcn.1400608b0
mov rcx, qword [rbp + 0x30]
call fcn.1400608b0
mov rdx, qword [rbp + 0x20]
cmp rdx, 0x10
jb 0x140013dbd
inc rdx
mov rcx, qword [rbp + 8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140013db8
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140014528
call fcn.1400e8464
xor ebx, ebx
inc esi
cmp esi, 5
jl 0x140013b60
xor bl, bl
mov rdx, qword [rbp + 0x70]
cmp rdx, 0x10
jb 0x140013e07
inc rdx
mov rcx, qword [rbp + 0x58]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140013e02
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14001451c
call fcn.1400e8464
mov qword [rbp + 0x68], 0
mov qword [rbp + 0x70], 0xf
mov byte [rbp + 0x58], 0
mov rdx, qword [rbp + 0x90]
cmp rdx, 0x10
jb 0x140013e59
inc rdx
mov rcx, qword [rbp + 0x78]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140013e54
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14001455d
call fcn.1400e8464
mov qword [rbp + 0x88], 0
mov qword [rbp + 0x90], 0xf
mov byte [rbp + 0x78], 0
mov eax, r14d
lock xadd dword [r15 - 8], eax
sub eax, 1
jg 0x140013e90
mov rcx, qword [r15 - 0x18]
mov rax, qword [rcx]
lea rdx, [r15 - 0x18]
call qword [rax + 8]
nop
mov rdx, qword [rbp - 0x78]
add rdx, 0xffffffffffffffe8
mov eax, r14d
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x140013eaf
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
nop
mov rdx, qword [rbp - 0x70]
add rdx, 0xffffffffffffffe8
mov eax, r14d
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x140013ece
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
nop
mov rdx, qword [rbp - 0x60]
add rdx, 0xffffffffffffffe8
mov eax, r14d
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x140013eed
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
nop
mov eax, r14d
mov rdx, qword [rbp + 0x108]
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x140013f0b
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
nop
mov rdx, qword [rbp - 0x48]
add rdx, 0xffffffffffffffe8
lock xadd dword [rdx + 0x10], r14d
sub r14d, 1
jg 0x140013f28
mov rcx, qword [rdx]
mov rdi, qword [rcx]
call qword [rdi + 8]
movzx eax, bl
add rsp, 0x488
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret
xor ebx, ebx
mov qword [rbp - 0x38], rbx
mov qword [rbp - 0x28], rbx
mov qword [rbp - 0x20], 0xf
mov byte [rbp - 0x38], bl
cmp dword [rsp + 0x5c], 0x40000
jge 0x140014294
mov qword [rbp + 0x148], rbx
mov qword [rbp + 0x158], rbx
mov qword [rbp + 0x160], 0xf
mov byte [rbp + 0x148], bl
lea rax, [rbp + 0x270]
mov r8, r14
nop dword [rax + rax]
inc r8
cmp byte [rax + r8], 0
jne 0x140013f90
lea rdx, [rbp + 0x270]
lea rcx, [rbp + 0x148]
call fcn.140004ef0
nop
mov qword [rbp + 0xd0], rbx
mov qword [rbp + 0xe0], rbx
mov qword [rbp + 0xe8], 0xf
mov byte [rbp + 0xd0], 0
mov r8, r14
inc r8
cmp byte [rdi + r8], 0
jne 0x140013fd1
mov rdx, rdi
lea rcx, [rbp + 0xd0]
call fcn.140004ef0
nop
mov qword [rbp + 0x1c8], rbx
mov qword [rbp + 0x1e0], 0xf
mov qword [rbp + 0x1d8], rbx
mov byte [rbp + 0x1c8], 0
lea r9, [rbp - 0x38]
lea r8, [rbp + 0x148]
lea rdx, [rbp + 0xd0]
lea rcx, [rbp + 8]
call fcn.1400acd70
movzx ebx, al
mov rdx, qword [rbp + 0x1e0]
cmp rdx, 0x10
jb 0x14001406b
inc rdx
mov rcx, qword [rbp + 0x1c8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140014065
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14001452e
call fcn.1400e8464
nop
mov rdx, qword [rbp + 0xe8]
cmp rdx, 0x10
jb 0x1400140ac
inc rdx
mov rcx, qword [rbp + 0xd0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400140a7
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140014534
call fcn.1400e8464
mov qword [rbp + 0xe0], 0
mov qword [rbp + 0xe8], 0xf
mov byte [rbp + 0xd0], 0
mov rdx, qword [rbp + 0x160]
cmp rdx, 0x10
jb 0x14001410a
inc rdx
mov rcx, qword [rbp + 0x148]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140014105
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14001453a
call fcn.1400e8464
test bl, bl
je 0x140014292
cmp qword [rbp - 0x28], 0xa
jae 0x140014292
lea rdi, [rbp - 0x38]
cmp qword [rbp - 0x20], 0x10
cmovae rdi, qword [rbp - 0x38]
call fcn.140026fe0
mov rcx, rax
test rax, rax
je 0x140014540
mov rax, qword [rax]
call qword [rax + 0x18]
add rax, 0x18
mov qword [rbp - 0x58], rax
mov rdx, rdi
lea rcx, [rbp - 0x58]
call fcn.140022350
test al, al
jne 0x14001417f
test rdi, rdi
jne 0x140014163
xor eax, eax
jmp 0x14001416f
mov rax, r14
inc rax
cmp byte [rdi + rax], 0
jne 0x140014166
mov r8d, eax
mov rdx, rdi
lea rcx, [rbp - 0x58]
call fcn.140022f90
nop
lea rcx, [rbp - 0x58]
call fcn.140021630
mov word [rbp + 0x3d8], 0x3031
mov byte [rbp + 0x3da], 0
mov rdi, qword [rbp - 0x58]
cmp dword [rdi - 0x10], 0
jl 0x140014200
lea rdx, [rbp + 0x3d8]
mov rcx, rdi
call fcn.140106eb0
test rax, rax
je 0x140014200
cmp eax, edi
js 0x140014200
mov rdx, qword [rbp + 0x3d0]
lea rcx, [rbp + 0x120]
call fcn.140021f10
mov qword [rsp + 0x30], r12
mov qword [rsp + 0x28], r13
mov rcx, qword [rbp + 0x400]
mov qword [rsp + 0x20], rcx
mov r9, qword [rbp + 0x3f8]
mov r8, qword [rbp + 0x3f0]
movzx edx, byte [rbp + 0x3e8]
mov rcx, rax
call fcn.14000e720
mov dword [rsp + 0x58], 0x303131
cmp dword [rdi - 0x10], 0
jl 0x140014274
lea rdx, [rsp + 0x58]
mov rcx, rdi
call fcn.140106eb0
test rax, rax
je 0x140014274
cmp eax, edi
jne 0x140014274
lea rax, [rbp + 0x118]
mov qword [rbp - 0x40], rax
lea rdx, [rbp + 0x78]
cmp qword [rbp + 0x90], 0x10
cmovae rdx, qword [rbp + 0x78]
lea rcx, [rbp + 0x118]
call fcn.140021f10
mov rbx, rax
mov rdx, qword [rbp + 0x3d0]
lea rcx, [rbp + 0x168]
call fcn.140021f10
nop
mov rdx, rbx
mov rcx, rax
call fcn.140006500
call fcn.1400103a0
nop
lea rdx, [rdi - 0x18]
mov eax, r14d
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x14001428e
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
mov rdi, qword [rbp - 0x50]
xor ebx, ebx
mov eax, dword [rsp + 0x5c]
add eax, 0xfffffff0
cmp eax, 0x3fff0
ja 0x140014373
mov ecx, 0x1f4
call fcn.14005e080
nop
mov rdx, qword [rbp - 0x20]
cmp rdx, 0x10
jb 0x1400142ec
inc rdx
mov rcx, qword [rbp - 0x38]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400142e7
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140014551
call fcn.1400e8464
mov qword [rbp - 0x28], rbx
mov qword [rbp - 0x20], 0xf
mov byte [rbp - 0x38], 0
lea rdx, [rdi - 0x18]
mov eax, r14d
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x140014317
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
nop
cmp byte [rbp + 0x28], 0
je 0x14001432f
mov rcx, qword [rbp + 0x38]
call fcn.1400608b0
mov rcx, qword [rbp + 0x30]
call fcn.1400608b0
mov rdx, qword [rbp + 0x20]
cmp rdx, 0x10
jb 0x140013dbf
inc rdx
mov rcx, qword [rbp + 8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140014369
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14001454b
call fcn.1400e8464
jmp 0x140013dbf
mov rax, qword [rbp + 0x3e0]
mov byte [rax], 1
cmp dword [rsp + 0x5c], 0x40000
setg bl
mov rdx, qword [rbp - 0x20]
cmp rdx, 0x10
jb 0x1400143c3
inc rdx
mov rcx, qword [rbp - 0x38]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400143be
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140014551
call fcn.1400e8464
mov qword [rbp - 0x28], 0
mov qword [rbp - 0x20], 0xf
mov byte [rbp - 0x38], 0
lea rdx, [rdi - 0x18]
mov eax, r14d
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x1400143f2
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
nop
cmp byte [rbp + 0x28], 0
je 0x14001440a
mov rcx, qword [rbp + 0x38]
call fcn.1400608b0
mov rcx, qword [rbp + 0x30]
call fcn.1400608b0
mov rdx, qword [rbp + 0x20]
cmp rdx, 0x10
jb 0x140014446
inc rdx
mov rcx, qword [rbp + 8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140014440
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140014557
call fcn.1400e8464
nop
jmp 0x140013dcc
mov ecx, 0x80070057
call fcn.140027260
nop
mov ecx, 0x80070057
call fcn.140027260
nop
mov ecx, 0x80004005
call fcn.140027260
nop
mov ecx, 0x80004005
call fcn.140027260
nop
mov ecx, 0x80004005
call fcn.140027260
int3
mov ecx, 0x80004005
call fcn.140027260
int3
mov ecx, 0x80004005
call fcn.140027260
nop
mov ecx, 0x80004005
call fcn.140027260
nop
mov ecx, 0x80004005
call fcn.140027260
nop
mov ecx, 0x80004005
call fcn.140027260
nop
mov ecx, 0x80004005
call fcn.140027260
nop
mov ecx, 0x80004005
call fcn.140027260
nop
mov ecx, 0x80004005
call fcn.140027260
nop
mov ecx, 0x80004005
call fcn.140027260
nop
mov ecx, 0x80004005
call fcn.140027260
nop
mov ecx, 0x80004005
call fcn.140027260
nop
mov ecx, 0x80004005
call fcn.140027260
nop
mov ecx, 0x80004005
call fcn.140027260
nop
mov ecx, 0x80004005
call fcn.140027260
nop
call fcn.1400f8b00
nop
call fcn.1400f8b00
nop
call fcn.1400f8b00
nop
call fcn.1400f8b00
nop
call fcn.1400f8b00
nop
call fcn.1400f8b00
int3
mov ecx, 0x80004005
call fcn.140027260
nop
call fcn.1400f8b00
nop
call fcn.1400f8b00
nop
call fcn.1400f8b00
nop
call fcn.1400f8b00
nop
mov ecx, 0x80070057
call fcn.140027260
nop
mov ecx, 0x80070057
call fcn.140027260
nop
mov ecx, 0x80070057
call fcn.140027260
int3