Function at 0x1400ee020
Capabilities:
Get system information on windows

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x88
mov qword [rsp + 0x30], rcx
lea rcx, [0x140d624b0]
test cl, 0xf
jne 0x1400ee074
lea rax, [0x140d624c0]
lea rdx, [0x140d6fcd0]
cmp rdx, rax
cmova rax, rdx
mov rdx, rcx
not rdx
lea r8, [rdx + rax]
add r8, 0x10
and r8, 0xfffffffffffffff0
xor edx, edx
call sub.msvcrt.dll_memset
jmp 0x1400ee0cc
xor eax, eax
nop word cs:[rax + rax]
mov byte [rax + rcx], 0
mov byte [rax + rcx + 1], 0
mov byte [rax + rcx + 2], 0
mov byte [rax + rcx + 3], 0
mov byte [rax + rcx + 4], 0
mov byte [rax + rcx + 5], 0
mov byte [rax + rcx + 6], 0
mov byte [rax + rcx + 7], 0
mov byte [rax + rcx + 8], 0
mov byte [rax + rcx + 9], 0
mov byte [rax + rcx + 0xa], 0
mov byte [rax + rcx + 0xb], 0
mov byte [rax + rcx + 0xc], 0
add rax, 0xd
cmp rax, 0xd820
jne 0x1400ee080
mov al, byte [0x140df0d40]
test al, al
jne 0x1400ee111
mov al, 1
xchg byte [0x140df0d41], al
test al, al
jne 0x1400ef354
cmp byte [0x140df0d40], 0
jne 0x1400ee10a
lea rcx, [0x140d6fd00]
mov edx, 0xffffffff
xor r8d, r8d
call fcn.140115cb0
mov byte [0x140df0d40], 1
mov byte [0x140df0d41], 0
movabs rsi, 0x1000000000000000
lea rcx, [0x140d624b0]
lea rdx, [0x140df0d08]
call fcn.1401193b0
mov r10, qword [rsp + 0x30]
mov rax, qword [r10 + 0xa00028]
lea rcx, [r10 + 0xa00030]
mov qword [rsp + 0x38], rcx
mov rdx, 0xffffffffffffffff
xor ecx, ecx
lea rdi, [rsi + 0xfffff]
movabs r14, 0x10000000000
lea r12, [rsp + 0x58]
movabs r15, 0xdfffffffffffffff
movabs rbx, 0x2000000000000000
nop dword [rax]
test rax, rdi
jne 0x1400ee1a3
mov rbp, rax
or rbp, rsi
and rbp, rdx
lock cmpxchg qword [r10 + 0xa00028], rbp
je 0x1400ee239
add rcx, 1
jmp 0x1400ee180
cmp rcx, 0x5dc
jbe 0x1400ee1fe
lea r8, [rax + r14]
and r8, rdx
lock cmpxchg qword [r10 + 0xa00028], r8
jne 0x1400ee19d
mov rcx, qword [rsp + 0x38]
jmp 0x1400ee1eb
mov dword [rsp + 0x58], 0
mov r8d, 4
mov rdx, r12
mov r9d, 0xffffffff
call sub.api_ms_win_core_synch_l1_2_0.dll_WaitOnAddress
mov rcx, qword [rsp + 0x38]
mov r10, qword [rsp + 0x30]
mov eax, dword [rcx]
test eax, eax
je 0x1400ee1c5
lea edx, [rax - 1]
lock cmpxchg dword [rcx], edx
jne 0x1400ee1ed
xor ecx, ecx
jmp 0x1400ee216
bt rax, 0x3d
jb 0x1400ee229
mov r8, rax
or r8, rbx
lock cmpxchg qword [r10 + 0xa00028], r8
jne 0x1400ee19d
mov rax, qword [r10 + 0xa00028]
add rcx, 1
mov rdx, r15
jmp 0x1400ee180
mov rax, qword [r10 + 0xa00028]
add rcx, 1
jmp 0x1400ee180
mov rax, qword [r10 + 0xa00040]
mov qword [rsp + 0x50], rax
test rax, rax
je 0x1400ef073
lea rcx, [0x140dafd50]
lea rax, [0x140db0ac0]
cmp rax, rcx
cmova rcx, rax
lea rbx, [0x140d6fd00]
sub rcx, rbx
add rcx, 0xfffffffffffbffcf
and rcx, 0xffffffffffffffd0
mov qword [rsp + 0x40], rcx
xor r14d, r14d
jmp 0x1400ee29f
add r14, 1
cmp r14, qword [rsp + 0x50]
je 0x1400ef073
xor r15d, r15d
test r14, r14
sete r15b
mov qword [rsp + 0x48], r14
jmp 0x1400ee2dd
mov r10, qword [rsp + 0x30]
mov r8, rdi
lea rax, [r8 + r12]
add rax, 0x48
mov qword [rax], 0
mov dword [r8 + r12 + 0x20], 0x3fffff00
add r15, 1
cmp r15, 0x400
je 0x1400ee290
mov r8, qword [r10 + r14*8 + 0x200028]
imul r12, r15, 0x58
mov r13, qword [r8 + r12 + 0x50]
test r13, r13
je 0x1400ee80c
mov al, byte [0x140df0d40]
test al, al
je 0x1400ee320
movabs rax, 0x7fffffffffff
cmp r13, rax
jbe 0x1400ee58e
jmp 0x1400ee6e0
mov al, 1
xchg byte [0x140df0d41], al
test al, al
jne 0x1400ee652
cmp byte [0x140df0d40], 0
jne 0x1400ee574
mov rsi, r8
mov byte [0x140df0d08], 0
mov byte [0x140df0d09], 0
mov byte [0x140df0d0a], 0
mov byte [0x140df0d0b], 0
mov byte [0x140df0d0c], 0
mov byte [0x140df0d0d], 0
mov byte [0x140df0d0e], 0
mov byte [0x140df0d0f], 0
mov byte [0x140df0d10], 0
mov byte [0x140df0d11], 0
mov byte [0x140df0d12], 0
mov byte [0x140df0d13], 0
mov byte [0x140df0d14], 0
mov byte [0x140df0d15], 0
mov byte [0x140df0d16], 0
mov byte [0x140df0d17], 0
mov byte [0x140df0d18], 0
mov byte [0x140df0d19], 0
mov byte [0x140df0d1a], 0
mov byte [0x140df0d1b], 0
mov byte [0x140df0d1c], 0
mov byte [0x140df0d1d], 0
mov byte [0x140df0d1e], 0
mov byte [0x140df0d1f], 0
mov byte [0x140df0d20], 0
mov byte [0x140df0d21], 0
mov byte [0x140df0d22], 0
mov byte [0x140df0d23], 0
mov byte [0x140df0d24], 0
mov byte [0x140df0d25], 0
mov byte [0x140df0d26], 0
mov byte [0x140df0d27], 0
mov byte [0x140df0d28], 0
mov byte [0x140df0d29], 0
mov byte [0x140df0d2a], 0
mov byte [0x140df0d2b], 0
mov byte [0x140df0d2c], 0
mov byte [0x140df0d2d], 0
mov byte [0x140df0d2e], 0
mov byte [0x140df0d2f], 0
mov byte [0x140d6fd00], 0
xor eax, eax
nop word cs:[rax + rax]
nop dword [rax + rax]
mov byte [rax + rbx + 8], 0
mov byte [rax + rbx + 9], 0
mov byte [rax + rbx + 0xa], 0
mov byte [rax + rbx + 0xb], 0
mov byte [rax + rbx + 0xc], 0
mov byte [rax + rbx + 0xd], 0
mov byte [rax + rbx + 0xe], 0
mov byte [rax + rbx + 0xf], 0
add rax, 8
cmp rax, 0x40000
jne 0x1400ee470
lea rcx, [0x140dafd40]
xor edx, edx
mov r8, qword [rsp + 0x40]
call sub.msvcrt.dll_memset
mov rax, 0xfffffffffffbfdb8
nop
mov byte [rax + rbx + 0x81008], 0
mov byte [rax + rbx + 0x81009], 0
mov byte [rax + rbx + 0x8100a], 0
mov byte [rax + rbx + 0x8100b], 0
mov byte [rax + rbx + 0x8100c], 0
mov byte [rax + rbx + 0x8100d], 0
mov byte [rax + rbx + 0x8100e], 0
mov byte [rax + rbx + 0x8100f], 0
mov byte [rax + rbx + 0x81010], 0
mov byte [rax + rbx + 0x81011], 0
mov byte [rax + rbx + 0x81012], 0
mov byte [rax + rbx + 0x81013], 0
add rax, 0xc
jne 0x1400ee4c0
mov rax, qword [0x140df0d68]
test rax, rax
mov r10, qword [rsp + 0x30]
mov r8, rsi
jne 0x1400ee558
lea rcx, [rsp + 0x58]
call qword [sym.imp.KERNEL32.dll_GetSystemInfo]
mov r8, rsi
mov r10, qword [rsp + 0x30]
mov eax, dword [rsp + 0x5c]
mov qword [0x140df0d68], rax
mov qword [0x140db0ac0], rax
lea rax, [0x140db0ad0]
mov qword [0x140db0ac8], rax
mov byte [0x140df0d40], 1
mov byte [0x140df0d41], 0
movabs rax, 0x7fffffffffff
cmp r13, rax
ja 0x1400ee6e0
mov rbp, r13
shr rbp, 0x20
mov rax, qword [rbx + rbp*8 + 8]
test rax, rax
je 0x1400ee6e0
mov rsi, r13
shr rsi, 0x14
mov rax, qword [rbx + rbp*8 + 8]
test rax, rax
je 0x1400ee6ad
and esi, 0xfff
cmp byte [rax + rsi], 0
je 0x1400ee6e0
mov rax, qword [rbx + rbp*8 + 8]
test rax, rax
je 0x1400ef2da
mov rax, qword [rbx + rbp*8 + 8]
test rax, rax
je 0x1400eeddd
movzx r9d, byte [rax + rsi]
test r9, r9
je 0x1400ef2da
cmp r9b, 0x36
jae 0x1400ef2fe
mov rbp, r9
shl rbp, 0xa
lea rax, [0x140d624b0]
lea r14, [rax + rbp]
mov rcx, qword [rbp + rax + 8]
test rcx, rcx
je 0x1400eee06
mov rax, qword [r14]
cmp rax, rcx
je 0x1400eef27
lea rcx, [rax + 1]
mov qword [r14], rcx
mov qword [r14 + rax*8 + 0x20], r13
lea rax, [0x140d624b0]
mov rax, qword [rbp + rax + 0x10]
xor ecx, ecx
sub rcx, rax
lock add qword [0x140d6fcc0], rcx
jmp 0x1400ee7f8
xor esi, esi
jmp 0x1400ee663
add esi, 1
cmp esi, 0x63
ja 0x1400ee680
pause
cmp byte [0x140df0d41], 0
jne 0x1400ee660
jmp 0x1400ee69c
xor ecx, ecx
mov rdi, r8
call qword [sym.imp.api_ms_win_core_synch_l1_2_0.dll_Sleep]
mov r8, rdi
mov r10, qword [rsp + 0x30]
cmp byte [0x140df0d41], 0
jne 0x1400ee660
mov al, 1
xchg byte [0x140df0d41], al
test al, al
jne 0x1400ee660
jmp 0x1400ee330
mov rcx, rbx
mov rdx, rbp
mov rdi, r8
call fcn.14011f8f0
mov r8, rdi
mov r10, qword [rsp + 0x30]
and esi, 0xfff
cmp byte [rax + rsi], 0
jne 0x1400ee5c8
nop word cs:[rax + rax]
nop dword [rax]
mov rax, qword [0x140db0ac0]
lea rcx, [rax - 1]
test rcx, r13
jne 0x1400ef24e
sub r13, rax
mov al, 1
xchg byte [0x140df0d00], al
test al, al
jne 0x1400eeb77
mov r9, qword [r13 + 0x18]
mov rcx, qword [0x140db0ac8]
mov rax, qword [rcx + r9*8]
cmp rax, r13
jne 0x1400ef28f
mov rax, qword [0x140df0ad0]
cmp r9, rax
jae 0x1400ef272
lea rdx, [rax - 1]
mov qword [0x140df0ad0], rdx
mov rax, qword [rcx + rax*8 - 8]
mov qword [rcx + r9*8], rax
mov rax, qword [0x140db0ac8]
mov rax, qword [rax + r9*8]
mov qword [rax + 0x18], r9
mov byte [0x140df0ad8], 0
add qword [0x140df0ae8], 1
mov rax, qword [r13 + 8]
sub qword [0x140df0af0], rax
neg rax
lock add qword [0x140df0d18], rax
mov rax, qword [r13 + 8]
xor ecx, ecx
sub rcx, rax
lock add qword [0x140df0d20], rcx
mov byte [0x140df0d00], 0
mov rbp, qword [r13]
test rbp, rbp
je 0x1400ee7f8
mov r14, qword [r13 + 8]
test r14, r14
je 0x1400ee7f8
mov rsi, r8
mov r8d, 0x30
mov rcx, rbp
lea rdx, [rsp + 0x58]
call qword [sym.imp.KERNEL32.dll_VirtualQuery]
test rax, rax
je 0x1400ef2b6
mov rcx, rbp
xor edx, edx
mov r8d, 0x8000
call qword [sym.imp.KERNEL32.dll_VirtualFree]
test eax, eax
jne 0x1400ee7f0
mov rcx, rbp
mov rdx, r14
mov r8d, 0x4000
call qword [sym.imp.KERNEL32.dll_VirtualFree]
test eax, eax
je 0x1400ef3ea
mov r10, qword [rsp + 0x30]
mov r8, rsi
lea rax, [r8 + r12]
add rax, 0x50
mov qword [rax], 0
mov r14, qword [rsp + 0x48]
mov rdi, qword [r8 + r12 + 0x48]
test rdi, rdi
je 0x1400ee2c7
mov al, byte [0x140df0d40]
test al, al
je 0x1400ee840
movabs rax, 0x7fffffffffff
cmp rdi, rax
jbe 0x1400eeaae
jmp 0x1400eec60
mov al, 1
xchg byte [0x140df0d41], al
test al, al
jne 0x1400eebcd
cmp byte [0x140df0d40], 0
jne 0x1400eea94
mov rsi, r8
mov byte [0x140df0d08], 0
mov byte [0x140df0d09], 0
mov byte [0x140df0d0a], 0
mov byte [0x140df0d0b], 0
mov byte [0x140df0d0c], 0
mov byte [0x140df0d0d], 0
mov byte [0x140df0d0e], 0
mov byte [0x140df0d0f], 0
mov byte [0x140df0d10], 0
mov byte [0x140df0d11], 0
mov byte [0x140df0d12], 0
mov byte [0x140df0d13], 0
mov byte [0x140df0d14], 0
mov byte [0x140df0d15], 0
mov byte [0x140df0d16], 0
mov byte [0x140df0d17], 0
mov byte [0x140df0d18], 0
mov byte [0x140df0d19], 0
mov byte [0x140df0d1a], 0
mov byte [0x140df0d1b], 0
mov byte [0x140df0d1c], 0
mov byte [0x140df0d1d], 0
mov byte [0x140df0d1e], 0
mov byte [0x140df0d1f], 0
mov byte [0x140df0d20], 0
mov byte [0x140df0d21], 0
mov byte [0x140df0d22], 0
mov byte [0x140df0d23], 0
mov byte [0x140df0d24], 0
mov byte [0x140df0d25], 0
mov byte [0x140df0d26], 0
mov byte [0x140df0d27], 0
mov byte [0x140df0d28], 0
mov byte [0x140df0d29], 0
mov byte [0x140df0d2a], 0
mov byte [0x140df0d2b], 0
mov byte [0x140df0d2c], 0
mov byte [0x140df0d2d], 0
mov byte [0x140df0d2e], 0
mov byte [0x140df0d2f], 0
mov byte [0x140d6fd00], 0
xor eax, eax
nop word cs:[rax + rax]
nop dword [rax + rax]
mov byte [rax + rbx + 8], 0
mov byte [rax + rbx + 9], 0
mov byte [rax + rbx + 0xa], 0
mov byte [rax + rbx + 0xb], 0
mov byte [rax + rbx + 0xc], 0
mov byte [rax + rbx + 0xd], 0
mov byte [rax + rbx + 0xe], 0
mov byte [rax + rbx + 0xf], 0
add rax, 8
cmp rax, 0x40000
jne 0x1400ee990
lea rcx, [0x140dafd40]
xor edx, edx
mov r8, qword [rsp + 0x40]
call sub.msvcrt.dll_memset
mov rax, 0xfffffffffffbfdb8
nop
mov byte [rax + rbx + 0x81008], 0
mov byte [rax + rbx + 0x81009], 0
mov byte [rax + rbx + 0x8100a], 0
mov byte [rax + rbx + 0x8100b], 0
mov byte [rax + rbx + 0x8100c], 0
mov byte [rax + rbx + 0x8100d], 0
mov byte [rax + rbx + 0x8100e], 0
mov byte [rax + rbx + 0x8100f], 0
mov byte [rax + rbx + 0x81010], 0
mov byte [rax + rbx + 0x81011], 0
mov byte [rax + rbx + 0x81012], 0
mov byte [rax + rbx + 0x81013], 0
add rax, 0xc
jne 0x1400ee9e0
mov rax, qword [0x140df0d68]
test rax, rax
mov r10, qword [rsp + 0x30]
mov r8, rsi
jne 0x1400eea78
lea rcx, [rsp + 0x58]
call qword [sym.imp.KERNEL32.dll_GetSystemInfo]
mov r8, rsi
mov r10, qword [rsp + 0x30]
mov eax, dword [rsp + 0x5c]
mov qword [0x140df0d68], rax
mov qword [0x140db0ac0], rax
lea rax, [0x140db0ad0]
mov qword [0x140db0ac8], rax
mov byte [0x140df0d40], 1
mov byte [0x140df0d41], 0
movabs rax, 0x7fffffffffff
cmp rdi, rax
ja 0x1400eec60
mov rbp, rdi
shr rbp, 0x20
mov rax, qword [rbx + rbp*8 + 8]
test rax, rax
je 0x1400eec60
mov rsi, rdi
shr rsi, 0x14
mov rax, qword [rbx + rbp*8 + 8]
test rax, rax
je 0x1400eec2d
and esi, 0xfff
cmp byte [rax + rsi], 0
je 0x1400eec60
mov rax, qword [rbx + rbp*8 + 8]
test rax, rax
je 0x1400ef2da
mov rax, qword [rbx + rbp*8 + 8]
test rax, rax
je 0x1400eeee7
movzx r9d, byte [rax + rsi]
test r9, r9
je 0x1400ef2da
cmp r9b, 0x36
jae 0x1400ef2fe
mov rbp, r9
shl rbp, 0xa
lea rax, [0x140d624b0]
lea r14, [rax + rbp]
mov rcx, qword [rbp + rax + 8]
test rcx, rcx
je 0x1400eef4c
mov rax, qword [r14]
cmp rax, rcx
je 0x1400ef04e
lea rcx, [rax + 1]
mov qword [r14], rcx
mov qword [r14 + rax*8 + 0x20], rdi
lea rax, [0x140d624b0]
mov rax, qword [rbp + rax + 0x10]
xor ecx, ecx
sub rcx, rax
lock add qword [0x140d6fcc0], rcx
mov r14, qword [rsp + 0x48]
jmp 0x1400ee2b8
xor esi, esi
jmp 0x1400eeb83
add esi, 1
cmp esi, 0x63
ja 0x1400eeba0
pause
cmp byte [0x140df0d00], 0
jne 0x1400eeb80
jmp 0x1400eebbc
xor ecx, ecx
mov rdi, r8
call qword [sym.imp.api_ms_win_core_synch_l1_2_0.dll_Sleep]
mov r8, rdi
mov r10, qword [rsp + 0x30]
cmp byte [0x140df0d00], 0
jne 0x1400eeb80
mov al, 1
xchg byte [0x140df0d00], al
test al, al
jne 0x1400eeb80
jmp 0x1400ee707
xor esi, esi
jmp 0x1400eebe3
add esi, 1
cmp esi, 0x63
ja 0x1400eec00
pause
cmp byte [0x140df0d41], 0
jne 0x1400eebe0
jmp 0x1400eec1c
xor ecx, ecx
mov rbp, r8
call qword [sym.imp.api_ms_win_core_synch_l1_2_0.dll_Sleep]
mov r8, rbp
mov r10, qword [rsp + 0x30]
cmp byte [0x140df0d41], 0
jne 0x1400eebe0
mov al, 1
xchg byte [0x140df0d41], al
test al, al
jne 0x1400eebe0
jmp 0x1400ee850
mov rcx, rbx
mov rdx, rbp
mov r13, r8
call fcn.14011f8f0
mov r8, r13
mov r10, qword [rsp + 0x30]
and esi, 0xfff
cmp byte [rax + rsi], 0
jne 0x1400eeae8
nop word cs:[rax + rax]
nop dword [rax]
mov rax, qword [0x140db0ac0]
lea rcx, [rax - 1]
test rcx, rdi
jne 0x1400ef24e
sub rdi, rax
mov al, 1
xchg byte [0x140df0d00], al
test al, al
jne 0x1400eed80
mov r9, qword [rdi + 0x18]
mov rcx, qword [0x140db0ac8]
mov rax, qword [rcx + r9*8]
cmp rax, rdi
jne 0x1400ef296
mov rax, qword [0x140df0ad0]
cmp r9, rax
jae 0x1400ef272
lea rdx, [rax - 1]
mov qword [0x140df0ad0], rdx
mov rax, qword [rcx + rax*8 - 8]
mov qword [rcx + r9*8], rax
mov rax, qword [0x140db0ac8]
mov rax, qword [rax + r9*8]
mov qword [rax + 0x18], r9
mov byte [0x140df0ad8], 0
add qword [0x140df0ae8], 1
mov rax, qword [rdi + 8]
sub qword [0x140df0af0], rax
neg rax
lock add qword [0x140df0d18], rax
mov rax, qword [rdi + 8]
xor ecx, ecx
sub rcx, rax
lock add qword [0x140df0d20], rcx
mov byte [0x140df0d00], 0
mov rbp, qword [rdi]
test rbp, rbp
je 0x1400ee2b8
mov rsi, qword [rdi + 8]
test rsi, rsi
je 0x1400ee2b8
mov rdi, r8
mov r8d, 0x30
mov rcx, rbp
lea rdx, [rsp + 0x58]
call qword [sym.imp.KERNEL32.dll_VirtualQuery]
test rax, rax
je 0x1400ef2b6
mov rcx, rbp
xor edx, edx
mov r8d, 0x8000
call qword [sym.imp.KERNEL32.dll_VirtualFree]
test eax, eax
jne 0x1400ee2b0
mov rcx, rbp
mov rdx, rsi
mov r8d, 0x4000
call qword [sym.imp.KERNEL32.dll_VirtualFree]
test eax, eax
jne 0x1400ee2b0
jmp 0x1400ef412
xor esi, esi
jmp 0x1400eed93
add esi, 1
cmp esi, 0x63
ja 0x1400eedb0
pause
cmp byte [0x140df0d00], 0
jne 0x1400eed90
jmp 0x1400eedcc
xor ecx, ecx
mov rbp, r8
call qword [sym.imp.api_ms_win_core_synch_l1_2_0.dll_Sleep]
mov r8, rbp
mov r10, qword [rsp + 0x30]
cmp byte [0x140df0d00], 0
jne 0x1400eed90
mov al, 1
xchg byte [0x140df0d00], al
test al, al
jne 0x1400eed90
jmp 0x1400eec87
mov rcx, rbx
mov rdx, rbp
mov rdi, r8
call fcn.14011f8f0
mov r8, rdi
mov r10, qword [rsp + 0x30]
movzx r9d, byte [rax + rsi]
test r9, r9
jne 0x1400ee5f2
jmp 0x1400ef2da
mov rsi, r8
lea rax, [0x140d624b0]
lea rdi, [rax + rbp]
add rdi, 8
mov r10d, 0x10
mov r11, 0xfffffffffffffff1
lea r8, [0x140d628c8]
jmp 0x1400eee4c
mov qword [r8], rax
add r10, 0x10
add r11, 1
add r8, 0x400
cmp r11, 0x26
je 0x1400eef10
mov ecx, 0x200
cmp r11, 0x25
je 0x1400eee87
lea rax, [r11 + 0x10]
mov rcx, r10
cmp rax, 0x11
jb 0x1400eee87
mov rcx, r11
shr rcx, 2
mov edx, 0x100
shl rdx, cl
mov rcx, rdx
shr rcx, 2
and eax, 3
imul rax, rcx
add rax, rdx
mov rcx, rax
mov eax, 0x4000
xor edx, edx
div ecx
cmp eax, 0x40
jae 0x1400eeed0
test rax, rax
je 0x1400eeeda
cmp rax, 0x3e
jb 0x1400eeea5
mov eax, 0x3e
lea rdx, [rax + rax]
mov qword [r8 - 0x10], rdx
mov qword [r8 - 8], rcx
lea rdx, [rax*8 + 0x10]
mov eax, 0x14
cmp rcx, rdx
jb 0x1400eee30
xor eax, eax
jmp 0x1400eee30
mov eax, 0x40
test rax, rax
jne 0x1400eee9a
mov eax, 1
cmp rax, 0x3e
jae 0x1400eeea0
jmp 0x1400eeea5
mov rcx, rbx
mov rdx, rbp
mov rbp, r8
call fcn.14011f8f0
mov r8, rbp
mov r10, qword [rsp + 0x30]
movzx r9d, byte [rax + rsi]
test r9, r9
jne 0x1400eeb12
jmp 0x1400ef2da
mov rcx, qword [rdi]
mov r10, qword [rsp + 0x30]
mov r8, rsi
mov rax, qword [r14]
cmp rax, rcx
jne 0x1400ee628
lea rcx, [0x140d624b0]
mov rdx, r14
mov rsi, r8
mov r8, rbx
call fcn.140119560
mov r8, rsi
mov r10, qword [rsp + 0x30]
mov rax, qword [r14]
jmp 0x1400ee628
mov r13, r8
lea rax, [0x140d624b0]
lea rsi, [rax + rbp]
add rsi, 8
mov r10d, 0x10
mov r11, 0xfffffffffffffff1
lea r8, [0x140d628c8]
jmp 0x1400eef9c
mov qword [r8], rax
add r10, 0x10
add r11, 1
add r8, 0x400
cmp r11, 0x26
je 0x1400ef037
mov ecx, 0x200
cmp r11, 0x25
je 0x1400eefd7
lea rax, [r11 + 0x10]
mov rcx, r10
cmp rax, 0x11
jb 0x1400eefd7
mov rcx, r11
shr rcx, 2
mov edx, 0x100
shl rdx, cl
mov rcx, rdx
shr rcx, 2
and eax, 3
imul rax, rcx
add rax, rdx
mov rcx, rax
mov eax, 0x4000
xor edx, edx
div ecx
cmp eax, 0x40
jae 0x1400ef020
test rax, rax
je 0x1400ef02a
cmp rax, 0x3e
jb 0x1400eeff5
mov eax, 0x3e
lea rdx, [rax + rax]
mov qword [r8 - 0x10], rdx
mov qword [r8 - 8], rcx
lea rdx, [rax*8 + 0x10]
mov eax, 0x14
cmp rcx, rdx
jb 0x1400eef80
xor eax, eax
jmp 0x1400eef80
mov eax, 0x40
test rax, rax
jne 0x1400eefea
mov eax, 1
cmp rax, 0x3e
jae 0x1400eeff0
jmp 0x1400eeff5
mov rcx, qword [rsi]
mov r10, qword [rsp + 0x30]
mov r8, r13
mov rax, qword [r14]
cmp rax, rcx
jne 0x1400eeb48
lea rcx, [0x140d624b0]
mov rdx, r14
mov rsi, r8
mov r8, rbx
call fcn.140119560
mov r8, rsi
mov r10, qword [rsp + 0x30]
mov rax, qword [r14]
jmp 0x1400eeb48
mov rax, qword [r10 + 0xa00028]
movabs r11, 0xefffffffffffffff
movabs r14, 0x6000000000000000
movabs r12, 0xfffff0000000000
movabs rbx, 0xffffff0000000000
xor r8d, r8d
movabs r9, 0xbfffff00000fffff
movabs r10, 0x4000000000000000
lea r15, [0x140d624b0]
movabs rbp, 0x2000000000000000
jmp 0x1400ef104
mov rsi, rax
shr rsi, 0x14
and esi, 0xfffff
test rax, rbp
cmovne rsi, r8
mov rcx, rdi
and rcx, r9
or rcx, r10
test rsi, rsi
cmove rcx, rdi
mov rdx, qword [rsp + 0x30]
lock cmpxchg qword [rdx + 0xa00028], rcx
je 0x1400ef145
mov rsi, rax
and rsi, r11
test rax, r14
sete cl
test rax, r12
setne dl
lea rdi, [rsi + rbx]
or rdi, rbp
test cl, dl
cmove rdi, rsi
je 0x1400ef0d0
mov rcx, qword [rsp + 0x30]
lock cmpxchg qword [rcx + 0xa00028], rdi
jne 0x1400ef104
mov rcx, qword [rsp + 0x38]
lock add dword [rcx], 1
call sub.api_ms_win_core_synch_l1_2_0.dll_WakeByAddressSingle
jmp 0x1400ef14e
test rsi, rsi
jne 0x1400ef389
mov al, byte [0x140df0d40]
test al, al
jne 0x1400ef193
mov al, 1
xchg byte [0x140df0d41], al
test al, al
jne 0x1400ef3ab
cmp byte [0x140df0d40], 0
jne 0x1400ef18c
lea rcx, [0x140d6fd00]
mov edx, 0xffffffff
xor r8d, r8d
call fcn.140115cb0
mov byte [0x140df0d40], 1
mov byte [0x140df0d41], 0
mov ebp, 1
lea rbx, [0x140d6fd00]
jmp 0x1400ef1ba
add rbp, 1
cmp rbp, 0x36
je 0x1400ef1e9
mov rsi, rbp
shl rsi, 0xa
cmp qword [rsi + r15], 0
je 0x1400ef1b0
add rsi, r15
nop dword [rax + rax]
mov rcx, r15
mov rdx, rsi
mov r8, rbx
mov r9, rbp
call fcn.140119560
cmp qword [rsi], 0
jne 0x1400ef1d0
jmp 0x1400ef1b0
mov al, 1
xchg byte [0x140df0d28], al
test al, al
jne 0x1400ef31f
mov rax, qword [0x140d6fcb0]
mov rcx, qword [0x140d6fcb8]
mov qword [rcx], rax
mov rax, qword [0x140d6fcb0]
mov qword [rax + 8], rcx
mov rax, qword [0x140d6fcc0]
lock add qword [0x140df0d18], rax
mov rax, qword [0x140d6fcc8]
lock add qword [0x140df0d20], rax
mov byte [0x140df0d28], 0
add rsp, 0x88
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
mov qword [rsp + 0x20], 0
lea rcx, str....._sanitizer_common_sanitizer_allocator_secondary.h
lea r8, str.__IsAligned_p__page_size________0_
mov edx, 0x129
xor r9d, r9d
call fcn.1400c0bd0
mov qword [rsp + 0x20], rax
lea rcx, str....._sanitizer_common_sanitizer_allocator_secondary.h
lea r8, str.__idx_______n_chunks___
mov edx, 0x8c
call fcn.1400c0bd0
mov qword [rsp + 0x20], r13
jmp 0x1400ef29b
mov qword [rsp + 0x20], rdi
lea rcx, str....._sanitizer_common_sanitizer_allocator_secondary.h
lea r8, str.__chunks__idx_______h__
mov edx, 0x8b
mov r9, rax
call fcn.1400c0bd0
mov qword [rsp + 0x20], 0
lea rcx, str.gotsan.cpp
lea r8, str.__VirtualQuery_addr__mbi__sizeof_mbi________0_
mov edx, 0x227f
xor r9d, r9d
call fcn.1400c0bd0
mov qword [rsp + 0x20], 0
lea rcx, str....._sanitizer_common_sanitizer_allocator_local_cache.h
lea r8, str.__class_id_______0UL__
mov edx, 0xaf
xor r9d, r9d
call fcn.1400c0bd0
mov qword [rsp + 0x20], 0x36
lea rcx, str....._sanitizer_common_sanitizer_allocator_local_cache.h
lea r8, str.__class_id_______kNumClasses__
mov edx, 0xb0
call fcn.1400c0bd0
xor esi, esi
mov rdi, qword [sym.imp.api_ms_win_core_synch_l1_2_0.dll_Sleep]
jmp 0x1400ef32d
add esi, 1
cmp esi, 0x63
ja 0x1400ef336
pause
jmp 0x1400ef33a
xor ecx, ecx
call rdi
cmp byte [0x140df0d28], 0
jne 0x1400ef32a
mov al, 1
xchg byte [0x140df0d28], al
test al, al
jne 0x1400ef32a
jmp 0x1400ef1f9
xor esi, esi
mov rdi, qword [sym.imp.api_ms_win_core_synch_l1_2_0.dll_Sleep]
jmp 0x1400ef362
add esi, 1
cmp esi, 0x63
ja 0x1400ef36b
pause
jmp 0x1400ef36f
xor ecx, ecx
call rdi
cmp byte [0x140df0d41], 0
jne 0x1400ef35f
mov al, 1
xchg byte [0x140df0d41], al
test al, al
jne 0x1400ef35f
jmp 0x1400ee0e6
mov rcx, qword [rsp + 0x30]
lock add dword [rcx + 0xa00034], esi
add rcx, 0xa00034
cmp esi, 1
jne 0x1400ef3e0
call sub.api_ms_win_core_synch_l1_2_0.dll_WakeByAddressSingle
jmp 0x1400ef14e
xor esi, esi
mov rdi, qword [sym.imp.api_ms_win_core_synch_l1_2_0.dll_Sleep]
jmp 0x1400ef3b9
add esi, 1
cmp esi, 0x63
ja 0x1400ef3c2
pause
jmp 0x1400ef3c6
xor ecx, ecx
call rdi
cmp byte [0x140df0d41], 0
jne 0x1400ef3b6
mov al, 1
xchg byte [0x140df0d41], al
test al, al
jne 0x1400ef3b6
jmp 0x1400ef168
call sub.api_ms_win_core_synch_l1_2_0.dll_WakeByAddressAll
jmp 0x1400ef14e
mov rsi, qword [str.SanitizerTool]
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [rsp + 0x28], eax
mov qword [rsp + 0x20], rbp
lea rcx, str.ERROR:__s_failed_to_deallocate_0x_zx___zd__bytes_at_address__p__error_code:__d__n
mov rdx, rsi
mov r8, r14
mov r9, r14
jmp 0x1400ef438
mov rdi, qword [str.SanitizerTool]
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [rsp + 0x28], eax
mov qword [rsp + 0x20], rbp
lea rcx, str.ERROR:__s_failed_to_deallocate_0x_zx___zd__bytes_at_address__p__error_code:__d__n
mov rdx, rdi
mov r8, rsi
mov r9, rsi
call fcn.1400f0690
mov qword [rsp + 0x20], 0
lea rcx, str.gotsan.cpp
lea r8, str.___unable_to_unmap___0______0_
mov edx, 0x2289
xor r9d, r9d
call fcn.1400c0bd0
int3