Function at 0x18000a980
Capabilities:
Access peb ldr_data

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x28
mov r15, rcx
mov ecx, dword [0x180028a9c]
mov eax, dword [0x180028aa0]
lea edi, [rcx - 1]
imul edi, ecx
mov edx, edi
not edx
mov ecx, edx
and ecx, 0x8479f807
mov ebp, edi
and ebp, 0x50000000
or ebp, ecx
xor ebp, 0x50000000
mov ebx, edi
and ebx, 0x2b8607f8
or ebx, ebp
mov ebp, ebx
not ebp
and ebp, 0x3ebdad19
and ebx, 0xc14252e6
or ebx, ebp
mov ecx, ebx
xor ecx, 0x153baae0
xor ebx, 0xeac4551f
and edx, ebx
and ecx, edi
or ecx, edx
not ecx
or ecx, ebx
cmp ecx, 0xffffffff
setne cl
cmp eax, 0xa
setl dl
cmp eax, 9
setg al
mov ebx, eax
and bl, cl
xor al, cl
or al, bl
mov r8d, eax
xor r8b, 1
mov ebx, ecx
or bl, dl
xor cl, dl
not cl
and cl, dl
xor cl, 1
mov edx, ebx
xor dl, cl
or cl, bl
xor cl, 1
or cl, dl
mov edx, ecx
xor dl, 1
and cl, al
or al, dl
xor al, 1
and dl, r8b
or dl, cl
mov ecx, eax
and cl, dl
test cl, 1
jne 0x18000aa64
xor al, dl
test al, 1
jne 0x18000aa64
nop dword [rax]
mov rax, qword gs:[0x60]
mov rax, qword gs:[0x60]
jmp 0x18000aa50
mov rbx, qword gs:[0x60]
mov eax, dword [0x180028a84]
lea esi, [rax - 1]
imul esi, eax
mov ecx, esi
not ecx
mov eax, ecx
and eax, 0xacc0e65
mov edx, esi
and edx, 0xf533f19a
or edx, eax
mov eax, edx
xor eax, 0x10211092
xor edx, 0x8080665
mov edi, esi
xor edi, 0x9d2b17f7
and edi, esi
or edx, 0x62d4e808
mov ebp, edx
and ebp, 0x855e014c
and eax, 0x182116b3
or eax, ebp
mov ebp, edi
not ebp
or edx, ebp
and ebp, 0x855e014c
and edi, 0x7aa1feb3
or edi, ebp
mov rbp, qword [rbx + 0x18]
add rbp, 0x10
xor edi, eax
not edx
or edx, edi
mov eax, edx
not eax
and eax, 0x62d4e809
and edx, 0x9d2b17f6
or edx, eax
mov eax, edx
not eax
mov ebx, eax
and ebx, 0xaafb22e8
and edx, 0x5504dd17
or edx, ebx
mov ebx, dword [0x180028a88]
and esi, 0xaafb22e8
and ecx, 0x5504dd17
or ecx, esi
xor ecx, edx
xor eax, ecx
test eax, ecx
setne cl
cmp ebx, 0xa
setl al
cmp ebx, 9
setg bl
mov edx, ebx
and dl, cl
xor bl, cl
or bl, dl
mov edx, ecx
or dl, al
xor cl, al
not cl
and cl, al
mov eax, edx
xor al, cl
xor cl, 1
xor al, 1
or cl, dl
xor cl, 1
or cl, al
mov eax, ecx
and cl, bl
xor bl, 1
xor al, 1
mov r8d, ebx
xor r8b, al
and r8b, bl
and al, bl
or al, cl
mov ecx, r8d
xor cl, 1
xor r8b, al
xor al, 1
or al, cl
mov edx, dword [0x180028aa4]
lea edi, [rdx - 1]
imul edi, edx
mov edx, edi
not edx
mov ebx, edx
and ebx, 0x19ce4cd8
mov ecx, edi
and ecx, 0xe631b326
or ecx, ebx
xor ecx, 0xe631b326
mov ebx, edi
and ebx, 1
or ebx, ecx
and edx, 0x504750cc
and edi, 0xafb8af33
or edi, edx
mov edx, ebx
not edx
mov ecx, edx
and ecx, 0xb14a5b92
and ebx, 0x4eb5a46d
or ebx, ecx
mov ecx, edi
xor ecx, 0xeb0a421
xor edi, 0x10425080
and edi, 0xb14a5b92
and ecx, 0x4eb5a46d
or ecx, edi
xor al, 1
or al, r8b
mov byte [rsp + 7], al
xor ecx, ebx
mov eax, dword [0x180028aa8]
xor edx, ecx
test edx, ecx
setne r9b
sete bl
cmp eax, 9
setg sil
cmp eax, 0xa
setl cl
mov eax, ecx
xor al, sil
and al, cl
mov ecx, ebx
xor cl, r9b
and cl, bl
mov edx, ecx
xor dl, 1
mov ebx, edx
or bl, cl
xor cl, bl
or bl, dl
xor cl, 1
xor bl, 1
or bl, cl
mov ecx, ebx
xor cl, 1
or cl, al
xor al, 1
xor cl, 1
or al, bl
xor al, 1
mov edx, ecx
and dl, al
xor al, cl
or al, dl
mov ecx, r9d
xor cl, sil
mov edx, ecx
xor dl, 1
or sil, r9b
xor sil, 1
or sil, cl
xor cl, sil
or sil, dl
xor cl, 1
xor sil, 1
or sil, cl
xor sil, 1
mov ecx, eax
xor cl, sil
or sil, al
xor sil, 1
or sil, cl
xor sil, 1
mov eax, ecx
and al, sil
xor sil, cl
or sil, al
mov rax, r15
not rax
mov qword [rsp + 0x10], rax
mov qword [rsp + 0x18], rbp
mov qword [rsp + 8], rbp
movabs rdi, 0x339fea94900bc048
mov rbp, qword [rsp + 8]
mov rbp, qword [rbp]
cmp rbp, qword [rsp + 0x18]
je 0x18000aee2
test byte [rsp + 7], 1
je 0x18000aee0
mov r14b, byte [r15]
mov r13, r15
test r14b, r14b
je 0x18000acdb
cmp byte [r13 + 1], 0
lea r13, [r13 + 1]
jne 0x18000acd0
movabs rdx, 0x15599b9310076abe
lea rax, [rdx + r15]
sub rdx, rax
movabs rax, 0x4f7023cb9e265eca
mov rcx, rax
lea r11, [rax + r13]
movabs rax, 0xf87a2818384b2d13
sub r11, rax
sub r11, rcx
movabs rcx, 0xc1b92e0022ce1c91
sub r11, rcx
add r11, rdx
add r11, rcx
movabs rcx, 0xaf1da5bff8225dd7
add r11, rcx
add r11, rax
sub r11, rcx
mov qword [rsp + 8], rbp
je 0x18000aee6
mov rax, qword [rbp + 0x60]
mov qword [rsp + 0x20], rax
add r13, qword [rsp + 0x10]
xor r10d, r10d
nop
mov rax, qword [rsp + 0x20]
movzx ebx, word [rax + r10*2]
cmp ebx, 0x41
jb 0x18000ad80
test sil, 1
je 0x18000aec0
lea r9d, [rbx + 0x20]
cmp bx, 0x5b
cmovae r9d, ebx
jmp 0x18000ad8d
mov r9d, ebx
test sil, 1
je 0x18000aed0
movsx eax, r14b
lea edx, [rax - 0x41]
lea ebp, [rax + 0x20]
cmp dl, 0x1a
cmovae ebp, eax
sub r9d, ebp
setne bpl
sete r14b
test bx, bx
setne cl
sete al
mov ebx, ecx
mov edx, ebp
and dl, cl
mov r8d, eax
and r8b, r14b
or cl, r14b
or r14b, al
or bl, bpl
mov r12d, ebx
xor r12b, r14b
or bl, r14b
xor bl, 1
or bl, r12b
or r8b, dl
xor al, bpl
xor cl, 1
or cl, al
mov eax, ecx
xor al, r8b
xor r8b, 1
xor al, 1
or r8b, cl
xor r8b, 1
or r8b, al
mov eax, r8d
xor al, bl
xor bl, 1
or bl, r8b
xor bl, 1
xor al, 1
mov ecx, ebx
and cl, al
test cl, 1
jne 0x18000aeb0
xor bl, al
test bl, 1
jne 0x18000aeb0
cmp r13, r10
je 0x18000aeec
movabs rax, 0xcd3a98f3e65d5f61
mov rbp, rax
add rax, rdi
movabs rbx, 0x98e9a2a54b2044c3
mov rcx, rbx
movabs rdx, 0xed73be87b0316d3c
sub rcx, rdx
sub rcx, rbx
add rcx, rdx
mov rdx, rdi
sub rdx, rax
add r11, rdx
add r11, rbp
movabs rax, 0xad55c75e7b8fb95a
add r11, rax
sub r11, rcx
sub r11, rax
movabs rax, 0x50b524f0dbb7545d
mov rcx, rax
add r11, rax
movabs rax, 0x9be51b47037c01ba
add r11, rax
sub r11, rcx
not rax
add r11, rax
movzx r14d, byte [r15 + r10 + 1]
add r10, 1
jmp 0x18000ad50
test r9d, r9d
jne 0x18000aca6
jmp 0x18000aeec
jmp 0x18000aec0
jmp 0x18000aed0
jmp 0x18000aee0
xor eax, eax
jmp 0x18000aef5
test sil, 1
je 0x18000af10
mov rax, qword [rsp + 8]
mov rax, qword [rax + 0x30]
add rsp, 0x28
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
jmp 0x18000af10