Function at 0x18000f040
Capabilities:
Access peb ldr_data

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x20
mov r14, rcx
mov rax, qword gs:[0x60]
mov r12, qword [rax + 0x18]
add r12, 0x10
mov ecx, dword [0x18002da84]
mov eax, dword [0x18002da88]
lea ebx, [rcx - 1]
imul ebx, ecx
mov ecx, ebx
not ecx
mov ebp, ecx
and ebp, 0x1b82021c
mov edx, ebx
and edx, 0xe47dfde3
or edx, ebp
mov ebp, edx
not ebp
and ebp, 0xe47dfde2
and edx, 0x1b82021d
or edx, ebp
mov ebp, edx
not ebp
and ecx, ebp
and edx, ebx
or edx, ecx
not edx
or edx, ebp
cmp edx, 0xffffffff
sete bl
cmp eax, 9
setg dl
cmp eax, 0xa
setl r8b
mov ecx, ebx
xor cl, r8b
mov eax, ecx
or al, dl
xor dl, bl
not dl
and dl, bl
and cl, r8b
mov ebx, edx
and bl, cl
xor cl, dl
or cl, bl
mov ebx, ecx
and cl, al
xor al, 1
xor bl, 1
mov edx, eax
xor dl, bl
and dl, al
and bl, al
or bl, cl
mov eax, edx
xor al, 1
xor dl, bl
xor bl, 1
or bl, al
xor bl, 1
or bl, dl
mov byte [rsp + 6], bl
mov eax, dword [0x18002da74]
lea ecx, [rax - 1]
imul ecx, eax
mov eax, ecx
not eax
and eax, 0xd1a1ff9e
and ecx, 0x2e5e0061
or ecx, eax
mov eax, ecx
xor eax, 0x2c140000
xor ecx, 0x4100a500
and ecx, 0x434aa561
and eax, 0xbcb55a9e
or eax, ecx
mov ecx, eax
xor ecx, 0x434aa561
mov edx, eax
xor edx, 0x434aa560
and edx, ecx
xor eax, 0xbcb55a9e
and eax, 0xfffffffe
and ecx, 1
or ecx, eax
mov eax, edx
not eax
mov ebp, eax
and ebp, 0x41ad28ed
and edx, 0xbe52d712
or edx, ebp
mov ebp, ecx
not ebp
or eax, ebp
and ebp, 0x41ad28ed
and ecx, 0xbe52d712
or ecx, ebp
xor ecx, edx
not eax
or eax, ecx
mov ecx, eax
not ecx
mov edx, ecx
and edx, 0x9255459f
and ecx, eax
and eax, 0x6daaba60
or eax, edx
mov edx, eax
xor edx, 0x5a2a060
xor eax, 0x9255459f
mov ebp, eax
and ebp, 0x68581f9d
and edx, 0x97a7e062
or edx, ebp
mov ebp, ecx
not ebp
or eax, ebp
and ebp, 0x68581f9d
and ecx, 0x97a7e062
or ecx, ebp
mov ebp, dword [0x18002da78]
xor ecx, edx
not eax
or eax, ecx
sete cl
setne dl
cmp ebp, 0xa
setl r9b
cmp ebp, 9
setg r8b
mov ebx, edx
and bl, r8b
mov eax, r9d
and al, cl
or al, bl
xor al, 1
or al, r8b
mov r8d, eax
xor r8b, 1
or dl, r9b
xor dl, 1
xor cl, r9b
and cl, r9b
mov ebx, edx
and bl, cl
xor cl, dl
or cl, bl
mov edx, ecx
xor dl, 1
and cl, al
or al, dl
and dl, r8b
or dl, cl
mov ecx, eax
xor cl, dl
xor dl, 1
xor cl, 1
or dl, al
xor dl, 1
or dl, cl
mov byte [rsp + 7], dl
mov eax, dword [0x18002da8c]
lea edx, [rax - 1]
imul edx, eax
mov eax, edx
xor eax, 0x54ff8855
and eax, edx
or edx, 0xab0077aa
mov ecx, edx
not ecx
mov ebp, edx
and ebp, 0xff135bcf
and ecx, 0xec8010
or ecx, ebp
mov ebp, eax
not ebp
or edx, ebp
and ebp, 0xff135bcf
and eax, 0xeca430
or eax, ebp
xor eax, ecx
not edx
or edx, eax
mov eax, edx
not eax
and eax, 0xab0077aa
and edx, 0x54ff8855
or edx, eax
mov ecx, edx
not ecx
mov eax, ecx
or eax, 1
mov ebp, eax
not ebp
and ecx, 0xfffffffe
and edx, 1
or edx, ecx
mov ecx, eax
and ecx, 0xbf6118be
and ebp, 0x409ee740
or ebp, ecx
mov ecx, edx
not ecx
or eax, ecx
and ecx, 0xbf6118be
and edx, 0x409ee741
or edx, ecx
xor edx, ebp
not eax
or eax, edx
mov ecx, eax
not ecx
mov edx, ecx
and edx, 0x854ee5ba
and ecx, eax
and eax, 0x7ab11a45
or eax, edx
mov edx, eax
xor edx, 0x8110240
xor eax, 0x854ee5ba
mov ebp, eax
and ebp, 0x72aa18a5
and edx, 0x8d55e75a
or edx, ebp
mov ebp, ecx
not ebp
or eax, ebp
and ebp, 0x72aa18a5
and ecx, 0x8d55e75a
or ecx, ebp
mov ebp, dword [0x18002da90]
xor ecx, edx
not eax
or eax, ecx
setne r8b
sete r9b
cmp ebp, 0xa
setl r10b
cmp ebp, 9
setg al
mov ebx, eax
xor bl, r10b
and bl, al
mov ecx, ebx
xor cl, 1
and bl, cl
mov edx, ecx
and dl, bl
xor bl, cl
movabs rdi, 0x40d215994d8f58c0
or bl, dl
xor bl, r9b
mov r11d, ebx
xor r11b, 1
and r8b, r10b
or r10b, r9b
and al, r9b
or al, r8b
mov edx, r10d
xor dl, al
xor al, 1
xor dl, 1
or al, r10b
xor al, 1
or al, dl
mov edx, eax
xor dl, 1
and dl, al
xor dl, 1
mov ecx, eax
xor cl, dl
or dl, al
xor dl, 1
or dl, cl
mov esi, edx
xor sil, 1
mov eax, r11d
and al, bl
and sil, dl
mov ecx, r11d
and cl, al
xor al, r11b
or al, cl
xor sil, 1
mov ecx, edx
xor cl, sil
or sil, dl
xor sil, 1
or sil, cl
mov ecx, eax
xor cl, 1
and cl, sil
xor sil, 1
and sil, al
movabs rbp, 0x32a4af6406109a99
or sil, cl
mov eax, ebx
xor al, dl
or dl, bl
xor dl, 1
or dl, al
xor sil, 1
mov eax, esi
xor al, dl
or sil, dl
xor sil, 1
or sil, al
mov r15, r14
lea rax, [r14 - 1]
mov qword [rsp + 0x10], rax
mov qword [rsp + 0x18], r12
mov qword [rsp + 8], r12
mov rax, qword [rsp + 8]
mov rax, qword [rax]
mov qword [rsp + 8], rax
cmp rax, qword [rsp + 0x18]
je 0x18000f682
test byte [rsp + 6], 1
je 0x18000f660
mov rax, qword [rsp + 0x10]
test byte [rsp + 7], 1
je 0x18000f670
nop word cs:[rax + rax]
nop dword [rax + rax]
cmp byte [rax + 1], 0
lea rax, [rax + 1]
jne 0x18000f450
test sil, 1
je 0x18000f680
movabs rdx, 0xe896ee8a9ae08b3e
movabs rcx, 0x32558631dfcc4b3
mov rbx, rcx
add rcx, rdx
sub rdx, rcx
movabs rcx, 0xc450954f095ec030
add rax, rcx
add rax, rdx
sub rcx, rax
movabs rax, 0xfe2d3340c280452f
sub rcx, rax
movabs r9, 0xc6a4a33911ec8903
add rcx, r9
add rcx, r15
sub r9, rcx
movabs rcx, 0xc3b0b5bb55393a3
sub r9, rcx
sub r9, rax
add r9, rcx
movabs rax, 0x49005868b5cd0f0d
sub r9, rax
add r9, rbx
add r9, rax
je 0x18000f629
mov rax, qword [rsp + 8]
mov r8, qword [rax + 0x60]
xor r14d, r14d
mov r11, r9
nop
movzx eax, word [r8 + r14*2]
test eax, eax
sete r10b
setne r13b
movsx ecx, byte [r15 + r14]
lea edx, [rax - 0x41]
lea r12d, [rax + 0x20]
cmp dx, 0x1a
cmovae r12d, eax
lea edx, [rcx - 0x41]
lea ebx, [rcx + 0x20]
cmp dl, 0x1a
cmovae ebx, ecx
sub r12d, ebx
setne cl
xor r13b, cl
not r13b
and r13b, cl
or eax, r12d
sete al
mov edx, r13d
and dl, al
xor r13b, al
or r13b, dl
mov eax, r10d
or al, cl
xor r10b, cl
mov ecx, eax
xor cl, r10b
xor r10b, 1
xor cl, 1
or r10b, al
xor r10b, 1
or r10b, cl
mov eax, r10d
xor al, 1
and r10b, al
mov ecx, eax
and cl, r10b
xor r10b, al
or r10b, cl
mov ecx, r10d
xor cl, 1
mov edx, r13d
xor dl, 1
mov eax, r13d
and al, dl
xor al, 1
mov ebx, eax
xor bl, dl
or al, dl
xor al, 1
or al, bl
mov ebx, eax
xor bl, 1
and bl, r10b
and al, cl
or al, bl
mov ebx, eax
and bl, 1
xor dl, cl
or r10b, r13b
xor r10b, 1
or r10b, dl
mov ecx, r10d
not cl
and cl, 1
cmp bl, cl
jne 0x18000f620
xor al, 1
or al, r10b
xor al, 1
test al, 1
jne 0x18000f620
movabs rax, 0xe2f9beb8778ff8dd
mov rcx, rax
sub r11, rax
movabs rax, 0xfb82a4d61d7f28e2
add r11, rax
add r11, rcx
add r11, rdi
movabs rcx, 0xa7483b8d0fa6fde1
add r11, rcx
sub r11, rax
sub r11, rcx
sub r11, rbp
sub r11, rdi
add r11, rbp
add r11, 0xffffffffffffffff
add r14, 1
cmp r9, r14
jne 0x18000f4f0
jmp 0x18000f629
test r12d, r12d
jne 0x18000f40e
test byte [rsp + 6], 1
je 0x18000f650
mov rax, qword [rsp + 8]
mov rax, qword [rax + 0x30]
add rsp, 0x20
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
jmp 0x18000f650
jmp 0x18000f660
jmp 0x18000f670
jmp 0x18000f680
test byte [rsp + 6], 1
je 0x18000f690
xor eax, eax
jmp 0x18000f639
jmp 0x18000f690