Function at 0x1400045a0
Capabilities:
Get thread local storage value

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x88
mov rdi, r9
mov r13d, edx
mov rsi, rcx
mov rax, qword [0x14016e028]
xor rax, rsp
mov qword [rsp + 0x80], rax
test r8, r8
je 0x1400046d7
mov rbp, r8
test rdi, rdi
mov qword [rsp + 0x30], r8
je 0x1400047e7
cmp rdi, 0x7fe00001
jae 0x140004f6c
mov qword [rsp + 0x38], rsi
test r13b, 4
sete al
movabs rdx, 0xaaaaaaaaaaaaaaaa
mov r12b, byte [0x140179cc8]
mov rcx, rdx
mov qword [rsp + 0x48], rdx
mov qword [rsp + 0x58], rdx
and r12b, al
mov dword [rsp + 0x2c], r13d
mov qword [rsp + 0x50], rdi
jne 0x140004a01
mov rax, rbp
and rax, 0xffffffffffe00000
shr rbp, 9
and ebp, 0xfe0
lea rbx, [rax + rbp]
add rbx, 0x1000
movzx eax, word [rbx + 0x1e]
mov rsi, rax
neg rsi
shl rax, 5
mov r14, rbx
sub r14, rax
mov rax, r14
and rax, 0xfffffffffffff000
mov rbp, qword [rax]
lea r15, [rbp + 8]
mov r13d, 1
mov dword [rsp + 0x44], 0
mov rdx, qword [sym.imp.KERNEL32.dll_TryAcquireSRWLockExclusive]
mov rcx, r15
mov rdi, rdx
call rdx
test al, al
jne 0x140004ac3
mov eax, r13d
test r13d, r13d
jle 0x1400046d1
pause
dec eax
jne 0x1400046a1
mov eax, dword [rsp + 0x44]
add eax, r13d
mov rdx, rdi
add r13d, r13d
cmp r13d, 0x40
mov edi, 0x40
cmovge r13d, edi
mov dword [rsp + 0x44], eax
cmp eax, 0x3e8
jl 0x140004689
jmp 0x140004abb
mov eax, dword [rsp + 0x44]
jmp 0x1400046ae
test r13b, 4
jne 0x140004920
mov qword [rsp + 0x70], 0
mov r15b, byte [0x140179cc8]
test r15b, 1
jne 0x140005983
mov eax, 0x40
mov ecx, 0x40
test rdi, rdi
je 0x140004712
bsr rcx, rdi
xor rcx, 0x3f
sub rax, rcx
lea rcx, [0x140149270]
mov cl, byte [rax + rcx]
mov rdx, rdi
shr rdx, cl
and edx, 7
lea rcx, [0x1401492c0]
mov rcx, qword [rcx + rax*8]
and rcx, rdi
lea rax, [rdx + rax*8]
cmp rcx, 1
sbb rax, 0xffffffffffffffff
lea rcx, [0x1401494c8]
movzx r14d, word [rcx + rax*2 + 0x400]
mov byte [rsp + 0x60], 0
mov qword [rsp + 0x38], rsi
cmp byte [rsi + 2], 0
je 0x140005a49
mov esi, dword [0x1401797f8]
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov ebx, eax
mov ecx, esi
call qword [sym.imp.KERNEL32.dll_TlsGetValue]
mov rbp, rax
test ebx, ebx
jne 0x1400056db
cmp rbp, 1
jbe 0x140005b68
inc qword [rbp + 0x298]
cmp r14w, 0x29
jae 0x140005c8d
mov rsi, r14
shl rsi, 4
lea rbx, [rsi + rbp]
cmp qword [rbp + rsi], 0
je 0x140005d74
inc qword [rbp + 0x2a0]
mov r12, qword [rbx]
mov rax, qword [r12]
test rax, rax
je 0x140004a62
mov rcx, rax
not rcx
cmp qword [r12 + 8], rcx
je 0x140004a64
jmp 0x140004d79
mov al, byte [0x140179cc8]
test al, 1
je 0x140004809
mov rcx, rbp
call fcn.14007a6f0
mov rcx, rbp
call fcn.14007a700
test al, al
jne 0x140004f76
mov rax, rbp
and rax, 0xffffffffffe00000
shr rbp, 9
and ebp, 0xfe0
lea r13, [rax + rbp]
add r13, 0x1000
movzx ecx, word [r13 + 0x1e]
mov rdi, rcx
neg rdi
shl rcx, 5
mov r15, r13
sub r15, rcx
mov rcx, r15
and rcx, 0xfffffffffffff000
mov r14, qword [rcx]
cmp byte [r14], 2
je 0x140005702
cmp byte [r14 + 2], 0
je 0x1400057a8
mov rax, rdi
shl rax, 5
mov rbx, qword [r13 + rax + 0x10]
cmp byte [rbx + 0x1c], 0
je 0x1400057a8
mov ebp, dword [0x1401797f8]
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov esi, eax
mov ecx, ebp
call qword [sym.imp.KERNEL32.dll_TlsGetValue]
mov rbp, rax
test esi, esi
jne 0x1400056c1
cmp rbp, 2
jb 0x1400057a8
sub rbx, r14
add rbx, 0xfffffffffffffff0
sar rbx, 3
movabs rax, 0xcccccccccccccccd
imul rax, rbx
inc qword [rbp + 0x2c0]
cmp rax, 0x28
ja 0x1400057a1
shl rax, 4
mov rcx, qword [rbp + rax]
bswap rcx
mov rdx, qword [rsp + 0x30]
mov qword [rdx], rcx
not rcx
mov qword [rdx + 8], rcx
mov qword [rbp + rax], rdx
inc byte [rbp + rax + 8]
inc qword [rbp + 0x2c8]
movzx r8d, byte [rbp + rax + 9]
cmp byte [rbp + rax + 8], r8b
jae 0x14000586d
mov al, byte [rbp + 0x290]
test al, 1
je 0x140004f76
mov rcx, rbp
call fcn.1400498e0
jmp 0x140004f76
mov eax, 0x40
mov ecx, 0x40
test rdi, rdi
je 0x140004937
bsr rcx, rdi
xor rcx, 0x3f
sub rax, rcx
lea rcx, [0x140149270]
mov cl, byte [rax + rcx]
mov rdx, rdi
shr rdx, cl
and edx, 7
lea rcx, [0x1401492c0]
mov rcx, qword [rcx + rax*8]
mov r12, rdi
and rcx, rdi
lea rax, [rdx + rax*8]
cmp rcx, 1
sbb rax, 0xffffffffffffffff
lea rcx, [0x1401494c8]
movzx edi, word [rcx + rax*2 + 0x400]
mov byte [rsp + 0x70], 0
cmp byte [rsi + 2], 0
je 0x1400059ad
mov ebp, dword [0x1401797f8]
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov ebx, eax
mov ecx, ebp
call qword [sym.imp.KERNEL32.dll_TlsGetValue]
mov rbp, rax
test ebx, ebx
jne 0x1400056ce
mov r15, rsi
cmp rbp, 1
jbe 0x140005af2
inc qword [rbp + 0x298]
cmp di, 0x29
jae 0x140005be1
mov rbx, rdi
shl rbx, 4
lea rsi, [rbx + rbp]
cmp qword [rbp + rbx], 0
je 0x140005d40
inc qword [rbp + 0x2a0]
mov r14, qword [rsi]
mov rax, qword [r14]
test rax, rax
je 0x140004a1b
mov rcx, rax
not rcx
cmp qword [r14 + 8], rcx
je 0x140004a1d
jmp 0x140004d79
lea rcx, [rsp + 0x58]
mov rdx, rbp
call fcn.140138a90
test al, al
je 0x140004632
jmp 0x140004b8b
xor eax, eax
dec byte [rbp + rbx + 8]
bswap rax
mov qword [rsi], rax
lea rax, [rbx + rbp]
add rax, 0xa
test r14, r14
je 0x140005bef
movzx edi, word [rax]
test r13b, 2
je 0x140004f79
cmp byte [rsp + 0x70], 0
jne 0x140004f79
mov rcx, r14
xor edx, edx
mov r8, rdi
call fcn.14007f940
jmp 0x140004f79
xor eax, eax
dec byte [rbp + rsi + 8]
bswap rax
mov qword [rbx], rax
lea rax, [rsi + rbp]
add rax, 0xa
test r12, r12
je 0x140005c9b
movzx ebp, word [rax]
test r13b, 2
je 0x140004a93
cmp byte [rsp + 0x60], 0
je 0x140005dd0
mov qword [rsp + 0x70], r12
test r15b, 1
je 0x140004ab1
mov rcx, r12
mov rdx, rdi
mov r8, qword [rsp + 0xf0]
call fcn.14007a6b0
mov r14, qword [rsp + 0x70]
jmp 0x140004f79
mov rcx, r15
call sub.KERNEL32.dll_AcquireSRWLockExclusive
shl rsi, 5
cmp byte [rbx + rsi + 0x1d], 0
jne 0x140004fdd
mov rax, qword [rbx + rsi + 0x10]
mov eax, dword [rax + 0x18]
mov r13d, dword [rsp + 0x2c]
mov rdi, qword [rsp + 0x50]
mov qword [rsp + 0x58], rax
mov rax, qword [rbx + rsi + 0x10]
cmp byte [rax + 0x1c], 0
je 0x140004fe6
mov rcx, r15
call qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
mov eax, 0x40
mov ecx, 0x40
test rdi, rdi
je 0x140004b18
bsr rcx, rdi
xor rcx, 0x3f
sub rax, rcx
lea rcx, [0x140149270]
mov cl, byte [rax + rcx]
mov rdx, rdi
shr rdx, cl
and edx, 7
lea rcx, [0x1401492c0]
mov rcx, qword [rcx + rax*8]
and rcx, rdi
lea rax, [rdx + rax*8]
cmp rcx, 1
sbb rax, 0xffffffffffffffff
lea rcx, [0x1401494c8]
movzx eax, word [rcx + rax*2 + 0x400]
lea rax, [rax + rax*4]
cmp byte [rbp + rax*8 + 0x2c], 0
je 0x140005ffe
mov eax, dword [rbp + rax*8 + 0x28]
movzx ecx, word [rbx + 0x1e]
shl rcx, 5
neg rcx
mov rcx, qword [rbx + rcx + 0x10]
mov ecx, dword [rcx + 0x18]
cmp rax, rcx
mov rbp, qword [rsp + 0x30]
je 0x140004fa0
test r13b, 4
jne 0x140004c9c
mov qword [rsp + 0x70], 0
mov r14b, byte [0x140179cc8]
test r14b, 1
mov rsi, qword [rsp + 0x38]
jne 0x140005036
mov eax, 0x40
mov ecx, 0x40
test rdi, rdi
je 0x140004bcb
bsr rcx, rdi
xor rcx, 0x3f
sub rax, rcx
lea rcx, [0x140149270]
mov cl, byte [rax + rcx]
mov rdx, rdi
shr rdx, cl
and edx, 7
lea rcx, [0x1401492c0]
mov rcx, qword [rcx + rax*8]
and rcx, rdi
lea rax, [rdx + rax*8]
cmp rcx, 1
sbb rax, 0xffffffffffffffff
lea rcx, [0x1401494c8]
movzx r15d, word [rcx + rax*2 + 0x400]
mov byte [rsp + 0x60], 0
cmp byte [rsi + 2], 0
je 0x1400050ff
mov ebp, dword [0x1401797f8]
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov ebx, eax
mov ecx, ebp
call qword [sym.imp.KERNEL32.dll_TlsGetValue]
mov rbp, rax
test ebx, ebx
jne 0x140004fc3
mov r12, rdi
cmp rbp, 1
jbe 0x14000520e
inc qword [rbp + 0x298]
cmp r15w, 0x29
jae 0x140005278
mov rsi, r15
shl rsi, 4
lea rdi, [rsi + rbp]
cmp qword [rbp + rsi], 0
je 0x14000540f
inc qword [rbp + 0x2a0]
mov rbx, qword [rdi]
mov rax, qword [rbx]
test rax, rax
je 0x140004dbf
mov rcx, rax
not rcx
cmp qword [rbx + 8], rcx
je 0x140004dc1
jmp 0x140004d79
mov eax, 0x40
mov ecx, 0x40
test rdi, rdi
mov rbx, qword [rsp + 0x38]
je 0x140004cb8
bsr rcx, rdi
xor rcx, 0x3f
sub rax, rcx
lea rcx, [0x140149270]
mov cl, byte [rax + rcx]
mov rdx, rdi
shr rdx, cl
and edx, 7
lea rcx, [0x1401492c0]
mov rcx, qword [rcx + rax*8]
and rcx, rdi
lea rax, [rdx + rax*8]
cmp rcx, 1
sbb rax, 0xffffffffffffffff
lea rcx, [0x1401494c8]
movzx r15d, word [rcx + rax*2 + 0x400]
mov byte [rsp + 0x70], 0
cmp byte [rbx + 2], 0
je 0x140005060
mov ebp, dword [0x1401797f8]
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov ebx, eax
mov ecx, ebp
call qword [sym.imp.KERNEL32.dll_TlsGetValue]
mov rbp, rax
test ebx, ebx
jne 0x140004fb6
cmp rbp, 1
jbe 0x140005199
inc qword [rbp + 0x298]
cmp r15w, 0x29
jae 0x14000532a
mov rsi, r15
shl rsi, 4
lea rbx, [rsi + rbp]
cmp qword [rbp + rsi], 0
je 0x1400053db
inc qword [rbp + 0x2a0]
mov r14, qword [rbx]
mov rax, qword [r14]
test rax, rax
je 0x140004d7e
mov rcx, rax
not rcx
cmp qword [r14 + 8], rcx
je 0x140004d80
call fcn.1400a8470
xor eax, eax
dec byte [rbp + rsi + 8]
bswap rax
mov qword [rbx], rax
lea rax, [rsi + rbp]
add rax, 0xa
test r14, r14
je 0x140005338
movzx esi, word [rax]
mov rbp, qword [rsp + 0x30]
test r13b, 2
je 0x140004e1b
cmp byte [rsp + 0x70], 0
jne 0x140004e1b
mov rcx, r14
xor edx, edx
mov r8, rsi
call fcn.14007f940
jmp 0x140004e1b
xor eax, eax
dec byte [rbp + rsi + 8]
bswap rax
mov qword [rdi], rax
lea rax, [rsi + rbp]
add rax, 0xa
test rbx, rbx
je 0x140005286
movzx esi, word [rax]
mov rdi, r12
mov rbp, qword [rsp + 0x30]
test r13b, 2
je 0x140004df8
cmp byte [rsp + 0x60], 0
je 0x140005609
mov qword [rsp + 0x70], rbx
test r14b, 1
je 0x140004e16
mov rcx, rbx
mov rdx, rdi
mov r8, qword [rsp + 0xf0]
call fcn.14007a6b0
mov r14, qword [rsp + 0x70]
test r14, r14
je 0x140004f6c
mov r8, qword [rsp + 0x58]
cmp r8, rdi
cmova r8, rdi
mov rcx, r14
mov rdx, rbp
call fcn.14007f530
mov al, byte [0x140179cc8]
test al, 1
je 0x140004e5d
mov rcx, rbp
call fcn.14007a6f0
mov rcx, rbp
call fcn.14007a700
test al, al
jne 0x140004f79
mov rax, rbp
and rax, 0xffffffffffe00000
shr rbp, 9
and ebp, 0xfe0
lea r12, [rax + rbp]
add r12, 0x1000
movzx ecx, word [r12 + 0x1e]
mov rdi, rcx
neg rdi
shl rcx, 5
mov r13, r12
sub r13, rcx
mov rcx, r13
and rcx, 0xfffffffffffff000
mov r15, qword [rcx]
cmp byte [r15], 2
je 0x140005443
cmp byte [r15 + 2], 0
je 0x1400054e9
mov rax, rdi
shl rax, 5
mov rbp, qword [r12 + rax + 0x10]
cmp byte [rbp + 0x1c], 0
je 0x1400054e9
mov esi, dword [0x1401797f8]
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov ebx, eax
mov ecx, esi
call qword [sym.imp.KERNEL32.dll_TlsGetValue]
mov rsi, rax
test ebx, ebx
jne 0x140004fd0
cmp rsi, 2
jb 0x1400054e9
sub rbp, r15
add rbp, 0xfffffffffffffff0
sar rbp, 3
movabs rax, 0xcccccccccccccccd
imul rax, rbp
inc qword [rsi + 0x2c0]
cmp rax, 0x28
ja 0x1400054e2
shl rax, 4
mov rcx, qword [rsi + rax]
bswap rcx
mov rdx, qword [rsp + 0x30]
mov qword [rdx], rcx
not rcx
mov qword [rdx + 8], rcx
mov qword [rsi + rax], rdx
inc byte [rsi + rax + 8]
inc qword [rsi + 0x2c8]
movzx r8d, byte [rsi + rax + 9]
cmp byte [rsi + rax + 8], r8b
jae 0x1400055b1
mov al, byte [rsi + 0x290]
test al, 1
je 0x140004f79
mov rcx, rsi
call fcn.1400498e0
jmp 0x140004f79
test r13b, 1
je 0x1400056e8
xor r14d, r14d
mov rcx, qword [rsp + 0x80]
xor rcx, rsp
call fcn.14007d5a0
mov rax, r14
add rsp, 0x88
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
lea rax, [rbx + rsi]
add rax, 0x1d
cmp byte [rax], 0
jne 0x1400062df
mov r14, rbp
jmp 0x140004f79
mov ecx, ebx
call qword [sym.imp.KERNEL32.dll_SetLastError]
jmp 0x140004d28
mov ecx, ebx
call qword [sym.imp.KERNEL32.dll_SetLastError]
jmp 0x140004c3b
mov ecx, ebx
call qword [sym.imp.KERNEL32.dll_SetLastError]
jmp 0x140004eea
mov rax, qword [r14 + 0x20]
jmp 0x140004ada
mov rcx, rbp
mov rdx, r14
mov r8, rdi
call fcn.140132fc0
mov byte [rsp + 0x44], al
mov rcx, r15
call qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
cmp byte [rsp + 0x44], 0
je 0x140004b01
test r12b, 1
je 0x1400055ff
mov r14, qword [rsp + 0x30]
mov rcx, r14
mov rdx, r14
mov r8, rdi
mov r9, qword [rsp + 0xf0]
call fcn.140138a30
jmp 0x140004f79
lea rcx, [rsp + 0x70]
mov edx, r13d
mov r8, rdi
mov r9, qword [rsp + 0xf0]
call fcn.14007a6c0
test al, al
je 0x140004bb4
mov rcx, qword [rsp + 0x70]
jmp 0x140004e06
mov r12d, r13d
lea rax, [r15 + r15*4]
lea rbp, [rbx + rax*8]
add rbp, 0x10
lea rcx, [rbx + 8]
mov esi, 1
xor edi, edi
mov rbx, qword [sym.imp.KERNEL32.dll_TryAcquireSRWLockExclusive]
mov r14d, 0x40
mov r13, rcx
call rbx
test al, al
jne 0x1400050b7
mov eax, esi
test esi, esi
jle 0x14000509e
pause
dec eax
jne 0x140005096
add edi, esi
add esi, esi
cmp esi, 0x40
cmovge esi, r14d
cmp edi, 0x3e8
mov rcx, r13
jl 0x140005087
call sub.KERNEL32.dll_AcquireSRWLockExclusive
mov rax, qword [rbp]
mov r14, qword [rax]
test r14, r14
je 0x140005de2
mov byte [rsp + 0x70], 0
lea rcx, [r15 + r15*4]
mov rdx, qword [rsp + 0x38]
mov ecx, dword [rdx + rcx*8 + 0x28]
mov qword [rsp + 0x48], rcx
mov rcx, qword [r14]
test rcx, rcx
je 0x14000561b
mov rdx, rcx
not rdx
cmp qword [r14 + 8], rdx
je 0x14000561d
jmp 0x140004d79
lea rax, [r15 + r15*4]
lea rbp, [rsi + rax*8]
add rbp, 0x10
lea rcx, [rsi + 8]
mov esi, 1
xor edi, edi
mov rbx, qword [sym.imp.KERNEL32.dll_TryAcquireSRWLockExclusive]
mov r12, rcx
call rbx
test al, al
jne 0x140005151
mov eax, esi
test esi, esi
jle 0x140005134
pause
dec eax
jne 0x14000512c
add edi, esi
add esi, esi
cmp esi, 0x40
mov eax, 0x40
cmovge esi, eax
cmp edi, 0x3e8
mov rcx, r12
jl 0x14000511d
call sub.KERNEL32.dll_AcquireSRWLockExclusive
mov rax, qword [rbp]
mov rbx, qword [rax]
test rbx, rbx
je 0x140005e5f
mov byte [rsp + 0x60], 0
lea rcx, [r15 + r15*4]
mov rdx, qword [rsp + 0x38]
mov ecx, dword [rdx + rcx*8 + 0x28]
mov qword [rsp + 0x48], rcx
mov rcx, qword [rbx]
test rcx, rcx
je 0x140005653
mov rdx, rcx
not rdx
cmp qword [rbx + 8], rdx
je 0x140005655
jmp 0x140004d79
je 0x140005338
mov r12d, r13d
mov rsi, qword [rsp + 0x38]
mov byte [rsi + 2], 0
mov rcx, rsi
call fcn.140008e70
mov rbp, rax
mov byte [rsi + 2], 1
inc qword [rax + 0x298]
cmp r15w, 0x29
jae 0x140005f2f
mov rsi, r15
shl rsi, 4
lea rbx, [rsi + rbp]
cmp qword [rbp + rsi], 0
je 0x140005f45
inc qword [rbp + 0x2a0]
mov r14, qword [rbx]
mov rax, qword [r14]
test rax, rax
je 0x140005687
mov rcx, rax
not rcx
cmp qword [r14 + 8], rcx
je 0x140005689
jmp 0x140004d79
je 0x140005286
mov rsi, qword [rsp + 0x38]
mov byte [rsi + 2], 0
mov rcx, rsi
call fcn.140008e70
mov rbp, rax
mov byte [rsi + 2], 1
inc qword [rax + 0x298]
cmp r15w, 0x29
jae 0x140005278
mov rsi, r15
shl rsi, 4
lea rdi, [rsi + rbp]
cmp qword [rbp + rsi], 0
je 0x140005f7c
inc qword [rbp + 0x2a0]
mov rbx, qword [rdi]
mov rax, qword [rbx]
test rax, rax
je 0x1400056a3
mov rcx, rax
not rcx
cmp qword [rbx + 8], rcx
je 0x1400056a5
jmp 0x140004d79
inc qword [rbp + 0x2b8]
inc qword [rbp + 0x2a8]
lea rsi, [r15 + r15*4]
mov rax, qword [rsp + 0x38]
lea rbp, [rax + rsi*8]
add rbp, 0x10
lea r15, [rax + 8]
mov edi, 1
xor ebx, ebx
mov r13, qword [sym.imp.KERNEL32.dll_TryAcquireSRWLockExclusive]
mov rcx, r15
call r13
test al, al
jne 0x1400052de
mov eax, edi
test edi, edi
jle 0x1400052c1
pause
dec eax
jne 0x1400052b9
add ebx, edi
add edi, edi
cmp edi, 0x40
mov eax, 0x40
cmovge edi, eax
cmp ebx, 0x3e8
jl 0x1400052a9
mov rcx, r15
call sub.KERNEL32.dll_AcquireSRWLockExclusive
mov rax, qword [rbp]
mov rbx, qword [rax]
test rbx, rbx
je 0x1400058fe
mov byte [rsp + 0x60], 0
mov rcx, qword [rsp + 0x38]
mov esi, dword [rcx + rsi*8 + 0x28]
mov rcx, qword [rbx]
test rcx, rcx
mov r13d, dword [rsp + 0x2c]
mov rdi, r12
je 0x1400055e3
mov rdx, rcx
not rdx
cmp qword [rbx + 8], rdx
mov rbp, qword [rsp + 0x30]
je 0x1400055ea
jmp 0x140004d79
inc qword [rbp + 0x2b8]
inc qword [rbp + 0x2a8]
lea rsi, [r15 + r15*4]
mov rax, qword [rsp + 0x38]
lea rbp, [rax + rsi*8]
add rbp, 0x10
lea r15, [rax + 8]
mov r12d, 1
xor ebx, ebx
mov r14, qword [sym.imp.KERNEL32.dll_TryAcquireSRWLockExclusive]
mov rcx, r15
call r14
test al, al
jne 0x140005397
mov eax, r12d
test r12d, r12d
jle 0x140005377
pause
dec eax
jne 0x14000536e
add ebx, r12d
add r12d, r12d
cmp r12d, 0x40
mov eax, 0x40
cmovge r12d, eax
cmp ebx, 0x3e8
jl 0x14000535c
mov rcx, r15
call sub.KERNEL32.dll_AcquireSRWLockExclusive
mov rax, qword [rbp]
mov r14, qword [rax]
test r14, r14
je 0x140005883
mov byte [rsp + 0x70], 0
mov rcx, qword [rsp + 0x38]
mov esi, dword [rcx + rsi*8 + 0x28]
mov rcx, qword [r14]
test rcx, rcx
je 0x1400055c7
mov rdx, rcx
not rdx
cmp qword [r14 + 8], rdx
mov rbp, qword [rsp + 0x30]
je 0x1400055ce
jmp 0x140004d79
movdqu xmm0, xmmword [rbp + 0x2a8]
pcmpeqd xmm1, xmm1
psubq xmm0, xmm1
movdqu xmmword [rbp + 0x2a8], xmm0
mov rcx, rbp
mov rdx, r15
call fcn.14003aca0
mov r14, qword [rbx]
test r14, r14
jne 0x140004d65
jmp 0x140005338
movdqu xmm0, xmmword [rbp + 0x2a8]
pcmpeqd xmm1, xmm1
psubq xmm0, xmm1
movdqu xmmword [rbp + 0x2a8], xmm0
mov rcx, rbp
mov rdx, r15
call fcn.14003aca0
mov rbx, qword [rdi]
test rbx, rbx
jne 0x140004c7b
jmp 0x140005286
mov rcx, rdi
shl rcx, 5
mov rdx, qword [r12 + rcx + 0x10]
cmp byte [rdx + 0x1c], 0
je 0x140004ea8
lea rdx, [r12 + rcx]
add rdx, 0x10
mov rbp, qword [0x14016eea8]
and ebp, 1
shl rbp, 0xe
add rbp, rax
mov rbx, qword [rsp + 0x30]
mov rcx, rbx
shr rcx, 4
shr rbx, 7
and ebx, 0x3ff8
mov eax, 1
shl rax, cl
lock or qword [rbx + rbp + 0x4000], rax
mov rax, qword [rdx]
mov eax, dword [rax + 0x18]
mov rcx, rax
lock xadd qword [0x14016ee98], rcx
add rcx, rax
mov rax, qword [0x14016eea0]
cmp rcx, rax
jbe 0x140004f79
mov al, byte [0x14016eeb8]
test al, 1
jne 0x140004f79
lea rcx, [0x14016ee08]
mov edx, 1
call fcn.140133290
jmp 0x140004f79
inc qword [rsi + 0x2d0]
add r15, 8
pxor xmm0, xmm0
movdqa xmmword [rsp + 0x70], xmm0
mov esi, 1
xor ebx, ebx
mov rbp, qword [sym.imp.KERNEL32.dll_TryAcquireSRWLockExclusive]
mov rcx, r15
call rbp
test al, al
jne 0x140005539
mov eax, esi
test esi, esi
jle 0x14000551c
pause
dec eax
jne 0x140005514
add ebx, esi
add esi, esi
cmp esi, 0x40
mov eax, 0x40
cmovge esi, eax
cmp ebx, 0x3e8
jl 0x140005505
mov rcx, r15
call sub.KERNEL32.dll_AcquireSRWLockExclusive
mov rax, qword [r13]
mov rcx, qword [rsp + 0x30]
cmp rax, rcx
je 0x140006313
bswap rax
mov qword [rcx], rax
not rax
mov qword [rcx + 8], rax
mov qword [r13], rcx
shl rdi, 5
movzx eax, word [r12 + rdi + 0x18]
dec eax
mov word [r12 + rdi + 0x18], ax
test ax, ax
jle 0x1400056f0
pxor xmm0, xmm0
movdqa xmmword [rsp + 0x60], xmm0
movdqa xmm0, xmmword [rsp + 0x60]
movdqa xmmword [rsp + 0x70], xmm0
mov rcx, r15
call qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
cmp qword [rsp + 0x70], 0
je 0x140004f79
lea rcx, [rsp + 0x70]
call fcn.1400ae770
jmp 0x140004f79
mov rdx, rsi
add rdx, rax
shr r8, 1
mov rcx, rsi
call fcn.140007210
jmp 0x140004f58
xor ecx, ecx
mov rbp, qword [rsp + 0x30]
bswap rcx
mov qword [rax], rcx
inc word [rax + 0x18]
mov rcx, r15
call qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
jmp 0x140005642
xor ecx, ecx
mov rbp, qword [rsp + 0x30]
bswap rcx
mov qword [rax], rcx
inc word [rax + 0x18]
mov rcx, r15
call qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
jmp 0x140005677
mov r14, qword [rsp + 0x30]
jmp 0x140004f79
mov rcx, rbx
xor edx, edx
mov r8, rsi
call fcn.14007f940
jmp 0x140004df8
xor ecx, ecx
bswap rcx
mov qword [rax], rcx
inc word [rax + 0x18]
mov rcx, r13
call qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
mov r13d, r12d
mov rdi, qword [rsp + 0x50]
mov rbp, qword [rsp + 0x30]
mov rsi, qword [rsp + 0x48]
test r14, r14
jne 0x140004da3
xor r14d, r14d
jmp 0x140004e1b
xor ecx, ecx
bswap rcx
mov qword [rax], rcx
inc word [rax + 0x18]
mov rcx, r12
call qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
mov rdi, qword [rsp + 0x50]
mov rbp, qword [rsp + 0x30]
mov rsi, qword [rsp + 0x48]
test rbx, rbx
jne 0x140004de7
xor ebx, ebx
jmp 0x140004df8
xor eax, eax
dec byte [rbp + rsi + 8]
bswap rax
mov qword [rbx], rax
lea rax, [rsi + rbp]
add rax, 0xa
mov r13d, r12d
jmp 0x140004d92
xor eax, eax
dec byte [rbp + rsi + 8]
bswap rax
mov qword [rdi], rax
lea rax, [rsi + rbp]
add rax, 0xa
mov r13d, dword [rsp + 0x2c]
jmp 0x140004dd3
mov ecx, esi
call qword [sym.imp.KERNEL32.dll_SetLastError]
jmp 0x140004895
mov ecx, ebx
call qword [sym.imp.KERNEL32.dll_SetLastError]
jmp 0x1400049a9
mov ecx, ebx
call qword [sym.imp.KERNEL32.dll_SetLastError]
jmp 0x140004787
mov rcx, rdi
call fcn.1401083c0
lea rdx, [rsp + 0x60]
mov rcx, r13
call fcn.140030860
jmp 0x140005581
mov rcx, rdi
shl rcx, 5
mov rdx, qword [r13 + rcx + 0x10]
cmp byte [rdx + 0x1c], 0
je 0x140004853
lea rdx, [rcx + r13]
add rdx, 0x10
mov rbp, qword [0x14016eea8]
and ebp, 1
shl rbp, 0xe
add rbp, rax
mov rbx, qword [rsp + 0x30]
mov rcx, rbx
shr rcx, 4
shr rbx, 7
and ebx, 0x3ff8
mov eax, 1
shl rax, cl
lock or qword [rbx + rbp + 0x4000], rax
mov rax, qword [rdx]
mov eax, dword [rax + 0x18]
mov rcx, rax
lock xadd qword [0x14016ee98], rcx
add rcx, rax
mov rax, qword [0x14016eea0]
cmp rcx, rax
jbe 0x140004f76
mov al, byte [0x14016eeb8]
test al, 1
jne 0x140004f76
lea rcx, [0x14016ee08]
mov edx, 1
call fcn.140133290
jmp 0x140004f76
inc qword [rbp + 0x2d0]
add r14, 8
xorps xmm0, xmm0
movaps xmmword [rsp + 0x70], xmm0
mov esi, 1
xor ebp, ebp
mov r12, qword [sym.imp.KERNEL32.dll_TryAcquireSRWLockExclusive]
mov ebx, 0x40
mov rcx, r14
call r12
test al, al
jne 0x1400057f7
mov eax, esi
test esi, esi
jle 0x1400057df
pause
dec eax
jne 0x1400057d7
add ebp, esi
add esi, esi
cmp esi, 0x40
cmovge esi, ebx
cmp ebp, 0x3e8
jl 0x1400057c7
mov rcx, r14
call sub.KERNEL32.dll_AcquireSRWLockExclusive
mov rax, qword [r15]
cmp rax, qword [rsp + 0x30]
je 0x140006396
bswap rax
mov rcx, qword [rsp + 0x30]
mov qword [rcx], rax
not rax
mov qword [rcx + 8], rax
mov qword [r15], rcx
shl rdi, 5
movzx eax, word [r13 + rdi + 0x18]
dec eax
mov word [r13 + rdi + 0x18], ax
test ax, ax
jle 0x140005fec
xorps xmm0, xmm0
movaps xmmword [rsp + 0x60], xmm0
movdqa xmm0, xmmword [rsp + 0x60]
movdqa xmmword [rsp + 0x70], xmm0
mov rcx, r14
call qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
cmp qword [rsp + 0x70], 0
je 0x140004f76
lea rcx, [rsp + 0x70]
call fcn.1400ae770
jmp 0x140004f76
mov rdx, rbp
add rdx, rax
shr r8, 1
mov rcx, rbp
call fcn.140007210
jmp 0x140004905
lea rax, [rsp + 0x70]
mov qword [rsp + 0x20], rax
mov rcx, rbp
mov rdx, qword [rsp + 0x38]
mov r8d, r13d
mov r9, rdi
call fcn.140002610
test rax, rax
je 0x1400060fe
mov r14, rax
and rax, 0xffffffffffe00000
mov rcx, r14
shr rcx, 9
and ecx, 0xfe0
lea rbp, [rax + rcx]
add rbp, 0x1000
movzx edx, word [rbp + 0x1e]
mov rcx, rdx
neg rcx
shl rdx, 5
mov rax, rbp
sub rax, rdx
cmp byte [rax + 0x1d], 0
jne 0x140006133
shl rcx, 5
mov rax, qword [rbp + rcx + 0x10]
mov esi, dword [rax + 0x18]
mov rbp, qword [rsp + 0x30]
jmp 0x1400055d8
lea rax, [rsp + 0x60]
mov qword [rsp + 0x20], rax
mov rcx, rbp
mov rdx, qword [rsp + 0x38]
mov r8d, dword [rsp + 0x2c]
mov r9, r12
call fcn.140002610
test rax, rax
je 0x140006115
mov rbx, rax
and rax, 0xffffffffffe00000
mov rcx, rbx
shr rcx, 9
and ecx, 0xfe0
lea rbp, [rax + rcx]
add rbp, 0x1000
movzx edx, word [rbp + 0x1e]
mov rcx, rdx
neg rcx
shl rdx, 5
mov rax, rbp
sub rax, rdx
cmp byte [rax + 0x1d], 0
jne 0x140006141
shl rcx, 5
mov rax, qword [rbp + rcx + 0x10]
mov esi, dword [rax + 0x18]
mov r13d, dword [rsp + 0x2c]
mov rdi, r12
mov rbp, qword [rsp + 0x30]
jmp 0x1400055f4
lea rcx, [rsp + 0x70]
mov edx, r13d
mov r8, rdi
mov r9, qword [rsp + 0xf0]
call fcn.14007a6c0
test al, al
je 0x1400046fb
mov rcx, qword [rsp + 0x70]
jmp 0x140004aa1
mov dword [rsp + 0x2c], r13d
lea rax, [rdi + rdi*4]
lea rbp, [rsi + rax*8]
add rbp, 0x10
mov rbx, rsi
lea r15, [rsi + 8]
mov esi, 1
xor r13d, r13d
mov r14, qword [sym.imp.KERNEL32.dll_TryAcquireSRWLockExclusive]
mov rcx, r15
call r14
test al, al
jne 0x140005a0b
mov eax, esi
test esi, esi
jle 0x1400059ed
pause
dec eax
jne 0x1400059e4
add r13d, esi
add esi, esi
cmp esi, 0x40
mov eax, 0x40
cmovge esi, eax
cmp r13d, 0x3e8
jl 0x1400059d4
mov rcx, r15
call sub.KERNEL32.dll_AcquireSRWLockExclusive
mov rax, qword [rbp]
mov r14, qword [rax]
test r14, r14
je 0x14000614f
mov byte [rsp + 0x70], 0
lea rcx, [rdi + rdi*4]
mov edi, dword [rbx + rcx*8 + 0x28]
mov rcx, qword [r14]
test rcx, rcx
je 0x140005edc
mov rdx, rcx
not rdx
cmp qword [r14 + 8], rdx
je 0x140005ede
jmp 0x140004d79
mov dword [rsp + 0x2c], r13d
lea rax, [r14 + r14*4]
mov rcx, qword [rsp + 0x38]
lea rbp, [rcx + rax*8]
add rbp, 0x10
lea rsi, [rcx + 8]
mov r13d, 1
xor ebx, ebx
mov r12, qword [sym.imp.KERNEL32.dll_TryAcquireSRWLockExclusive]
mov rcx, rsi
call r12
test al, al
jne 0x140005aad
mov eax, r13d
test r13d, r13d
jle 0x140005a8d
pause
dec eax
jne 0x140005a84
add ebx, r13d
add r13d, r13d
cmp r13d, 0x40
mov eax, 0x40
cmovge r13d, eax
cmp ebx, 0x3e8
jl 0x140005a72
mov rcx, rsi
call sub.KERNEL32.dll_AcquireSRWLockExclusive
mov rax, qword [rbp]
mov r12, qword [rax]
test r12, r12
je 0x1400061c5
mov byte [rsp + 0x60], 0
lea rcx, [r14 + r14*4]
mov rdx, qword [rsp + 0x38]
mov ebp, dword [rdx + rcx*8 + 0x28]
mov rcx, qword [r12]
test rcx, rcx
je 0x140005f04
mov rdx, rcx
not rdx
cmp qword [r12 + 8], rdx
je 0x140005f06
jmp 0x140004d79
je 0x140005bef
mov dword [rsp + 0x2c], r13d
mov rbx, r15
mov byte [r15 + 2], 0
mov rcx, r15
call fcn.140008e70
mov rbp, rax
mov byte [r15 + 2], 1
inc qword [rax + 0x298]
cmp di, 0x29
jae 0x14000623d
mov rbx, rdi
shl rbx, 4
lea rsi, [rbx + rbp]
cmp qword [rbp + rbx], 0
je 0x14000626d
inc qword [rbp + 0x2a0]
mov r14, qword [rsi]
mov rax, qword [r14]
test rax, rax
je 0x140005fb0
mov rcx, rax
not rcx
cmp qword [r14 + 8], rcx
je 0x140005fb2
jmp 0x140004d79
je 0x140005c9b
mov dword [rsp + 0x2c], r13d
mov rsi, qword [rsp + 0x38]
mov byte [rsi + 2], 0
mov rcx, rsi
call fcn.140008e70
mov rbp, rax
mov byte [rsi + 2], 1
inc qword [rax + 0x298]
cmp r14w, 0x29
jae 0x140006255
mov rsi, r14
shl rsi, 4
lea rbx, [rsi + rbp]
cmp qword [rbp + rsi], 0
je 0x1400062a6
inc qword [rbp + 0x2a0]
mov r12, qword [rbx]
mov rax, qword [r12]
test rax, rax
je 0x140005fce
mov rcx, rax
not rcx
cmp qword [r12 + 8], rcx
je 0x140005fd0
jmp 0x140004d79
inc qword [rbp + 0x2b8]
inc qword [rbp + 0x2a8]
mov dword [rsp + 0x2c], r13d
lea rbx, [rdi + rdi*4]
lea rbp, [r15 + rbx*8]
add rbp, 0x10
mov rdi, r15
lea rsi, [r15 + 8]
mov r13d, 1
xor r14d, r14d
mov r15, qword [sym.imp.KERNEL32.dll_TryAcquireSRWLockExclusive]
mov rcx, rsi
call r15
test al, al
jne 0x140005c53
mov eax, r13d
test r13d, r13d
jle 0x140005c32
pause
dec eax
jne 0x140005c29
add r14d, r13d
add r13d, r13d
cmp r13d, 0x40
mov eax, 0x40
cmovge r13d, eax
cmp r14d, 0x3e8
jl 0x140005c17
mov rcx, rsi
call sub.KERNEL32.dll_AcquireSRWLockExclusive
mov rax, qword [rbp]
mov r14, qword [rax]
test r14, r14
je 0x140006010
mov byte [rsp + 0x70], 0
mov edi, dword [rdi + rbx*8 + 0x28]
mov rcx, qword [r14]
test rcx, rcx
je 0x140005da8
mov rdx, rcx
not rdx
cmp qword [r14 + 8], rdx
je 0x140005daa
jmp 0x140004d79
inc qword [rbp + 0x2b8]
inc qword [rbp + 0x2a8]
mov dword [rsp + 0x2c], r13d
lea rsi, [r14 + r14*4]
mov rax, qword [rsp + 0x38]
lea rbp, [rax + rsi*8]
add rbp, 0x10
lea r14, [rax + 8]
mov r13d, 1
xor ebx, ebx
mov r12, qword [sym.imp.KERNEL32.dll_TryAcquireSRWLockExclusive]
mov rcx, r14
call r12
test al, al
jne 0x140005cff
mov eax, r13d
test r13d, r13d
jle 0x140005cdf
pause
dec eax
jne 0x140005cd6
add ebx, r13d
add r13d, r13d
cmp r13d, 0x40
mov eax, 0x40
cmovge r13d, eax
cmp ebx, 0x3e8
jl 0x140005cc4
mov rcx, r14
call sub.KERNEL32.dll_AcquireSRWLockExclusive
mov rax, qword [rbp]
mov r12, qword [rax]
test r12, r12
je 0x140006086
mov byte [rsp + 0x60], 0
mov rcx, qword [rsp + 0x38]
mov ebp, dword [rcx + rsi*8 + 0x28]
mov rcx, qword [r12]
test rcx, rcx
je 0x140005dbc
mov rdx, rcx
not rdx
cmp qword [r12 + 8], rdx
je 0x140005dbe
jmp 0x140004d79
movdqu xmm0, xmmword [rbp + 0x2a8]
pcmpeqd xmm1, xmm1
psubq xmm0, xmm1
movdqu xmmword [rbp + 0x2a8], xmm0
mov rcx, rbp
mov rdx, rdi
call fcn.14003aca0
mov r14, qword [rsi]
test r14, r14
jne 0x1400049e8
jmp 0x140005bef
movdqu xmm0, xmmword [rbp + 0x2a8]
pcmpeqd xmm1, xmm1
psubq xmm0, xmm1
movdqu xmmword [rbp + 0x2a8], xmm0
mov rcx, rbp
mov rdx, r14
call fcn.14003aca0
mov r12, qword [rbx]
test r12, r12
jne 0x1400047c4
jmp 0x140005c9b
xor ecx, ecx
bswap rcx
mov qword [rax], rcx
inc word [rax + 0x18]
mov rcx, rsi
jmp 0x140005eeb
xor ecx, ecx
bswap rcx
mov qword [rax], rcx
inc word [rax + 0x18]
mov rcx, r14
jmp 0x140005f13
mov rcx, r12
xor edx, edx
mov r8, rbp
call fcn.14007f940
jmp 0x140004a93
lea rax, [rsp + 0x70]
mov qword [rsp + 0x20], rax
mov rcx, rbp
mov rdx, qword [rsp + 0x38]
mov r8d, r12d
mov r9, qword [rsp + 0x50]
call fcn.140002610
test rax, rax
je 0x1400062e8
mov r14, rax
and rax, 0xffffffffffe00000
mov rcx, r14
shr rcx, 9
and ecx, 0xfe0
lea rbp, [rax + rcx]
add rbp, 0x1000
movzx edx, word [rbp + 0x1e]
mov rcx, rdx
neg rcx
shl rdx, 5
mov rax, rbp
sub rax, rdx
cmp byte [rax + 0x1d], 0
jne 0x1400062f7
shl rcx, 5
mov rax, qword [rbp + rcx + 0x10]
mov eax, dword [rax + 0x18]
mov qword [rsp + 0x48], rax
jmp 0x140005627
lea rax, [rsp + 0x60]
mov qword [rsp + 0x20], rax
mov rcx, rbp
mov rdx, qword [rsp + 0x38]
mov r8d, r13d
mov r9, qword [rsp + 0x50]
call fcn.140002610
test rax, rax
je 0x1400062f0
mov rbx, rax
and rax, 0xffffffffffe00000
mov rcx, rbx
shr rcx, 9
and ecx, 0xfe0
lea rbp, [rax + rcx]
add rbp, 0x1000
movzx edx, word [rbp + 0x1e]
mov rcx, rdx
neg rcx
shl rdx, 5
mov rax, rbp
sub rax, rdx
cmp byte [rax + 0x1d], 0
jne 0x140006305
shl rcx, 5
mov rax, qword [rbp + rcx + 0x10]
mov eax, dword [rax + 0x18]
mov qword [rsp + 0x48], rax
jmp 0x14000565f
xor ecx, ecx
bswap rcx
mov qword [rax], rcx
inc word [rax + 0x18]
mov rcx, r15
call qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
test r14, r14
mov r13d, dword [rsp + 0x2c]
jne 0x140004a3b
jmp 0x140004f76
xor ecx, ecx
bswap rcx
mov qword [rax], rcx
inc word [rax + 0x18]
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
test r12, r12
mov r13d, dword [rsp + 0x2c]
jne 0x140004a82
xor r12d, r12d
jmp 0x140004a93
inc qword [rbp + 0x2b8]
inc qword [rbp + 0x2a8]
mov r13d, r12d
jmp 0x140005338
movdqu xmm0, xmmword [rbp + 0x2a8]
pcmpeqd xmm1, xmm1
psubq xmm0, xmm1
movdqu xmmword [rbp + 0x2a8], xmm0
mov rcx, rbp
mov rdx, r15
call fcn.14003aca0
mov r14, qword [rbx]
test r14, r14
mov r13d, r12d
jne 0x1400051ed
jmp 0x140005338
movdqu xmm0, xmmword [rbp + 0x2a8]
pcmpeqd xmm1, xmm1
psubq xmm0, xmm1
movdqu xmmword [rbp + 0x2a8], xmm0
mov rcx, rbp
mov rdx, r15
call fcn.14003aca0
mov rbx, qword [rdi]
test rbx, rbx
jne 0x140005257
jmp 0x140005286
xor eax, eax
dec byte [rbp + rbx + 8]
bswap rax
mov qword [rsi], rax
lea rax, [rbx + rbp]
add rax, 0xa
mov r13d, dword [rsp + 0x2c]
jmp 0x140004a2f
xor eax, eax
dec byte [rbp + rsi + 8]
bswap rax
mov qword [rbx], rax
lea rax, [rsi + rbp]
add rax, 0xa
mov r13d, dword [rsp + 0x2c]
jmp 0x140004a76
lea rdx, [rsp + 0x60]
mov rcx, r15
call fcn.140030860
jmp 0x14000583d
lea rax, [rdi + 0xfff]
and rax, 0xfffffffffffff000
jmp 0x140004b6a
lea rax, [rsp + 0x70]
mov qword [rsp + 0x20], rax
mov rcx, rbp
mov rdx, rdi
mov r8d, dword [rsp + 0x2c]
mov r9, r12
call fcn.140002610
test rax, rax
je 0x140006316
mov r14, rax
and rax, 0xffffffffffe00000
mov rcx, r14
shr rcx, 9
and ecx, 0xfe0
lea rbp, [rax + rcx]
add rbp, 0x1000
movzx edx, word [rbp + 0x1e]
mov rcx, rdx
neg rcx
shl rdx, 5
mov rax, rbp
sub rax, rdx
cmp byte [rax + 0x1d], 0
jne 0x14000633a
shl rcx, 5
mov rax, qword [rbp + rcx + 0x10]
mov edi, dword [rax + 0x18]
jmp 0x140005db4
lea rax, [rsp + 0x60]
mov qword [rsp + 0x20], rax
mov rcx, rbp
mov rdx, qword [rsp + 0x38]
mov r8d, dword [rsp + 0x2c]
mov r9, rdi
call fcn.140002610
test rax, rax
je 0x140006328
mov r12, rax
and rax, 0xffffffffffe00000
mov rcx, r12
shr rcx, 9
and ecx, 0xfe0
lea rbp, [rax + rcx]
add rbp, 0x1000
movzx edx, word [rbp + 0x1e]
mov rcx, rdx
neg rcx
shl rdx, 5
mov rax, rbp
sub rax, rdx
cmp byte [rax + 0x1d], 0
jne 0x140006348
shl rcx, 5
mov rax, qword [rbp + rcx + 0x10]
mov ebp, dword [rax + 0x18]
jmp 0x140005dc8
xor r14d, r14d
mov rbp, qword [rsp + 0x30]
movabs rsi, 0xaaaaaaaaaaaaaaaa
jmp 0x1400055d8
xor ebx, ebx
mov r13d, dword [rsp + 0x2c]
mov rdi, r12
mov rbp, qword [rsp + 0x30]
movabs rsi, 0xaaaaaaaaaaaaaaaa
jmp 0x1400055f4
shl rcx, 5
mov rsi, qword [rbp + rcx + 0x20]
jmp 0x1400058f4
shl rcx, 5
mov rsi, qword [rbp + rcx + 0x20]
jmp 0x140005971
lea rax, [rsp + 0x70]
mov qword [rsp + 0x20], rax
mov rcx, rbp
mov rdx, rbx
mov r8d, dword [rsp + 0x2c]
mov r9, r12
call fcn.140002610
test rax, rax
je 0x140006356
mov r14, rax
and rax, 0xffffffffffe00000
mov rcx, r14
shr rcx, 9
and ecx, 0xfe0
lea rbp, [rax + rcx]
add rbp, 0x1000
movzx edx, word [rbp + 0x1e]
mov rcx, rdx
neg rcx
shl rdx, 5
mov rax, rbp
sub rax, rdx
cmp byte [rax + 0x1d], 0
jne 0x14000637a
shl rcx, 5
mov rax, qword [rbp + rcx + 0x10]
mov edi, dword [rax + 0x18]
jmp 0x140005ee8
lea rax, [rsp + 0x60]
mov qword [rsp + 0x20], rax
mov rcx, rbp
mov rdx, qword [rsp + 0x38]
mov r8d, dword [rsp + 0x2c]
mov r9, rdi
call fcn.140002610
test rax, rax
je 0x140006368
mov r12, rax
and rax, 0xffffffffffe00000
mov rcx, r12
shr rcx, 9
and ecx, 0xfe0
lea rbp, [rax + rcx]
add rbp, 0x1000
movzx edx, word [rbp + 0x1e]
mov rcx, rdx
neg rcx
shl rdx, 5
mov rax, rbp
sub rax, rdx
cmp byte [rax + 0x1d], 0
jne 0x140006388
shl rcx, 5
mov rax, qword [rbp + rcx + 0x10]
mov ebp, dword [rax + 0x18]
jmp 0x140005f10
inc qword [rbp + 0x2b8]
inc qword [rbp + 0x2a8]
mov r13d, dword [rsp + 0x2c]
jmp 0x140005bef
inc qword [rbp + 0x2b8]
inc qword [rbp + 0x2a8]
mov r13d, dword [rsp + 0x2c]
jmp 0x140005c9b
movdqu xmm0, xmmword [rbp + 0x2a8]
pcmpeqd xmm1, xmm1
psubq xmm0, xmm1
movdqu xmmword [rbp + 0x2a8], xmm0
mov rcx, rbp
mov rdx, rdi
call fcn.14003aca0
mov r14, qword [rsi]
test r14, r14
mov r13d, dword [rsp + 0x2c]
jne 0x140005b47
jmp 0x140005bef
movdqu xmm0, xmmword [rbp + 0x2a8]
pcmpeqd xmm1, xmm1
psubq xmm0, xmm1
movdqu xmmword [rbp + 0x2a8], xmm0
mov rcx, rbp
mov rdx, r14
call fcn.14003aca0
mov r12, qword [rbx]
test r12, r12
mov r13d, dword [rsp + 0x2c]
jne 0x140005bbe
jmp 0x140005c9b
mov qword [r14 + 0x20], rdi
jmp 0x140004fb1
xor r14d, r14d
jmp 0x140005627
xor ebx, ebx
jmp 0x14000565f
shl rcx, 5
mov rax, qword [rbp + rcx + 0x20]
jmp 0x140005e55
shl rcx, 5
mov rax, qword [rbp + rcx + 0x20]
jmp 0x140005ed2
int3
movabs rdi, 0xaaaaaaaaaaaaaaaa
xor r14d, r14d
jmp 0x140005db4
movabs rbp, 0xaaaaaaaaaaaaaaaa
xor r12d, r12d
jmp 0x140005dc8
shl rcx, 5
mov rdi, qword [rbp + rcx + 0x20]
jmp 0x140005db4
shl rcx, 5
mov rbp, qword [rbp + rcx + 0x20]
jmp 0x140005dc8
movabs rdi, 0xaaaaaaaaaaaaaaaa
xor r14d, r14d
jmp 0x140005ee8
movabs rbp, 0xaaaaaaaaaaaaaaaa
xor r12d, r12d
jmp 0x140005f10
shl rcx, 5
mov rdi, qword [rbp + rcx + 0x20]
jmp 0x140005ee8
shl rcx, 5
mov rbp, qword [rbp + rcx + 0x20]
jmp 0x140005f10
int3