Function at 0x140016100
Capabilities:
Contain obfuscated stackstrings

Disassembly:
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x218]
sub rsp, 0x318
mov rax, qword [0x14015a198]
xor rax, rsp
mov qword [rbp + 0x200], rax
mov qword [rbp - 0x38], r9
mov qword [rbp - 0x60], r8
mov qword [rbp - 0x58], rdx
mov r12, rcx
mov qword [rsp + 0x60], rcx
mov qword [rbp + 0x58], rcx
mov qword [rbp + 0x60], 0
mov qword [rbp + 0x70], 0
mov qword [rbp + 0x78], 0xf
mov byte [rbp + 0x60], 0
mov word [rbp + 0xdf], 0x7068
mov word [rbp + 0xe2], 0x6975
mov dword [rbp + 0xe9], 0x73253d6d
mov dword [rbp + 0xdb], 0x702e7364
mov dword [rbp + 0xe5], 0x2673253d
mov word [rbp + 0xd8], 0x752f
mov byte [rbp + 0xe4], 0x64
mov byte [rbp + 0xda], 0x69
mov byte [rbp + 0xed], 0
mov byte [rbp + 0xe1], 0x3f
call fcn.140036710
mov rcx, rax
test rax, rax
je 0x140016f78
mov rax, qword [rax]
call qword [rax + 0x18]
add rax, 0x18
mov qword [rbp - 0x18], rax
lea r9, [0x1401777b8]
mov r8, qword [r12]
lea rdx, [rbp + 0xd8]
lea rcx, [rbp - 0x18]
call fcn.1400363e0
call fcn.140036710
mov rcx, rax
test rax, rax
je 0x140016f83
mov rax, qword [rax]
call qword [rax + 0x18]
add rax, 0x18
mov qword [rbp - 0x80], rax
mov dword [rbp + 0xd1], 0x732573
mov word [rbp + 0xc8], 0x7468
mov dword [rbp + 0xcd], 0x252f2f3a
mov word [rbp + 0xcb], 0x7370
mov byte [rbp + 0xca], 0x74
lea rcx, [rbp + 0x50]
call fcn.1400369f0
nop
mov r9, qword [rbp - 0x18]
mov r8, qword [rax]
lea rdx, [rbp + 0xc8]
lea rcx, [rbp - 0x80]
call fcn.1400363e0
nop
mov rdx, qword [rbp + 0x50]
add rdx, 0xffffffffffffffe8
mov r15, 0xffffffffffffffff
mov eax, r15d
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x140016283
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
xor esi, esi
mov dword [rbp - 0x70], esi
nop dword [rax + rax]
cmp esi, 3
jne 0x1400166c7
mov dword [rbp + 0x84], 0x7068702e
mov dword [rbp + 0x80], 0x73646975
mov byte [rbp + 0x88], 0
mov dword [rbp + 0x92], 0x7068702e
mov byte [rbp + 0x96], 0
mov word [rbp + 0x90], 0x6475
lea rax, [rbp + 0x80]
mov r14, r15
nop dword [rax + rax]
inc r14
cmp byte [rax + r14], 0
jne 0x1400162e0
mov qword [rbp - 0x78], r14
test r14d, r14d
je 0x1400166c7
lea rax, [rbp + 0x90]
mov r13, r15
inc r13
cmp byte [rax + r13], 0
jne 0x140016301
xor esi, esi
mov rbx, qword [rbp - 0x80]
mov rdi, rbx
movsxd r12, dword [rbx - 0x10]
add r12, rbx
cmp rbx, r12
jae 0x1400164ee
nop dword [rax]
nop dword [rax + rax]
lea rdx, [rbp + 0x80]
mov rcx, rdi
call fcn.1400a4230
test rax, rax
je 0x14001636e
movsxd r15, r14d
nop word [rax + rax]
inc esi
lea rdi, [r15 + rax]
lea rdx, [rbp + 0x80]
mov rcx, rdi
call fcn.1400a4230
test rax, rax
jne 0x140016350
lea r15, [rax - 1]
test rdi, rdi
je 0x140016381
mov rax, r15
inc rax
cmp byte [rdi + rax], 0
jne 0x140016376
jmp 0x140016383
xor eax, eax
inc eax
movsxd rcx, eax
add rdi, rcx
cmp rdi, r12
jb 0x140016330
test esi, esi
jle 0x1400164ee
movsxd r15, dword [rbx - 0x10]
mov edi, r13d
sub edi, r14d
imul edi, esi
add edi, r15d
mov dword [rsp + 0x68], edi
mov edx, r15d
cmp edi, r15d
cmovg edx, edi
test edx, edx
js 0x140016fc4
mov ecx, 1
sub ecx, dword [rbx - 8]
mov eax, dword [rbx - 0xc]
sub eax, edx
or eax, ecx
jge 0x1400163db
lea rcx, [rbp - 0x80]
call fcn.1400389d0
mov rbx, qword [rbp - 0x80]
mov rsi, rbx
lea r12, [rbx + r15]
mov qword [rsp + 0x58], r12
cmp rbx, r12
jae 0x1400164d3
lea rdx, [rbp + 0x80]
mov rcx, rsi
call fcn.1400a4230
mov rdi, rax
test rax, rax
je 0x1400164a5
movsxd r12, r13d
movsxd rax, r14d
mov qword [rbp - 0x30], rax
nop word [rax + rax]
sub r15d, r14d
mov r14d, r15d
sub r14d, edi
add r14d, ebx
movsxd r8, r14d
lea rdx, [rax + rdi]
lea rsi, [r12 + rdi]
je 0x140016453
test rsi, rsi
je 0x140016f99
test rdx, rdx
je 0x140016f99
mov rcx, rsi
call fcn.1400715f0
test r13d, r13d
je 0x140016473
test rdi, rdi
je 0x140016fb4
mov r8, r12
lea rdx, [rbp + 0x90]
mov rcx, rdi
call fcn.1400715f0
lea eax, [r14 + r13]
movsxd rcx, eax
mov byte [rcx + rdi], 0
add r15d, r13d
lea rdx, [rbp + 0x80]
mov rcx, rsi
call fcn.1400a4230
mov rdi, rax
test rax, rax
mov r14, qword [rbp - 0x78]
mov rax, qword [rbp - 0x30]
jne 0x140016420
mov r12, qword [rsp + 0x58]
test rsi, rsi
je 0x1400164bc
mov rax, 0xffffffffffffffff
inc rax
cmp byte [rsi + rax], 0
jne 0x1400164b1
jmp 0x1400164be
xor eax, eax
inc eax
movsxd rcx, eax
add rsi, rcx
cmp rsi, r12
jb 0x1400163f0
mov edi, dword [rsp + 0x68]
test edi, edi
js 0x140016fc4
cmp edi, dword [rbx - 0xc]
jg 0x140016fc4
mov dword [rbx - 0x10], edi
movsxd rax, edi
mov byte [rax + rbx], 0
mov esi, dword [rbp - 0x70]
mov r12, qword [rsp + 0x60]
lea rcx, [rbx - 0x18]
call fcn.140035ce0
add rax, 0x18
mov qword [rbp - 0x78], rax
mov dword [rbp + 0xbd], 0x64253d
mov word [rbp + 0xb8], 0x7426
mov word [rbp + 0xbb], 0x656d
mov byte [rbp + 0xba], 0x69
call fcn.1400253b0
mov r8d, eax
lea rdx, [rbp + 0xb8]
lea rcx, [rbp - 0x78]
call fcn.140035900
lea rcx, [rsp + 0x40]
call fcn.14001b2d0
nop
lea r8, [rbp + 0x60]
mov rdx, qword [rbp - 0x78]
lea rcx, [rsp + 0x40]
call fcn.14001bdd0
movzx ebx, al
call fcn.140036710
test rax, rax
je 0x140016f6d
mov rdx, qword [rax]
mov rcx, rax
call qword [rdx + 0x18]
add rax, 0x18
mov qword [rsp + 0x68], rax
xor r8d, r8d
test bl, bl
setne r8b
lea rdx, [0x140177808]
lea rcx, [rsp + 0x68]
call fcn.1400363e0
lea rax, [rbp + 0x28]
mov qword [rsp + 0x58], rax
mov rdi, qword [rsp + 0x68]
add rdi, 0xffffffffffffffe8
mov rcx, rdi
call fcn.140035ce0
add rax, 0x18
mov qword [rbp + 0x28], rax
mov rcx, qword [r12]
sub rcx, 0x18
call fcn.140035ce0
add rax, 0x18
mov qword [rbp + 0x30], rax
lea rdx, [rbp + 0x28]
lea rcx, [rbp + 0x30]
call fcn.140013200
test bl, bl
je 0x1400166d0
call fcn.140036710
mov rcx, rax
test rax, rax
je 0x140016ff0
mov rax, qword [rax]
call qword [rax + 0x18]
add rax, 0x18
mov qword [rbp - 0x50], rax
mov word [rsp + 0x51], 0x73
mov byte [rsp + 0x50], 0x25
lea r8, [rbp + 0x60]
cmp qword [rbp + 0x78], 0x10
cmovae r8, qword [rbp + 0x60]
lea rdx, [rsp + 0x50]
lea rcx, [rbp - 0x50]
call fcn.1400363e0
lea rcx, [rbp - 0x50]
call fcn.140039b50
mov rcx, qword [rax]
mov ebx, dword [rcx - 0x10]
mov r8d, ebx
lea rdx, [0x140177818]
lea rcx, [rsp + 0x68]
call fcn.1400363e0
lea rax, [rbp + 0x38]
mov qword [rsp + 0x58], rax
mov rdi, qword [rsp + 0x68]
add rdi, 0xffffffffffffffe8
mov rcx, rdi
call fcn.140035ce0
add rax, 0x18
mov qword [rbp + 0x38], rax
mov rcx, qword [r12]
sub rcx, 0x18
call fcn.140035ce0
add rax, 0x18
mov qword [rbp + 0x40], rax
lea rdx, [rbp + 0x38]
lea rcx, [rbp + 0x40]
call fcn.140013200
nop
mov rdx, qword [rbp - 0x50]
mov r15, 0xffffffffffffffff
add rdx, 0xffffffffffffffe8
mov eax, r15d
lock xadd dword [rdx + 0x10], eax
cmp ebx, 0x6c
je 0x140016a81
sub eax, 1
jg 0x1400166d7
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
jmp 0x1400166d7
mov rbx, qword [rbp - 0x80]
jmp 0x1400164f6
mov r15, 0xffffffffffffffff
mov ecx, 0x12c
call fcn.140028d10
nop
mov eax, r15d
lock xadd dword [rdi + 0x10], eax
sub eax, 1
jg 0x1400166fc
mov rcx, qword [rdi]
mov rax, qword [rcx]
mov rdx, rdi
call qword [rax + 8]
nop
lea rcx, [rsp + 0x40]
call fcn.14001b2e0
nop
mov rdx, qword [rbp - 0x78]
add rdx, 0xffffffffffffffe8
mov eax, r15d
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x140016725
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
inc esi
mov dword [rbp - 0x70], esi
cmp esi, 6
jl 0x140016290
xor ebx, ebx
call fcn.140036710
mov rcx, rax
test rax, rax
je 0x140016f8e
mov rax, qword [rax]
call qword [rax + 0x18]
add rax, 0x18
mov qword [rsp + 0x48], rax
lea rdx, [0x140177848]
lea rcx, [rbp + 0x48]
call fcn.14001c1f0
nop
mov r8d, ebx
mov rdx, qword [rax]
lea rcx, [rsp + 0x48]
call fcn.1400363e0
nop
mov rdx, qword [rbp + 0x48]
add rdx, 0xffffffffffffffe8
mov eax, r15d
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x140016795
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
lea rax, [rbp + 0x20]
mov qword [rbp - 0x68], rax
mov rcx, qword [rsp + 0x48]
add rcx, 0xffffffffffffffe8
call fcn.140035ce0
add rax, 0x18
mov qword [rbp + 0x20], rax
mov rcx, qword [r12]
sub rcx, 0x18
call fcn.140035ce0
add rax, 0x18
mov qword [rbp - 0x58], rax
lea rdx, [rbp + 0x20]
lea rcx, [rbp - 0x58]
call fcn.140013200
lea r9, [rbp + 0x60]
cmp qword [rbp + 0x78], 0x10
cmovae r9, qword [rbp + 0x60]
mov r8, qword [rbp + 0x70]
lea rdx, [0x140177860]
lea rcx, [rsp + 0x48]
call fcn.1400363e0
xor r14b, r14b
mov rbx, qword [rsp + 0x48]
movsxd rdi, dword [rbx - 0x10]
xor eax, eax
test edi, edi
jle 0x14001686d
nop word [rax + rax]
movsxd rsi, eax
lea rcx, [rsi + rbx]
cmp byte [rcx], 0x2b
jne 0x14001684d
test r14b, r14b
jne 0x140016846
mov r14b, 1
mov ecx, 1
sub ecx, dword [rbx - 8]
mov eax, dword [rbx - 0xc]
sub eax, edi
or eax, ecx
jge 0x140016846
mov edx, edi
lea rcx, [rsp + 0x48]
call fcn.1400389d0
mov rbx, qword [rsp + 0x48]
lea rcx, [rsi + rbx]
mov byte [rcx], 0x2d
call fcn.1400a4010
sub eax, ebx
cmp eax, edi
jl 0x140016810
test r14b, r14b
je 0x14001686d
cmp edi, dword [rbx - 0xc]
jg 0x140016f62
mov dword [rbx - 0x10], edi
mov byte [rdi + rbx], 0
xor r14b, r14b
movsxd rdi, dword [rbx - 0x10]
xor eax, eax
test edi, edi
jle 0x1400168dd
nop word [rax + rax]
movsxd rsi, eax
lea rcx, [rbx + rsi]
cmp byte [rcx], 0x2f
jne 0x1400168bd
test r14b, r14b
jne 0x1400168b6
mov r14b, 1
mov ecx, 1
sub ecx, dword [rbx - 8]
mov eax, dword [rbx - 0xc]
sub eax, edi
or eax, ecx
jge 0x1400168b6
mov edx, edi
lea rcx, [rsp + 0x48]
call fcn.1400389d0
mov rbx, qword [rsp + 0x48]
lea rcx, [rbx + rsi]
mov byte [rcx], 0x5f
call fcn.1400a4010
sub eax, ebx
cmp eax, edi
jl 0x140016880
test r14b, r14b
je 0x1400168dd
cmp edi, dword [rbx - 0xc]
jg 0x140016f62
mov dword [rbx - 0x10], edi
mov byte [rdi + rbx], 0
xor r14b, r14b
movsxd rdi, dword [rbx - 0x10]
xor eax, eax
test edi, edi
jle 0x14001694d
nop word [rax + rax]
movsxd rsi, eax
lea rcx, [rbx + rsi]
cmp byte [rcx], 0x3d
jne 0x14001692d
test r14b, r14b
jne 0x140016926
mov r14b, 1
mov ecx, 1
sub ecx, dword [rbx - 8]
mov eax, dword [rbx - 0xc]
sub eax, edi
or eax, ecx
jge 0x140016926
mov edx, edi
lea rcx, [rsp + 0x48]
call fcn.1400389d0
mov rbx, qword [rsp + 0x48]
lea rcx, [rbx + rsi]
mov byte [rcx], 0x20
call fcn.1400a4010
sub eax, ebx
cmp eax, edi
jl 0x1400168f0
test r14b, r14b
je 0x14001694d
cmp edi, dword [rbx - 0xc]
jg 0x140016f62
mov dword [rbx - 0x10], edi
mov byte [rdi + rbx], 0
lea rcx, [rsp + 0x48]
call fcn.140039b50
lea rax, [rbp - 0x60]
mov qword [rbp - 0x68], rax
mov rbx, qword [rsp + 0x48]
lea rcx, [rbx - 0x18]
call fcn.140035ce0
add rax, 0x18
mov qword [rbp - 0x60], rax
mov rcx, qword [r12]
sub rcx, 0x18
call fcn.140035ce0
add rax, 0x18
mov qword [rbp - 0x38], rax
lea rdx, [rbp - 0x60]
lea rcx, [rbp - 0x38]
call fcn.140013200
nop
mov eax, r15d
lock xadd dword [rbx - 8], eax
sub eax, 1
jg 0x1400169b4
mov rcx, qword [rbx - 0x18]
mov rax, qword [rcx]
lea rdx, [rbx - 0x18]
call qword [rax + 8]
nop
mov rdx, qword [rbp - 0x80]
add rdx, 0xffffffffffffffe8
mov eax, r15d
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x1400169d3
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
nop
mov rdx, qword [rbp - 0x18]
add rdx, 0xffffffffffffffe8
mov eax, r15d
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x1400169f2
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
nop
mov rdx, qword [rbp + 0x78]
cmp rdx, 0x10
jb 0x140016a2d
inc rdx
mov rcx, qword [rbp + 0x60]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140016a28
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140016ffb
call fcn.140043b04
mov qword [rbp + 0x70], 0
mov qword [rbp + 0x78], 0xf
mov byte [rbp + 0x60], 0
mov rdx, qword [r12]
sub rdx, 0x18
lock xadd dword [rdx + 0x10], r15d
sub r15d, 1
jg 0x140016a5e
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
mov rcx, qword [rbp + 0x200]
xor rcx, rsp
call fcn.140043aa0
add rsp, 0x318
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret
sub eax, 1
jg 0x140016a90
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
nop
mov rdx, qword [rsp + 0x68]
add rdx, 0xffffffffffffffe8
mov eax, r15d
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x140016ab0
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
nop
lea rcx, [rsp + 0x40]
call fcn.14001b2e0
nop
mov rdx, qword [rbp - 0x78]
add rdx, 0xffffffffffffffe8
mov eax, r15d
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x140016ad9
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
mov dword [rbp + 0x98], 0x74666f53
mov dword [rbp + 0xa6], 0x656469
mov dword [rbp + 0x9e], 0x535c6572
mov dword [rbp + 0xa2], 0x766f7250
mov word [rbp + 0x9c], 0x6177
lea rcx, [rbp - 0x20]
call fcn.14000cbd0
nop
lea rax, [rsp + 0x70]
mov qword [rsp + 0x58], rax
lea rax, [rbp - 0x48]
mov qword [rbp - 0x30], rax
lea rax, [rsp + 0x78]
mov qword [rbp - 0x40], rax
lea rbx, [rbp + 0x60]
cmp qword [rbp + 0x78], 0x10
cmovae rbx, qword [rbp + 0x60]
call fcn.140036710
mov rcx, rax
test rax, rax
je 0x140016fcf
mov rax, qword [rax]
call qword [rax + 0x18]
add rax, 0x18
mov qword [rsp + 0x70], rax
test rbx, rbx
je 0x140016b8b
cmp rbx, 0x10000
jae 0x140016b7a
movzx edx, bx
lea rcx, [rsp + 0x70]
call fcn.140036ea0
jmp 0x140016b9e
mov rax, r15
nop dword [rax]
inc rax
cmp byte [rbx + rax], 0
jne 0x140016b80
jmp 0x140016b8d
xor eax, eax
mov r8d, eax
mov rdx, rbx
lea rcx, [rsp + 0x70]
call fcn.1400399e0
nop
lea rax, [rsp + 0x70]
mov qword [rbp - 0x70], rax
mov rcx, qword [rbp - 0x20]
add rcx, 0xffffffffffffffe8
call fcn.140035ce0
add rax, 0x18
mov qword [rbp - 0x48], rax
lea rax, [rbp - 0x48]
mov qword [rbp - 0x68], rax
call fcn.140036710
mov rcx, rax
test rax, rax
je 0x140016fda
mov rax, qword [rax]
call qword [rax + 0x18]
add rax, 0x18
mov qword [rsp + 0x78], rax
lea rax, [rbp + 0x98]
cmp rax, 0x10000
jae 0x140016c09
lea rax, [rbp + 0x98]
movzx edx, ax
lea rcx, [rsp + 0x78]
call fcn.140036ea0
jmp 0x140016c31
lea rcx, [rbp + 0x98]
mov rax, r15
inc rax
cmp byte [rcx + rax], 0
jne 0x140016c13
mov r8d, eax
lea rdx, [rbp + 0x98]
lea rcx, [rsp + 0x78]
call fcn.1400399e0
nop
lea rax, [rsp + 0x78]
mov qword [rsp + 0x58], rax
mov qword [rbp - 0x40], 0
lea rax, [rbp - 0x40]
mov qword [rsp + 0x20], rax
mov r9d, 0x20206
xor r8d, r8d
mov rdx, qword [rsp + 0x78]
mov rcx, 0xffffffff80000002
call fcn.140027970
test eax, eax
jne 0x140016c9f
mov rax, qword [rsp + 0x70]
mov ecx, dword [rax - 0x10]
mov dword [rsp + 0x28], ecx
mov qword [rsp + 0x20], rax
mov r9d, 1
mov r8, qword [rbp - 0x48]
lea rdx, [0x140176fa9]
mov rcx, qword [rbp - 0x40]
call fcn.1400285e0
mov rcx, qword [rbp - 0x40]
call fcn.1400275a0
nop
mov rdx, qword [rsp + 0x78]
add rdx, 0xffffffffffffffe8
mov eax, r15d
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x140016cbf
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
nop
mov rdx, qword [rbp - 0x48]
add rdx, 0xffffffffffffffe8
mov eax, r15d
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x140016cde
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
nop
mov rdx, qword [rsp + 0x70]
add rdx, 0xffffffffffffffe8
mov eax, r15d
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x140016cfd
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
xor edx, edx
mov r8d, 0x104
lea rcx, [rbp + 0xf0]
call fcn.140073280
mov r8d, 0x104
lea rdx, [rbp + 0xf0]
xor ecx, ecx
call fcn.140024f80
lea rcx, [rbp + 0xf0]
call fcn.140027060
mov dword [rbp + 0xb1], 0x746164
mov byte [rbp + 0xb0], 0x2e
lea r8, [rbp + 0xb0]
lea rdx, [rbp - 0x20]
lea rcx, [rbp + 0x18]
call fcn.140034910
nop
mov rdx, qword [rbp + 0x18]
lea rcx, [rbp + 0xf0]
call fcn.140026d00
mov qword [rsp + 0x30], 0
mov dword [rsp + 0x28], 0x80
mov dword [rsp + 0x20], 2
xor r9d, r9d
xor r8d, r8d
mov edx, 0x40000000
lea rcx, [rbp + 0xf0]
call fcn.140024040
mov rbx, rax
mov dword [rbp - 0x28], 0
lea rdx, [rbp + 0x60]
cmp qword [rbp + 0x78], 0x10
cmovae rdx, qword [rbp + 0x60]
mov qword [rsp + 0x20], 0
lea r9, [rbp - 0x28]
mov r8d, dword [rbp + 0x70]
mov rcx, rax
call fcn.1400297a0
mov rcx, rbx
call fcn.140023630
mov byte [rsp + 0x41], 0
mov rcx, qword [r12]
sub rcx, 0x18
call fcn.140035ce0
add rax, 0x18
mov qword [rbp - 0x10], rax
lea rax, [rsp + 0x41]
mov qword [rsp + 0x30], rax
movzx eax, byte [rbp + 0x288]
mov byte [rsp + 0x28], al
mov rax, qword [rbp + 0x280]
mov qword [rsp + 0x20], rax
mov r9, qword [rbp - 0x38]
mov r8, qword [rbp - 0x60]
mov rbx, qword [rbp - 0x58]
mov rdx, rbx
lea rcx, [rbp - 0x10]
call fcn.140007960
call fcn.140036710
mov rcx, rax
test rax, rax
je 0x140016fe5
mov rax, qword [rax]
call qword [rax + 0x18]
add rax, 0x18
mov qword [rsp + 0x60], rax
xor r8d, r8d
cmp byte [rsp + 0x41], r8b
setne r8b
lea rdx, [0x140177828]
lea rcx, [rsp + 0x60]
call fcn.1400363e0
lea rax, [rbp - 8]
mov qword [rbp - 0x68], rax
mov rcx, qword [rsp + 0x60]
add rcx, 0xffffffffffffffe8
call fcn.140035ce0
add rax, 0x18
mov qword [rbp - 8], rax
mov rcx, qword [r12]
sub rcx, 0x18
call fcn.140035ce0
add rax, 0x18
mov qword [rbp], rax
lea rdx, [rbp - 8]
lea rcx, [rbp]
call fcn.140013200
xor r8d, r8d
cmp byte [rbx], r8b
setne r8b
lea rdx, [0x140177838]
lea rcx, [rsp + 0x60]
call fcn.1400363e0
lea rax, [rbp + 8]
mov qword [rbp - 0x68], rax
mov rbx, qword [rsp + 0x60]
lea rcx, [rbx - 0x18]
call fcn.140035ce0
add rax, 0x18
mov qword [rbp + 8], rax
mov rcx, qword [r12]
sub rcx, 0x18
call fcn.140035ce0
add rax, 0x18
mov qword [rbp + 0x10], rax
lea rdx, [rbp + 8]
lea rcx, [rbp + 0x10]
call fcn.140013200
nop
mov eax, r15d
lock xadd dword [rbx - 8], eax
sub eax, 1
jg 0x140016f18
mov rcx, qword [rbx - 0x18]
mov rax, qword [rcx]
lea rdx, [rbx - 0x18]
call qword [rax + 8]
nop
mov rdx, qword [rbp + 0x18]
add rdx, 0xffffffffffffffe8
mov eax, r15d
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x140016f37
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
nop
mov rdx, qword [rbp - 0x20]
add rdx, 0xffffffffffffffe8
mov ebx, 1
mov eax, r15d
lock xadd dword [rdx + 0x10], eax
sub eax, ebx
jg 0x140016735
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
jmp 0x140016735
mov ecx, 0x80070057
call fcn.140035ad0
nop
mov ecx, 0x80004005
call fcn.140035ad0
nop
mov ecx, 0x80004005
call fcn.140035ad0
nop
mov ecx, 0x80004005
call fcn.140035ad0
nop
mov ecx, 0x80004005
call fcn.140035ad0
int3
call fcn.1400810d4
mov dword [rax], 0x16
call fcn.140080f28
mov ecx, 0x80070057
call fcn.140035ad0
int3
call fcn.1400810d4
mov dword [rax], 0x16
call fcn.140080f28
mov ecx, 0x80070057
call fcn.140035ad0
nop
mov ecx, 0x80004005
call fcn.140035ad0
nop
mov ecx, 0x80004005
call fcn.140035ad0
nop
mov ecx, 0x80004005
call fcn.140035ad0
nop
mov ecx, 0x80004005
call fcn.140035ad0
nop
call fcn.140080f48
int3