Function at 0x18000cff0
Capabilities:
Access peb ldr_data

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x30
mov qword [rsp + 0x18], rcx
mov rax, qword gs:[0x60]
mov rcx, qword [rax + 0x18]
mov rax, qword [rcx + 0x10]
add rcx, 0x10
mov qword [rsp + 0x10], rax
cmp rax, rcx
je 0x18000d342
mov qword [rsp + 0x28], rcx
mov ecx, dword [0x18002ba7c]
mov r9d, dword [0x18002ba80]
lea edx, [rcx - 1]
imul edx, ecx
mov ebx, edx
not ebx
mov ebp, edx
or ebp, 1
mov ecx, ebp
not ecx
mov edi, edx
xor edi, 0xfffffffe
and edi, edx
mov esi, edi
not esi
mov eax, ebp
and eax, 0xe2e0d5ab
and ecx, 0x1d1f2a54
or ecx, eax
or ebp, esi
and esi, 0xe2e0d5ab
and edi, 0x1d1f2a54
or edi, esi
xor edi, ecx
not ebp
or ebp, edi
not ebp
and ebx, 0xb1d72fee
and edx, 0x4e28d011
or edx, ebx
xor edx, 0x4e28d011
mov eax, ebp
and eax, edx
xor edx, ebp
or edx, eax
mov eax, edx
not eax
and eax, 0x4f386767
and edx, 0xb0c79898
or edx, eax
xor edx, 0xb0c79898
setne r8b
sete r10b
cmp r9d, 9
setg dl
cmp r9d, 0xa
setl r9b
mov ebx, r10d
xor bl, r8b
and bl, r10b
mov eax, ebx
xor al, 1
mov ecx, eax
or cl, bl
xor bl, cl
xor bl, 1
or cl, al
xor cl, 1
or cl, bl
mov eax, ecx
xor al, 1
and cl, al
xor cl, 1
mov ebx, ecx
xor bl, al
or cl, al
xor cl, 1
or cl, bl
xor cl, r9b
mov eax, edx
xor al, r10b
and al, dl
and r8b, r9b
and dl, r10b
or dl, r8b
mov ebx, eax
and bl, dl
xor dl, al
or dl, bl
mov r12d, ecx
xor r12b, 1
and cl, r12b
mov eax, r12d
and al, cl
xor cl, r12b
or cl, al
xor cl, dl
xor cl, 1
mov r13d, ecx
and r13b, 1
mov eax, r12d
and al, dl
xor r12b, dl
or r12b, al
mov r11d, r12d
and r11b, 1
mov eax, dword [0x18002ba94]
mov edx, dword [0x18002ba98]
lea ebp, [rax - 1]
imul ebp, eax
mov eax, ebp
not eax
and ebp, 0xc67c39c0
and eax, 0x3983c63f
or eax, ebp
mov ebp, eax
xor ebp, 0xc67c39c0
xor eax, 0x3983c63e
mov ebx, ebp
and ebx, 0xfffffffe
and eax, 0xfffffffe
and ebp, 1
or ebp, eax
mov eax, ebx
and eax, ebp
xor ebp, ebx
or ebp, eax
mov eax, ebp
not eax
mov ebx, eax
and ebx, 0x800267c0
and eax, ebp
and ebp, 0x7ffd983f
or ebp, ebx
xor ebp, 0x7ffd983f
mov ebx, ebp
and ebx, eax
xor ebp, eax
or ebp, ebx
mov eax, ebp
not eax
mov ebx, eax
and ebx, 0x773885dc
and ebp, 0x88c77a23
or ebp, ebx
xor ebp, 0x773885dc
xor eax, ebp
test eax, ebp
setne byte [rsp + 6]
sete r14b
cmp edx, 9
setg r10b
cmp edx, 0xa
setl r15b
mov eax, dword [0x18002ba9c]
mov edi, dword [0x18002baa0]
lea edx, [rax - 1]
imul edx, eax
mov ebx, edx
mov eax, edx
xor eax, 0xb0d8f7d1
and eax, edx
not edx
and edx, 0x8f410
and ebx, 0xb0d003c1
or ebx, edx
mov edx, ebx
xor edx, 0x90900140
xor ebx, 0x4f2ffc3e
mov ebp, eax
not ebp
mov esi, ebx
and esi, 0x29425ab9
and edx, 0x9098a540
or edx, esi
or ebx, ebp
and ebp, 0x29425ab9
and eax, 0xd6bda546
or eax, ebp
xor eax, edx
not ebx
or ebx, eax
mov eax, ebx
not eax
and eax, 0x4f27082e
and ebx, 0xb0d8f7d1
or ebx, eax
mov eax, ebx
not eax
mov ebp, ebx
xor ebp, 0xda2d614f
and ebp, eax
mov edx, ebx
and edx, 0x25d29eb0
mov esi, ebp
and esi, edx
xor edx, ebp
or edx, esi
mov ebp, edx
not ebp
and ebp, 0x25d29eb1
and edx, 0xda2d614e
or edx, ebp
and eax, 1
xor ebx, 0xfffffffe
or ebx, eax
mov eax, ebx
not eax
and eax, 0x1afdd949
and ebx, 0xe50226b6
or ebx, eax
mov esi, ebx
xor esi, 0xe4002624
xor ebx, 0x1afdd949
mov eax, edx
not eax
mov ebp, eax
and ebp, 0x190f00d2
and edx, 0xe6f0ff2d
or edx, ebp
or eax, ebx
and ebx, 0x190f00d2
and esi, 0xe6f0ff2d
or esi, ebx
xor esi, edx
not eax
or eax, esi
mov edx, eax
not edx
mov ebp, edx
and ebp, 0x9e21f54a
and edx, eax
and eax, 0x61de0ab5
or eax, ebp
xor eax, 0x61de0ab5
mov ebp, eax
and ebp, edx
xor eax, edx
or eax, ebp
mov dword [rsp + 8], eax
setne r8b
sete bl
cmp edi, 0xa
setl r9b
mov dword [rsp + 0xc], edi
cmp edi, 9
setg sil
cmp r13b, r11b
jne 0x18000d4e2
or cl, r12b
xor cl, 1
test cl, 1
jne 0x18000d4e2
nop word cs:[rax + rax]
nop dword [rax]
jmp 0x18000d340
mov eax, dword [0x18002ba9c]
mov r11d, dword [0x18002baa0]
lea ecx, [rax - 1]
imul ecx, eax
mov eax, ecx
not eax
and eax, 0x140d004e
mov edx, ecx
and edx, 0x800074a0
or edx, eax
xor edx, 0x800074a0
and ecx, 0x6bf28b11
or ecx, edx
mov eax, ecx
not eax
and eax, 0x6bf28b11
and ecx, 0x940d74ee
or ecx, eax
mov edx, ecx
mov ebp, ecx
xor ebp, 0x2e5cd26e
and ebp, ecx
not ecx
and ecx, 0xc19c0e3b
and edx, 0x3e63f1c4
or edx, ecx
mov ebx, edx
xor ebx, 0x3e63f1c4
mov eax, edx
xor eax, 0xefc0dc55
and eax, ebx
mov ecx, eax
not ecx
mov edi, ebp
not edi
mov esi, ecx
and esi, 0x2a82913
and eax, 0xfd57d6ec
or eax, esi
or ecx, edi
and edi, 0x2a82913
and ebp, 0xfd57d6ec
or ebp, edi
xor ebp, eax
not ecx
or ecx, ebp
mov eax, ecx
not eax
and eax, 0xedc8b81b
and ecx, 0x123747e4
or ecx, eax
xor ecx, 0x3c6b958b
and ebx, 1
xor edx, 0x3e63f1c5
or edx, ebx
not edx
mov eax, ecx
and eax, edx
xor edx, ecx
or edx, eax
mov eax, edx
not eax
and edx, 0x8e79dcd6
and eax, 0x71862329
or eax, edx
mov esi, eax
xor esi, 0x86614482
xor eax, 0x71862329
mov ecx, eax
and ecx, 0x491eb87c
and esi, 0xb6e14783
or esi, ecx
xor esi, 0xb6e14783
or esi, eax
not esi
test esi, esi
setne r10b
sete r9b
cmp r11d, 0xa
setl r8b
cmp r11d, 9
setg cl
mov ebx, r9d
or bl, cl
mov eax, r8d
or al, r10b
mov edx, ebx
xor dl, al
or al, bl
xor al, 1
or al, dl
mov edx, ecx
xor dl, r9b
and dl, cl
and r10b, r8b
and cl, r9b
or cl, r10b
mov ebx, edx
and bl, cl
xor cl, dl
or cl, bl
mov edx, ecx
xor dl, 1
and cl, dl
mov ebx, edx
and bl, cl
xor cl, dl
or cl, bl
mov ebx, eax
xor bl, 1
and bl, cl
xor cl, 1
mov edx, eax
xor dl, cl
and dl, al
and cl, al
or cl, bl
mov ebx, ecx
and bl, 1
xor eax, eax
cmp dl, bl
jne 0x18000d82f
xor dl, 1
xor cl, 1
or cl, dl
xor cl, 1
test cl, 1
jne 0x18000d82f
nop word cs:[rax + rax]
nop dword [rax + rax]
jmp 0x18000d4e0
mov eax, r15d
xor al, r14b
mov ecx, r15d
or cl, r14b
xor cl, 1
or cl, al
and r10b, r14b
mov r11b, byte [rsp + 6]
and r11b, r15b
or r11b, r10b
xor r11b, 1
mov eax, ecx
xor al, r11b
mov edx, eax
xor dl, 1
and r11b, cl
or r11b, al
xor al, r11b
xor al, 1
or r11b, dl
xor r11b, 1
or r11b, al
mov edi, esi
xor dil, bl
xor dil, 1
or dil, sil
mov r10d, edi
xor r10b, 1
or r8b, r9b
xor bl, r9b
and bl, r9b
xor bl, 1
mov edx, r8d
xor dl, bl
or bl, r8b
xor bl, 1
or bl, dl
mov eax, ebx
xor al, 1
mov edx, r10d
and dl, dil
and bl, al
mov ecx, edx
and cl, r10b
xor dl, r10b
or dl, cl
xor bl, 1
mov ecx, ebx
xor cl, al
or bl, al
xor bl, 1
or bl, cl
mov ecx, edx
xor cl, 1
and cl, bl
xor bl, 1
and bl, dl
or bl, cl
mov ecx, edi
and cl, al
xor al, dil
or al, cl
xor al, 1
mov ecx, ebx
and cl, al
xor al, bl
or al, cl
mov byte [rsp + 7], al
movabs r8, 0xff36f6c54c7bb10c
movabs r9, 0xe0e65b65c9f127b5
movabs rcx, 0xcef59915c51e2918
movabs rbx, 0xb43870d813b5b21e
movabs rdi, 0xb2f4b72921cb73be
movabs r10, 0x6a6da87daeca5b88
movabs rbp, 0x4c671fe43b21c90f
movabs r15, 0x47b4bd9fa89d3105
movabs r12, 0x399391140f4450be
movabs r13, 0x3237fcce68b16994
movabs rdx, 0x16b0a43d1e8ae534
movabs rsi, 0x6430dee9cd84db0
mov rax, qword [rsp + 0x18]
add rax, 0xffffffffffffffff
mov byte [rsp + 6], r11b
mov qword [rsp + 0x20], rax
mov r14, rax
nop word [rax + rax]
cmp byte [r14 + 1], 0
lea r14, [r14 + 1]
jne 0x18000d630
test r11b, 1
je 0x18000d800
lea rax, [rcx + r10]
sub rcx, rax
add r14, rcx
sub r14, rbx
sub r14, rdx
add r14, rbx
add r14, rdi
sub r14, qword [rsp + 0x18]
sub r14, rdi
add r14, rbp
add r14, rdx
sub r14, rbp
add r14, r8
add r14, r9
add r14, r10
sub r14, r9
sub r14, r8
je 0x18000d812
mov rax, qword [rsp + 0x10]
mov rdi, qword [rax + 0x60]
xor r8d, r8d
mov r9, r14
movzx r10d, word [rdi + r8*2]
mov rax, qword [rsp + 0x18]
movsx edx, byte [rax + r8]
mov ebp, r10d
cmp r10d, 0x41
jb 0x18000d6b5
lea ebp, [r10 + 0x20]
cmp r10w, 0x5b
cmovae ebp, r10d
lea ecx, [rdx - 0x41]
lea r11d, [rdx + 0x20]
cmp cl, 0x1a
cmovae r11d, edx
sub ebp, r11d
sete al
setne dl
test r10w, r10w
sete cl
or dl, cl
xor dl, 1
xor al, cl
mov ebx, eax
xor bl, 1
or dl, bl
mov ecx, edx
not cl
and bl, dl
or dl, al
xor dl, 1
and cl, al
or cl, bl
test dl, cl
jne 0x18000d760
xor dl, cl
test dl, 1
jne 0x18000d760
mov rax, r12
sub rax, r13
sub rax, r12
movabs rcx, 0x66562553a0d5be2f
sub rax, rcx
sub rax, r9
add rax, rcx
add rax, r13
movabs rcx, 0x61738ba3eecaf27b
mov rbp, rcx
add rcx, rsi
mov rdx, rsi
sub rdx, rcx
sub rdx, rax
sub rdx, r15
add rdx, rbp
lea r9, [r15 + rdx]
add r9, 0xffffffffffffffff
add r8, 1
cmp r14, r8
jne 0x18000d690
jmp 0x18000d812
test ebp, ebp
je 0x18000d812
test byte [rsp + 7], 1
je 0x18000d810
mov rax, qword [rsp + 0x10]
mov rax, qword [rax]
mov qword [rsp + 0x10], rax
cmp rax, qword [rsp + 0x28]
mov r11b, byte [rsp + 6]
movabs rdx, 0xff36f6c54c7bb10c
mov r8, rdx
movabs rbp, 0xe0e65b65c9f127b5
mov r9, rbp
movabs rcx, 0xcef59915c51e2918
movabs rbx, 0xb43870d813b5b21e
movabs rdi, 0xb2f4b72921cb73be
movabs rdx, 0x6a6da87daeca5b88
mov r10, rdx
movabs rbp, 0x4c671fe43b21c90f
movabs rdx, 0x16b0a43d1e8ae534
mov rax, qword [rsp + 0x20]
jne 0x18000d624
mov r11d, dword [rsp + 0xc]
mov esi, dword [rsp + 8]
jmp 0x18000d445
jmp 0x18000d800
jmp 0x18000d810
test byte [rsp + 7], 1
je 0x18000d8a0
mov rax, qword [rsp + 0x10]
mov rax, qword [rax + 0x30]
mov r11d, dword [rsp + 0xc]
mov esi, dword [rsp + 8]
test esi, esi
sete r8b
setne r9b
cmp r11d, 0xa
setl bl
cmp r11d, 9
setg cl
mov edx, ecx
xor dl, r9b
and r8b, cl
and cl, r9b
or cl, dl
mov r10d, ecx
not r10b
and bl, r9b
or bl, r8b
mov edx, ebx
xor dl, 1
and bl, cl
or cl, dl
mov r8d, ecx
xor r8b, 1
and dl, r10b
or dl, bl
cmp r8b, dl
jne 0x18000d8a2
xor dl, 1
or cl, dl
xor cl, 1
test cl, 1
jne 0x18000d8a2
nop word [rax + rax]
jmp 0x18000d890
jmp 0x18000d8a0
add rsp, 0x30
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret