Function at 0x14035da50
Capabilities:
Print debug messages

Disassembly:
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x2b8]
sub rsp, 0x3b8
mov qword [rbp + 0x1c0], 0xfffffffffffffffe
mov r15, rdx
mov r12, rcx
lea r13, [rcx + 0x10]
mov rcx, r13
call fcn.140316250
lea rax, [0x140049658]
mov qword [rsp + 0x48], rax
lea rcx, [0x1400495e0]
mov qword [rsp + 0x38], rcx
xor dil, dil
xor esi, esi
mov rdx, qword [r15]
mov r8d, dword [rdx + 4]
or rbx, 0xffffffffffffffff
test r8d, r8d
jle 0x14035dbde
xor r14d, r14d
lea r13, [0x1400495e0]
nop dword [rax]
nop dword [rax + rax]
mov rcx, qword [rdx + 0x10]
add rcx, r14
movzx ebx, word [rcx + rdx]
cmp bx, 0x25
jne 0x14035db55
test dil, dil
jne 0x14035db55
lea eax, [rsi + 1]
cmp eax, r8d
jge 0x14035db55
mov rcx, qword [rdx + 0x10]
add rcx, r14
cmp word [rcx + rdx + 2], 0x7b
jne 0x14035db55
mov rax, qword [rsp + 0x38]
cmp dword [rax + 4], 0
je 0x14035db52
lea rdx, [rsp + 0x38]
lea rcx, [rsp + 0x48]
call fcn.1402d73d0
mov rcx, qword [rsp + 0x38]
cmp rcx, r13
je 0x14035db52
mov qword [rbp - 0x50], rcx
mov qword [rsp + 0x38], r13
mov eax, dword [rcx]
test eax, eax
je 0x14035db44
cmp eax, 0xffffffff
je 0x14035db52
lock add dword [rcx], 0xffffffff
setne al
test al, al
jne 0x14035db52
mov rcx, qword [rbp - 0x50]
mov edx, 2
lea r8d, [rdx + 6]
call fcn.140379300
mov dil, 1
movzx edx, bx
lea rcx, [rsp + 0x38]
call fcn.1403646a0
cmp bx, 0x7d
jne 0x14035dbba
test dil, dil
je 0x14035dbba
lea rdx, [rsp + 0x38]
lea rcx, [rsp + 0x48]
call fcn.1402d73d0
mov rcx, qword [rsp + 0x38]
cmp rcx, r13
je 0x14035dbb7
mov qword [rbp - 0x48], rcx
mov qword [rsp + 0x38], r13
mov eax, dword [rcx]
test eax, eax
je 0x14035dba9
cmp eax, 0xffffffff
je 0x14035dbb7
lock add dword [rcx], 0xffffffff
setne al
test al, al
jne 0x14035dbb7
mov rcx, qword [rbp - 0x48]
mov edx, 2
lea r8d, [rdx + 6]
call fcn.140379300
xor dil, dil
inc esi
add r14, 2
mov rdx, qword [r15]
mov r8d, dword [rdx + 4]
cmp esi, r8d
jl 0x14035dad0
mov rax, qword [rsp + 0x48]
lea r13, [r12 + 0x10]
or rbx, 0xffffffffffffffff
mov rcx, qword [rsp + 0x38]
cmp dword [rcx + 4], 0
je 0x14035dbfd
lea rdx, [rsp + 0x38]
lea rcx, [rsp + 0x48]
call fcn.1402d73d0
mov rax, qword [rsp + 0x48]
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x50], xmm0
mov qword [rsp + 0x60], 0
mov ecx, dword [rax + 0xc]
sub ecx, dword [rax + 8]
lea eax, [rcx + 1]
movsxd rcx, eax
mov eax, 8
mul rcx
cmovo rax, rbx
mov rcx, rax
call fcn.1404e21d4
mov rcx, qword [r12 + 8]
mov qword [r12 + 8], rax
test rcx, rcx
je 0x14035dc43
call fcn.1404e1830
mov rax, qword [rsp + 0x48]
mov edx, dword [rax + 0xc]
sub edx, dword [rax + 8]
mov rcx, qword [r12 + 8]
movsxd rax, edx
mov qword [rcx + rax*8], 0
xor r14b, r14b
xor sil, sil
lea rax, [0x1400495e0]
mov qword [rsp + 0x40], rax
xor r15d, r15d
mov rax, qword [rsp + 0x48]
mov edx, dword [rax + 8]
mov ecx, dword [rax + 0xc]
sub ecx, edx
lea r8d, [r15 + 1]
test ecx, ecx
jle 0x14035e806
xor edi, edi
lea r10, [0x140015b40]
movsxd rcx, edx
add rcx, rdi
mov rax, qword [rax + rcx*8 + 0x10]
mov qword [rsp + 0x30], rax
mov ecx, dword [rax]
inc ecx
cmp ecx, 1
jbe 0x14035dcb1
lock inc dword [rax]
mov rax, rbx
inc rax
cmp byte [r10 + rax], 0
jne 0x14035dcb4
mov dword [rbp + 0x110], eax
mov qword [rbp + 0x118], r10
movaps xmm0, xmmword [rbp + 0x110]
movdqa xmmword [rbp + 0x120], xmm0
lea rdx, [rbp + 0x120]
lea rcx, [rsp + 0x30]
call fcn.14036c980
test al, al
je 0x14035e620
mov eax, 0x7d
mov word [rbp + 0x308], ax
lea r8d, [rax - 0x7c]
movzx edx, ax
lea rcx, [rsp + 0x30]
call fcn.140367330
test al, al
je 0x14035e620
mov rax, rbx
lea rcx, [0x1400153f8]
inc rax
cmp byte [rcx + rax], 0
jne 0x14035dd22
mov dword [rbp - 0x30], eax
mov qword [rbp - 0x28], rcx
movaps xmm0, xmmword [rbp - 0x30]
movdqa xmmword [rbp + 0x130], xmm0
lea rdx, [rbp + 0x130]
lea rcx, [rsp + 0x30]
call fcn.140364270
test al, al
je 0x14035dd68
mov rax, qword [r12 + 8]
lea rcx, [0x1400153f8]
mov qword [rax + rdi*8], rcx
jmp 0x14035e73d
mov rax, rbx
lea rcx, [0x1400153e8]
inc rax
cmp byte [rcx + rax], 0
jne 0x14035dd72
mov dword [rbp - 0x20], eax
mov qword [rbp - 0x18], rcx
movaps xmm0, xmmword [rbp - 0x20]
movdqa xmmword [rbp + 0x140], xmm0
lea rdx, [rbp + 0x140]
lea rcx, [rsp + 0x30]
call fcn.140364270
test al, al
je 0x14035ddb8
mov rax, qword [r12 + 8]
lea r9, [0x1400153e8]
mov qword [rax + rdi*8], r9
jmp 0x14035e73d
mov rax, rbx
lea rcx, [0x140015400]
inc rax
cmp byte [rcx + rax], 0
jne 0x14035ddc2
mov dword [rbp - 0x10], eax
mov qword [rbp - 8], rcx
movaps xmm0, xmmword [rbp - 0x10]
movdqa xmmword [rbp + 0x150], xmm0
lea rdx, [rbp + 0x150]
lea rcx, [rsp + 0x30]
call fcn.140364270
test al, al
je 0x14035de08
mov rax, qword [r12 + 8]
lea rcx, [0x140015400]
mov qword [rax + rdi*8], rcx
jmp 0x14035e73d
mov rax, rbx
lea rcx, [0x140015410]
inc rax
cmp byte [rcx + rax], 0
jne 0x14035de12
mov dword [rbp], eax
mov qword [rbp + 8], rcx
movaps xmm0, xmmword [rbp]
movdqa xmmword [rbp + 0x160], xmm0
lea rdx, [rbp + 0x160]
lea rcx, [rsp + 0x30]
call fcn.140364270
test al, al
je 0x14035de58
mov rax, qword [r12 + 8]
lea r9, [0x140015410]
mov qword [rax + rdi*8], r9
jmp 0x14035e73d
mov rax, rbx
lea rcx, [0x140015418]
inc rax
cmp byte [rcx + rax], 0
jne 0x14035de62
mov dword [rbp + 0x10], eax
mov qword [rbp + 0x18], rcx
movaps xmm0, xmmword [rbp + 0x10]
movdqa xmmword [rbp + 0x170], xmm0
lea rdx, [rbp + 0x170]
lea rcx, [rsp + 0x30]
call fcn.140364270
test al, al
je 0x14035dea8
mov rax, qword [r12 + 8]
lea rcx, [0x140015418]
mov qword [rax + rdi*8], rcx
jmp 0x14035e73d
mov rax, rbx
lea rcx, [0x140015420]
inc rax
cmp byte [rcx + rax], 0
jne 0x14035deb2
mov dword [rbp + 0x20], eax
mov qword [rbp + 0x28], rcx
movaps xmm0, xmmword [rbp + 0x20]
movdqa xmmword [rbp + 0x180], xmm0
lea rdx, [rbp + 0x180]
lea rcx, [rsp + 0x30]
call fcn.140364270
test al, al
je 0x14035def8
mov rax, qword [r12 + 8]
lea r9, [0x140015420]
mov qword [rax + rdi*8], r9
jmp 0x14035e73d
mov rax, rbx
lea rcx, [0x14001542c]
inc rax
cmp byte [rcx + rax], 0
jne 0x14035df02
mov dword [rbp + 0x30], eax
mov qword [rbp + 0x38], rcx
movaps xmm0, xmmword [rbp + 0x30]
movdqa xmmword [rbp + 0x190], xmm0
lea rdx, [rbp + 0x190]
lea rcx, [rsp + 0x30]
call fcn.140364270
test al, al
je 0x14035df48
mov rax, qword [r12 + 8]
lea rcx, [0x14001542c]
mov qword [rax + rdi*8], rcx
jmp 0x14035e73d
mov rax, rbx
lea rcx, [0x140015438]
inc rax
cmp byte [rcx + rax], 0
jne 0x14035df52
mov dword [rbp + 0x40], eax
mov qword [rbp + 0x48], rcx
movaps xmm0, xmmword [rbp + 0x40]
movdqa xmmword [rbp + 0x1a0], xmm0
lea rdx, [rbp + 0x1a0]
lea rcx, [rsp + 0x30]
call fcn.140364270
test al, al
je 0x14035df98
mov rax, qword [r12 + 8]
lea r9, [0x140015438]
mov qword [rax + rdi*8], r9
jmp 0x14035e73d
mov rax, rbx
lea rcx, [0x140015448]
inc rax
cmp byte [rcx + rax], 0
jne 0x14035dfa2
mov dword [rbp + 0x50], eax
mov qword [rbp + 0x58], rcx
movaps xmm0, xmmword [rbp + 0x50]
movdqa xmmword [rbp + 0x1b0], xmm0
lea rdx, [rbp + 0x1b0]
lea rcx, [rsp + 0x30]
call fcn.140364270
test al, al
je 0x14035dfe8
mov rax, qword [r12 + 8]
lea rcx, [0x140015448]
mov qword [rax + rdi*8], rcx
jmp 0x14035e73d
mov rax, rbx
lea rcx, [0x140015458]
inc rax
cmp byte [rcx + rax], 0
jne 0x14035dff2
mov dword [rbp + 0x60], eax
mov qword [rbp + 0x68], rcx
movaps xmm0, xmmword [rbp + 0x60]
movdqa xmmword [rbp + 0x230], xmm0
lea rdx, [rbp + 0x230]
lea rcx, [rsp + 0x30]
call fcn.140364270
test al, al
je 0x14035e038
mov rax, qword [r12 + 8]
lea r9, [0x140015458]
mov qword [rax + rdi*8], r9
jmp 0x14035e73d
mov rax, rbx
lea rcx, [0x140015468]
inc rax
cmp byte [rcx + rax], 0
jne 0x14035e042
mov dword [rbp + 0x70], eax
mov qword [rbp + 0x78], rcx
movaps xmm0, xmmword [rbp + 0x70]
movdqa xmmword [rbp + 0x1d0], xmm0
mov r8d, 1
lea rdx, [rbp + 0x1d0]
lea rcx, [rsp + 0x30]
call fcn.14036c980
test al, al
je 0x14035e17b
mov rax, qword [r12 + 8]
lea rcx, [0x140015468]
mov qword [rax + rdi*8], rcx
mov ecx, 0x20
mov word [rbp + 0x310], cx
lea r9d, [rcx - 0x1f]
xor r8d, r8d
movzx edx, cx
lea rcx, [rsp + 0x30]
call fcn.140368050
test eax, eax
jle 0x14035e11e
mov rcx, qword [rsp + 0x30]
mov r9d, dword [rcx + 4]
sub r9d, eax
sub r9d, 2
lea r8d, [rax + 1]
lea rdx, [rbp - 0x80]
lea rcx, [rsp + 0x30]
call fcn.140368f40
nop
mov rdx, rax
mov rcx, r13
call fcn.1402d73d0
nop
mov rcx, qword [rbp - 0x80]
mov eax, dword [rcx]
test eax, eax
je 0x14035e10b
cmp eax, 0xffffffff
je 0x14035e73d
mov eax, ebx
lock xadd dword [rcx], eax
add eax, 0xffffffff
setne al
test al, al
jne 0x14035e73d
mov rcx, qword [rbp - 0x80]
mov edx, 2
lea r8d, [rdx + 6]
call fcn.140379300
jmp 0x14035e73d
lea rax, [0x1400495e0]
mov qword [rbp - 0x40], rax
lea rdx, [rbp - 0x40]
mov rcx, r13
call fcn.1402d73d0
nop
mov eax, dword [0x1400495e0]
test eax, eax
je 0x14035e161
cmp eax, 0xffffffff
je 0x14035e73d
mov eax, ebx
lock xadd dword [0x1400495e0], eax
add eax, 0xffffffff
setne al
test al, al
jne 0x14035e73d
mov edx, 2
lea r8d, [rdx + 6]
lea rcx, [0x1400495e0]
call fcn.140379300
jmp 0x14035e73d
mov rax, rbx
lea rcx, [0x140015470]
inc rax
cmp byte [rcx + rax], 0
jne 0x14035e185
mov dword [rbp + 0x80], eax
mov qword [rbp + 0x88], rcx
movaps xmm0, xmmword [rbp + 0x80]
movdqa xmmword [rbp + 0x1e0], xmm0
mov r8d, 1
lea rdx, [rbp + 0x1e0]
lea rcx, [rsp + 0x30]
call fcn.14036c980
test al, al
mov rax, rbx
je 0x14035e21b
lea rcx, [0x140015b50]
nop
inc rax
cmp byte [rcx + rax], 0
jne 0x14035e1d0
mov dword [rbp + 0x90], eax
mov qword [rbp + 0x98], rcx
movaps xmm0, xmmword [rbp + 0x90]
movdqa xmmword [rbp + 0x1f0], xmm0
lea rdx, [rbp + 0x1f0]
lea rcx, [rsp + 0x40]
call fcn.140364720
mov rax, qword [r12 + 8]
lea rcx, [0x1401ad7c0]
mov qword [rax + rdi*8], rcx
jmp 0x14035e73d
lea rcx, [0x140015480]
inc rax
cmp byte [rcx + rax], 0
jne 0x14035e222
mov dword [rbp + 0xa0], eax
mov qword [rbp + 0xa8], rcx
movaps xmm0, xmmword [rbp + 0xa0]
movdqa xmmword [rbp + 0x200], xmm0
lea rdx, [rbp + 0x200]
lea rcx, [rsp + 0x30]
call fcn.140364270
test al, al
je 0x14035e284
movzx r14d, r14b
test sil, sil
mov eax, 1
cmovne r14d, eax
mov rax, qword [r12 + 8]
lea rcx, [0x140015480]
mov qword [rax + rdi*8], rcx
mov sil, 1
jmp 0x14035e73d
mov rax, rbx
lea rcx, [0x140015490]
nop
inc rax
cmp byte [rcx + rax], 0
jne 0x14035e290
mov dword [rbp + 0xb0], eax
mov qword [rbp + 0xb8], rcx
movaps xmm0, xmmword [rbp + 0xb0]
movdqa xmmword [rbp + 0x210], xmm0
lea rdx, [rbp + 0x210]
lea rcx, [rsp + 0x30]
call fcn.140364270
test al, al
je 0x14035e2f2
movzx r14d, r14b
test sil, sil
mov ecx, 1
cmovne r14d, ecx
mov rax, qword [r12 + 8]
lea r9, [0x140015490]
mov qword [rax + rdi*8], r9
movzx esi, cl
jmp 0x14035e73d
mov rax, rbx
lea rcx, [0x1400154a0]
nop dword [rax]
inc rax
cmp byte [rcx + rax], 0
jne 0x14035e300
mov dword [rbp + 0xc0], eax
mov qword [rbp + 0xc8], rcx
movaps xmm0, xmmword [rbp + 0xc0]
movdqa xmmword [rbp + 0x220], xmm0
lea rdx, [rbp + 0x220]
lea rcx, [rsp + 0x30]
call fcn.140364270
test al, al
je 0x14035e362
movzx r14d, r14b
test sil, sil
mov ecx, 1
cmovne r14d, ecx
mov rax, qword [r12 + 8]
lea rcx, [0x1400154a0]
mov qword [rax + rdi*8], rcx
mov sil, 1
jmp 0x14035e73d
mov rax, rbx
lea rcx, [0x1400154b0]
nop dword [rax]
inc rax
cmp byte [rcx + rax], 0
jne 0x14035e370
mov dword [rbp + 0xd0], eax
mov qword [rbp + 0xd8], rcx
movaps xmm0, xmmword [rbp + 0xd0]
movdqa xmmword [rbp + 0x2a0], xmm0
lea rdx, [rbp + 0x2a0]
lea rcx, [rsp + 0x30]
call fcn.140364270
test al, al
je 0x14035e3d2
movzx r14d, r14b
test sil, sil
mov ecx, 1
cmovne r14d, ecx
mov rax, qword [r12 + 8]
lea r9, [0x1400154b0]
mov qword [rax + rdi*8], r9
movzx esi, cl
jmp 0x14035e73d
mov rax, rbx
lea rcx, [0x1400154c0]
nop dword [rax]
inc rax
cmp byte [rcx + rax], 0
jne 0x14035e3e0
mov dword [rbp + 0xe0], eax
mov qword [rbp + 0xe8], rcx
movaps xmm0, xmmword [rbp + 0xe0]
movdqa xmmword [rbp + 0x240], xmm0
lea rdx, [rbp + 0x240]
lea rcx, [rsp + 0x30]
call fcn.140364270
test al, al
je 0x14035e442
movzx r14d, r14b
test sil, sil
mov ecx, 1
cmovne r14d, ecx
mov rax, qword [r12 + 8]
lea rcx, [0x1400154c0]
mov qword [rax + rdi*8], rcx
mov sil, 1
jmp 0x14035e73d
mov rax, rbx
lea rcx, [0x1400154d0]
nop dword [rax]
inc rax
cmp byte [rcx + rax], 0
jne 0x14035e450
mov dword [rbp + 0xf0], eax
mov qword [rbp + 0xf8], rcx
movaps xmm0, xmmword [rbp + 0xf0]
movdqa xmmword [rbp + 0x250], xmm0
lea rdx, [rbp + 0x250]
lea rcx, [rsp + 0x30]
call fcn.140364270
test al, al
je 0x14035e4b2
movzx r14d, r14b
test sil, sil
mov ecx, 1
cmovne r14d, ecx
mov rax, qword [r12 + 8]
lea r9, [0x1400154d0]
mov qword [rax + rdi*8], r9
movzx esi, cl
jmp 0x14035e73d
mov rax, rbx
lea rcx, [0x1400154e0]
nop dword [rax]
inc rax
cmp byte [rcx + rax], 0
jne 0x14035e4c0
mov dword [rbp + 0x100], eax
mov qword [rbp + 0x108], rcx
movaps xmm0, xmmword [rbp + 0x100]
movdqa xmmword [rbp + 0x260], xmm0
lea rdx, [rbp + 0x260]
lea rcx, [rsp + 0x30]
call fcn.140364270
test al, al
mov rax, qword [r12 + 8]
je 0x14035e558
lea rcx, [0x1400154e0]
mov qword [rax + rdi*8], rcx
test sil, sil
jne 0x14035e550
test r14b, r14b
jne 0x14035e550
mov rax, rbx
lea rcx, [0x140015b98]
nop
inc rax
cmp byte [rcx + rax], 0
jne 0x14035e520
mov dword [rsp + 0x70], eax
mov qword [rsp + 0x78], rcx
movaps xmm0, xmmword [rsp + 0x70]
movdqa xmmword [rbp + 0x270], xmm0
lea rdx, [rbp + 0x270]
lea rcx, [rsp + 0x40]
call fcn.140364720
xor sil, sil
jmp 0x14035e73d
lea rcx, [0x1400153f4]
mov qword [rax + rdi*8], rcx
xor eax, eax
mov byte [rbp + 0x300], al
lea rdx, [rbp - 0x70]
lea rcx, [rbp + 0x300]
call fcn.14035bac0
nop
mov ecx, 0x20
mov word [rbp + 0x318], cx
mov word [rsp + 0x20], cx
xor r9d, r9d
lea r8, [rsp + 0x30]
lea rdx, [rbp - 0x78]
mov rcx, rax
call fcn.140364980
nop
mov rdx, rax
lea rcx, [rsp + 0x40]
call fcn.140364430
nop
mov rcx, qword [rbp - 0x78]
mov eax, dword [rcx]
test eax, eax
je 0x14035e5d3
cmp eax, 0xffffffff
je 0x14035e5e2
mov eax, ebx
lock xadd dword [rcx], eax
add eax, 0xffffffff
setne al
test al, al
jne 0x14035e5e2
mov rcx, qword [rbp - 0x78]
mov edx, 2
lea r8d, [rdx + 6]
call fcn.140379300
nop
mov rcx, qword [rbp - 0x70]
mov eax, dword [rcx]
test eax, eax
je 0x14035e60d
cmp eax, 0xffffffff
je 0x14035e73d
mov eax, ebx
lock xadd dword [rcx], eax
add eax, 0xffffffff
setne al
test al, al
jne 0x14035e73d
mov rcx, qword [rbp - 0x70]
mov edx, 2
lea r8d, [rdx + 6]
call fcn.140379300
jmp 0x14035e73d
mov rax, qword [rsp + 0x30]
mov ecx, dword [rax + 4]
inc ecx
movsxd rcx, ecx
call fcn.1404e21d4
mov rbx, rax
mov qword [rbp - 0x60], rax
lea rdx, [rbp - 0x68]
lea rcx, [rsp + 0x30]
call fcn.14035edd0
mov rcx, qword [rsp + 0x30]
mov rdx, qword [rax]
movsxd r8, dword [rcx + 4]
add rdx, qword [rdx + 0x10]
mov rcx, rbx
call fcn.1405108a0
mov rcx, qword [rbp - 0x68]
mov eax, dword [rcx]
test eax, eax
je 0x14035e688
cmp eax, 0xffffffff
je 0x14035e696
or rax, 0xffffffffffffffff
lock xadd dword [rcx], eax
add eax, 0xffffffff
setne al
mov rbx, qword [rbp - 0x60]
test al, al
jne 0x14035e696
mov rcx, qword [rbp - 0x68]
mov edx, 1
lea r8d, [rdx + 7]
call fcn.140379300
mov rax, qword [rsp + 0x30]
movsxd rcx, dword [rax + 4]
mov byte [rcx + rbx], 0
mov rcx, qword [rsp + 0x58]
mov r9, qword [rsp + 0x60]
cmp rcx, r9
jne 0x14035e71d
mov rax, r9
sub rax, rcx
sar rax, 3
cmp rax, 1
jae 0x14035e71d
mov r8, qword [rsp + 0x50]
sub rcx, r8
sar rcx, 3
movabs r10, 0x1fffffffffffffff
mov rax, r10
sub rax, rcx
cmp rax, 1
jb 0x14035e793
lea rdx, [rcx + 1]
sub r9, r8
sar r9, 3
mov rax, r9
shr rax, 1
mov rcx, r10
sub rcx, rax
add rax, r9
xor r8d, r8d
cmp rcx, r9
cmovae r8, rax
cmp r8, rdx
cmovae rdx, r8
lea rcx, [rsp + 0x50]
call fcn.14035bad0
mov rcx, qword [rsp + 0x58]
test rcx, rcx
je 0x14035e72a
mov qword [rcx], rbx
add qword [rsp + 0x58], 8
mov rax, qword [r12 + 8]
mov qword [rax + rdi*8], rbx
or rbx, 0xffffffffffffffff
mov rcx, qword [rsp + 0x30]
mov eax, dword [rcx]
test eax, eax
je 0x14035e762
cmp eax, 0xffffffff
je 0x14035e770
mov eax, ebx
lock xadd dword [rcx], eax
add eax, 0xffffffff
setne al
test al, al
jne 0x14035e770
mov rcx, qword [rsp + 0x30]
mov edx, 2
lea r8d, [rdx + 6]
call fcn.140379300
inc r15d
inc rdi
mov rax, qword [rsp + 0x48]
mov edx, dword [rax + 8]
mov ecx, dword [rax + 0xc]
sub ecx, edx
cmp r15d, ecx
jge 0x14035e7a0
mov r8d, 1
jmp 0x14035dc8e
lea rcx, [0x1402bf020]
call fcn.1404de840
nop
test r14b, r14b
je 0x14035e7cf
mov dword [rsp + 0x70], 0x2d
lea rax, [0x140015bd0]
mov qword [rsp + 0x78], rax
movaps xmm0, xmmword [rsp + 0x70]
movdqa xmmword [rbp + 0x280], xmm0
lea rdx, [rbp + 0x280]
jmp 0x14035e7fc
test sil, sil
je 0x14035e806
mov dword [rsp + 0x70], 0x25
lea rax, [0x140015c00]
mov qword [rsp + 0x78], rax
movaps xmm0, xmmword [rsp + 0x70]
movdqa xmmword [rbp + 0x290], xmm0
lea rdx, [rbp + 0x290]
lea rcx, [rsp + 0x40]
call fcn.140364720
mov rax, qword [rsp + 0x40]
cmp dword [rax + 4], 0
je 0x14035e910
mov ecx, dword [0x140587604]
mov rax, qword gs:[0x58]
mov edx, 8
mov rcx, qword [rax + rcx*8]
mov eax, dword [rdx + rcx]
cmp dword [0x140582a7c], eax
jle 0x14035e870
lea rcx, [0x140582a7c]
call fcn.1404e1a10
cmp dword [0x140582a7c], 0xffffffff
jne 0x14035e870
xor edx, edx
lea rcx, [0x140015a30]
call fcn.14037e790
test eax, eax
setne byte [0x140582a78]
lea rcx, [0x140582a7c]
call fcn.1404e19b0
cmp byte [0x140582a78], 0
jne 0x14035e897
call fcn.14035ec20
test al, al
jne 0x14035e897
lea rcx, [rsp + 0x40]
call fcn.14036dfa0
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_OutputDebugStringW]
jmp 0x14035e910
lea rdx, [rbp - 0x58]
lea rcx, [rsp + 0x40]
call fcn.14035ee00
mov rcx, qword [rax]
mov rbx, qword [rcx + 0x10]
add rbx, rcx
mov ecx, 2
call fcn.140504a6c
mov rcx, rax
mov r8, rbx
lea rdx, [0x140015c88]
call fcn.14035f0c0
mov rcx, qword [rbp - 0x58]
mov eax, dword [rcx]
test eax, eax
je 0x14035e8f0
cmp eax, 0xffffffff
je 0x14035e8fe
or rax, 0xffffffffffffffff
lock xadd dword [rcx], eax
add eax, 0xffffffff
setne al
test al, al
jne 0x14035e8fe
mov rcx, qword [rbp - 0x58]
mov edx, 1
lea r8d, [rdx + 7]
call fcn.140379300
mov ecx, 2
call fcn.140504a6c
mov rcx, rax
call fcn.140504424
mov rsi, qword [rsp + 0x58]
mov rdi, qword [rsp + 0x50]
sub rsi, rdi
sar rsi, 3
inc rsi
mov eax, 8
mul rsi
mov r15, 0xffffffffffffffff
cmovo rax, r15
add rax, 8
cmovb rax, r15
mov rcx, rax
call fcn.1404e21d4
lea r14, [0x14035b9a0]
test rax, rax
je 0x14035e97a
mov qword [rax], rsi
lea rbx, [rax + 8]
mov qword [rsp + 0x20], r14
lea r9, [fcn.1403c7f30]
mov r8, rsi
lea edx, [r15 + 9]
mov rcx, rbx
call fcn.1404e21e4
xor r13d, r13d
jmp 0x14035e980
xor r13d, r13d
mov ebx, r13d
mov rcx, qword [r12]
mov qword [r12], rbx
test rcx, rcx
je 0x14035e9b5
lea rbx, [rcx - 8]
mov r9, r14
mov r8, qword [rbx]
mov edx, 8
call fcn.1404e2254
mov rdx, qword [rbx]
lea rdx, [rdx*8 + 8]
mov rcx, rbx
call fcn.1404e21dc
nop
mov rsi, qword [r12]
mov rbx, rdi
cmp rdi, qword [rsp + 0x58]
je 0x14035e9f0
sub rsi, rdi
lea rdx, [rsi + rbx]
cmp rdx, rbx
je 0x14035e9e5
mov rax, qword [rbx]
mov qword [rbx], r13
mov rcx, qword [rdx]
mov qword [rdx], rax
test rcx, rcx
je 0x14035e9e5
call fcn.1404e1830
add rbx, 8
cmp rbx, qword [rsp + 0x58]
jne 0x14035e9c6
mov rcx, qword [rsp + 0x40]
mov eax, dword [rcx]
test eax, eax
je 0x14035ea1b
cmp eax, 0xffffffff
je 0x14035ea2a
mov eax, r15d
lock xadd dword [rcx], eax
add eax, 0xffffffff
setne al
mov rdi, qword [rsp + 0x50]
test al, al
jne 0x14035ea2a
mov rcx, qword [rsp + 0x40]
mov edx, 2
lea r8d, [rdx + 6]
call fcn.140379300
nop
test rdi, rdi
je 0x14035eacb
mov rbx, rdi
cmp rdi, qword [rsp + 0x58]
je 0x14035ea58
nop dword [rax]
mov rcx, qword [rbx]
test rcx, rcx
je 0x14035ea4d
call fcn.1404e1830
add rbx, 8
cmp rbx, qword [rsp + 0x58]
jne 0x14035ea40
mov rax, qword [rsp + 0x60]
sub rax, rdi
sar rax, 3
movabs rcx, 0x1fffffffffffffff
cmp rax, rcx
jbe 0x14035ea79
call fcn.1405048d4
int3
lea rax, [rax*8]
cmp rax, 0x1000
jb 0x14035eac2
test dil, 0x1f
je 0x14035ea95
call fcn.1405048d4
int3
mov rax, qword [rdi - 8]
cmp rax, rdi
jb 0x14035eaa4
call fcn.1405048d4
int3
sub rdi, rax
cmp rdi, 8
jae 0x14035eab3
call fcn.1405048d4
int3
cmp rdi, 0x27
jbe 0x14035eabf
call fcn.1405048d4
int3
mov rdi, rax
mov rcx, rdi
call fcn.1404e1e20
nop
mov rcx, qword [rsp + 0x38]
mov eax, dword [rcx]
test eax, eax
je 0x14035eaf1
cmp eax, 0xffffffff
je 0x14035eb00
mov eax, r15d
lock xadd dword [rcx], eax
add eax, 0xffffffff
setne al
test al, al
jne 0x14035eb00
mov rcx, qword [rsp + 0x38]
mov edx, 2
lea r8d, [rdx + 6]
call fcn.140379300
nop
mov rdi, qword [rsp + 0x48]
mov eax, dword [rdi]
test eax, eax
je 0x14035eb26
cmp eax, 0xffffffff
je 0x14035eb85
mov eax, r15d
lock xadd dword [rdi], eax
add eax, 0xffffffff
setne al
test al, al
jne 0x14035eb85
mov rdi, qword [rsp + 0x48]
movsxd rbx, dword [rdi + 0xc]
add rbx, 2
lea rbx, [rdi + rbx*8]
movsxd rsi, dword [rdi + 8]
add rsi, 2
lea rsi, [rdi + rsi*8]
cmp rsi, rbx
je 0x14035eb7c
sub rbx, 8
mov rcx, qword [rbx]
mov eax, dword [rcx]
test eax, eax
je 0x14035eb66
cmp eax, 0xffffffff
je 0x14035eb77
mov eax, r15d
lock xadd dword [rcx], eax
add eax, 0xffffffff
setne al
test al, al
jne 0x14035eb77
mov edx, 2
lea r8d, [rdx + 6]
mov rcx, qword [rbx]
call fcn.140379300
cmp rbx, rsi
jne 0x14035eb43
mov rcx, rdi
call fcn.1404e1e20
nop
add rsp, 0x3b8
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret