Function at 0x180010970
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 rbp, rcx
mov rax, qword gs:[0x60]
mov r14, qword [rax + 0x18]
add r14, 0x10
mov edx, dword [0x18002ea8c]
mov r8d, dword [0x18002ea90]
lea edi, [rdx - 1]
imul edi, edx
mov esi, edi
not esi
mov ebx, esi
and ebx, 0x6c214071
mov edx, edi
and edx, 0x12d08182
or edx, ebx
mov ebx, edx
xor ebx, 0x12d00102
xor edx, 0xed2f7e7d
mov ecx, edi
xor ecx, 0x7ef1c1f3
and ecx, edi
mov eax, edx
and eax, 0x440cc4f1
and ebx, 0x3af10102
or ebx, eax
mov eax, ecx
not eax
or edx, eax
and eax, 0x440cc4f1
and ecx, 0xbbf33b0e
or ecx, eax
xor ecx, ebx
not edx
or edx, ecx
mov eax, edx
not eax
and eax, 0x85e36a0a
and edx, 0x7a1c95f5
or edx, eax
xor edx, 0xfb12abf8
and esi, 0xa7a57909
and edi, 0x585a86f6
or edi, esi
xor edi, 0x585a86f6
mov eax, edx
and eax, edi
xor edi, edx
or edi, eax
cmp edi, 0xffffffff
sete al
setne cl
cmp r8d, 9
setg r9b
cmp r8d, 0xa
setl r8b
mov edx, r8d
xor dl, cl
mov ebx, edx
xor bl, r9b
and bl, dl
and cl, r8b
and al, r9b
or al, cl
mov ecx, ebx
xor cl, 1
and cl, al
mov edx, eax
xor dl, 1
mov eax, ebx
xor al, dl
and al, bl
and dl, bl
or dl, cl
mov ecx, eax
and cl, dl
xor dl, al
or dl, cl
mov byte [rsp + 7], dl
mov ecx, dword [0x18002ea74]
mov eax, dword [0x18002ea78]
lea edi, [rcx - 1]
imul edi, ecx
mov edx, edi
not edx
mov ecx, edx
and ecx, 0x42090200
mov ebx, edi
and ebx, 0x38805518
or ebx, ecx
xor ebx, 0x38805518
mov ecx, edi
and ecx, 0x8576a8e7
or ecx, ebx
mov ebx, ecx
not ebx
and ebx, 0x913dafc0
and ecx, 0x6ec2503f
or ecx, ebx
mov ebx, ecx
xor ebx, 0x144b0726
xor ecx, 0xebb4f8d9
and edx, ecx
and ebx, edi
or ebx, edx
xor ecx, ebx
test ecx, ebx
sete cl
setne dl
cmp eax, 9
setg r11b
cmp eax, 0xa
setl al
mov ebx, r11d
xor r11b, dl
and dl, al
and bl, cl
or bl, dl
or al, cl
xor al, 1
mov ecx, eax
and cl, r11b
xor r11b, al
or r11b, cl
mov eax, r11d
not al
mov ecx, ebx
xor cl, 1
and al, cl
or cl, r11b
xor cl, 1
and r11b, bl
or r11b, al
mov eax, ecx
and al, r11b
xor r11b, cl
or r11b, al
mov ecx, dword [0x18002ea94]
lea ebx, [rcx - 1]
imul ebx, ecx
mov esi, ebx
not esi
mov edx, esi
and edx, 0xfd34abe3
mov ecx, ebx
and ecx, 0x2cb541c
or ecx, edx
mov edx, ecx
xor edx, 0xc1141c
xor ecx, 0xfd34abe2
mov eax, ebx
xor eax, 0xfffffffe
and eax, ebx
or ecx, 1
mov edi, ecx
and edi, 0x8b0e4943
and edx, 0x74f1b6bc
or edx, edi
mov edi, eax
not edi
or ecx, edi
and edi, 0x8b0e4943
and eax, 0x74f1b6bc
or eax, edi
movabs rdi, 0x3b54760fd01d3f8d
xor eax, edx
not ecx
or ecx, eax
and esi, 0xae64ffe1
and ebx, 0x519b001e
or ebx, esi
mov eax, ecx
not eax
mov edx, eax
and edx, 0xc04b9236
and ecx, 0x3fb46dc9
or ecx, edx
mov edx, ebx
xor edx, 0x11900008
xor ebx, 0x80409220
and ebx, 0xc04b9236
and edx, 0x3fb46dc9
or edx, ebx
xor edx, ecx
not edx
or edx, eax
cmp edx, 0xffffffff
sete dl
setne cl
cmp dword [0x18002ea98], 0xa
setl r8b
xor cl, r8b
xor cl, 1
mov ebx, r8d
or bl, dl
xor bl, 1
or bl, cl
xor r8b, dl
mov ecx, r8d
xor cl, 1
mov edx, r8d
and dl, cl
mov eax, edx
xor al, 1
xor dl, r8b
or al, cl
xor al, 1
or al, dl
mov r8d, eax
and r8b, bl
mov edx, ebx
and dl, cl
xor cl, bl
xor bl, 1
xor al, 1
and al, bl
or al, r8b
or cl, dl
xor al, 1
mov edx, eax
xor dl, cl
or al, cl
xor al, 1
or al, dl
mov qword [rsp + 8], rbp
lea rcx, [rbp - 1]
mov qword [rsp + 0x10], rcx
mov qword [rsp + 0x18], r14
test byte [rsp + 7], 1
je 0x180010e60
mov r14, qword [r14]
cmp r14, qword [rsp + 0x18]
je 0x180010e72
mov r9, qword [rsp + 0x10]
test r11b, 1
je 0x180010e70
nop word cs:[rax + rax]
nop dword [rax + rax]
cmp byte [r9 + 1], 0
lea r9, [r9 + 1]
jne 0x180010c90
movabs rcx, 0xbd4ae09303a7ff9e
mov rdx, rcx
sub r9, rcx
movabs rcx, 0xdef98cb2ec3798b6
add r9, rcx
movabs rbp, 0x23d1c499f83b3300
sub r9, rbp
add r9, rdx
add r9, rbp
movabs rdx, 0xf34015f055e93ce
mov rbp, rdx
sub r9, rdx
movabs rdx, 0xa0e50c1dd5939dcf
sub r9, rdx
add r9, rbp
mov r13, qword [rsp + 8]
sub r9, r13
add r9, rdx
sub r9, rcx
je 0x180010e76
mov r15, qword [r14 + 0x60]
nop word cs:[rax + rax]
nop dword [rax]
test al, 1
je 0x180010d10
movzx esi, word [r15]
movsx ecx, byte [r13]
lea ebx, [rsi - 0x41]
lea r12d, [rsi + 0x20]
cmp bx, 0x1a
cmovae r12d, esi
cmp ecx, 0x41
jl 0x180010d3c
lea ebx, [rcx + 0x20]
cmp cl, 0x5b
cmovge ebx, ecx
mov ecx, ebx
sub r12d, ecx
setne bpl
sete cl
test si, si
sete r8b
setne sil
mov ebx, ecx
xor bl, bpl
and bl, cl
mov ecx, ebx
xor cl, 1
and bl, cl
xor bl, 1
mov edx, ebx
xor dl, cl
or bl, cl
xor bl, 1
or bl, dl
mov r10d, ebx
xor r10b, sil
and bl, r10b
and r10b, sil
xor bl, 1
xor r10b, 1
mov ecx, ebx
xor cl, r10b
or r10b, bl
xor r10b, 1
or r10b, cl
mov ecx, r8d
or cl, bpl
xor r8b, bpl
mov edx, ecx
xor dl, r8b
xor r8b, 1
xor dl, 1
or r8b, cl
xor r8b, 1
or r8b, dl
mov ecx, r8d
xor cl, 1
and r8b, cl
mov edx, ecx
and dl, r8b
xor r8b, cl
or r8b, dl
mov ecx, r8d
xor cl, 1
xor r8b, r10b
xor r10b, 1
or r10b, cl
mov ecx, r10d
not cl
and cl, 1
mov edx, r8d
and dl, 1
cmp cl, dl
jne 0x180010e50
xor r8b, 1
or r10b, r8b
xor r10b, 1
test r10b, 1
jne 0x180010e50
add r15, 2
add r13, 1
movabs rcx, 0x9d47b28d3d4de10b
sub r9, rcx
sub r9, rdi
add r9, rcx
movabs rdx, 0xda84502344a43a64
mov rcx, rdx
not rcx
add rcx, rdx
add rcx, r9
movabs rdx, 0x7bc43954be661531
add rcx, rdx
add rcx, rdi
sub rcx, rdx
mov r9, rcx
jne 0x180010d10
jmp 0x180010e7a
test r12d, r12d
jne 0x180010c59
jmp 0x180010e7a
jmp 0x180010e60
jmp 0x180010e70
xor eax, eax
jmp 0x180010e7e
test al, 1
je 0x180010e90
mov rax, qword [r14 + 0x30]
add rsp, 0x20
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
jmp 0x180010e90