Function at 0x18000f3f0
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 rdi, rcx
mov rax, qword gs:[0x60]
mov rsi, qword [rax + 0x18]
add rsi, 0x10
mov ecx, dword [0x18002da8c]
mov ebx, dword [0x18002da90]
lea ebp, [rcx - 1]
imul ebp, ecx
mov ecx, ebp
not ecx
and ecx, 0x41042018
mov edx, ebp
and edx, 0x16204205
or edx, ecx
xor edx, 0x16204205
and ebp, 0xa8db9de2
or ebp, edx
mov ecx, ebp
not ecx
and ecx, 0x3a60e900
and ebp, 0xc59f16ff
or ebp, ecx
mov edx, ebp
xor edx, 0x92bb74e2
xor ebp, 0x6d448b1c
mov ecx, edx
and ecx, 0xfffffffe
and ebp, 0xfffffffe
and edx, 1
or edx, ebp
mov ebp, ecx
and ebp, edx
xor edx, ecx
or edx, ebp
mov ecx, edx
not ecx
and ecx, 0xa40011a0
mov ebp, edx
and ebp, 0xce018
or ebp, ecx
xor ebp, 0xce018
and edx, 0x5bf30e47
or edx, ebp
mov ecx, edx
not ecx
and ecx, 0xc7759a84
and edx, 0x388a657b
or edx, ecx
mov ecx, edx
xor ecx, 0x94048080
xor edx, 0x2414000
and ecx, 0xf53cabbc
and edx, 0xac35443
or edx, ecx
xor edx, 0xac35443
setne r8b
sete al
cmp ebx, 9
setg dl
cmp ebx, 0xa
setl bl
mov ecx, eax
xor cl, bl
and al, cl
and cl, bl
mov ebx, eax
and bl, cl
xor cl, al
or cl, bl
mov eax, edx
xor al, r8b
or dl, r8b
xor dl, 1
or dl, al
xor dl, 1
mov ebx, eax
and bl, dl
xor dl, al
or dl, bl
mov eax, ecx
xor al, 1
mov ebx, ecx
and bl, al
mov r8d, ebx
and r8b, cl
xor bl, cl
or bl, r8b
mov ecx, ebx
and bl, dl
mov r8d, eax
and r8b, dl
xor al, dl
xor dl, 1
xor cl, 1
and cl, dl
or bl, cl
or al, r8b
mov ecx, eax
xor cl, bl
xor bl, 1
xor cl, 1
or bl, al
xor bl, 1
or bl, cl
mov byte [rsp + 7], bl
mov eax, dword [0x18002da74]
lea ecx, [rax - 1]
imul ecx, eax
mov edx, ecx
not edx
and ecx, 0x5df900e0
and edx, 0xa206ff1f
or edx, ecx
mov ebp, edx
xor ebp, 0x5df900e0
mov eax, edx
xor eax, 0x5df900e1
and eax, ebp
xor edx, 0xa004980e
and edx, 0xe58d98ee
and ebp, 0x1a726711
or ebp, edx
mov edx, eax
not edx
mov ecx, edx
and ecx, 0xdf338e5c
and eax, 0x20cc71a3
or eax, ecx
mov ecx, ebp
xor ecx, 0x406100
xor ebp, 0xe58d98ef
or edx, ebp
and ebp, 0xdf338e5c
and ecx, 0x20cc71a3
or ecx, ebp
xor ecx, eax
not edx
or edx, ecx
mov eax, edx
mov ecx, edx
xor ecx, 0x74cf60c
and ecx, edx
not edx
and edx, 0x9b49c8c9
and eax, 0x64b63736
or eax, edx
mov ebp, eax
xor ebp, 0x40004
xor eax, 0x348c008
or eax, 0xf8b309f3
mov edx, eax
and edx, 0xcd9bbf21
and ebp, 0x244400c
or ebp, edx
mov edx, ecx
not edx
or eax, edx
and edx, 0xcd9bbf21
and ecx, 0x326440de
or ecx, edx
mov edx, dword [0x18002da78]
xor ecx, ebp
not eax
or eax, ecx
mov ecx, eax
not ecx
and ecx, 0xf8b309f3
and eax, 0x74cf60c
or eax, ecx
mov ecx, eax
not ecx
and ecx, 0x5f781c38
and eax, 0xa087e3c7
or eax, ecx
mov ecx, eax
xor ecx, 0x2085c205
xor eax, 0x42181820
and eax, 0xc21a39e2
and ecx, 0x3de5c61d
or ecx, eax
xor ecx, 0x3de5c61d
sete cl
setne r8b
cmp edx, 0xa
setl al
cmp edx, 9
setg bl
xor r8b, bl
mov edx, ecx
xor dl, al
or al, cl
xor al, 1
or al, r8b
mov r8d, eax
xor r8b, 1
and dl, cl
or bl, cl
xor dl, 1
mov ecx, edx
xor cl, bl
or dl, bl
xor dl, 1
or dl, cl
mov ecx, edx
xor cl, 1
and dl, al
or al, cl
and cl, r8b
or cl, dl
xor cl, 1
mov edx, eax
xor dl, cl
or cl, al
xor cl, 1
or cl, dl
mov byte [rsp + 6], cl
mov edx, dword [0x18002da94]
lea eax, [rdx - 1]
imul eax, edx
mov edx, eax
not edx
mov ebp, edx
and ebp, 0x4625ecd8
mov ebx, eax
and ebx, 0xb9da1326
or ebx, ebp
xor ebx, 0xb9da1326
mov ebp, eax
and ebp, 1
or ebp, ebx
and edx, 0xdb1b84e6
and eax, 0x24e47b19
or eax, edx
mov edx, eax
xor edx, 0x24e47b19
xor eax, 0xdb1b84e6
and eax, ebp
not ebp
and edx, ebp
or eax, edx
mov edx, dword [0x18002da98]
xor ebp, eax
test ebp, eax
sete r8b
setne bl
cmp edx, 0xa
setl cl
cmp edx, 9
setg dl
mov eax, edx
and al, bl
and r8b, dl
xor dl, bl
or dl, al
movabs rbp, 0x35af428fea9e6b6e
and cl, bl
mov eax, edx
not al
or cl, r8b
mov ebx, ecx
xor bl, 1
and cl, dl
or dl, bl
xor dl, 1
and bl, al
or bl, cl
mov eax, edx
and al, bl
xor bl, dl
movabs r10, 0x2e79e16e6b5ad2ec
or bl, al
mov byte [rsp + 5], bl
movabs r14, 0x2e314d561a20eab0
movabs r15, 0x727add510d20f62
mov r13, rdi
lea rax, [rdi - 1]
mov qword [rsp + 0x10], rax
mov qword [rsp + 0x18], rsi
mov qword [rsp + 8], rsi
test byte [rsp + 7], 1
je 0x18000f9d0
mov rax, qword [rsp + 8]
mov rax, qword [rax]
mov qword [rsp + 8], rax
cmp rax, qword [rsp + 0x18]
je 0x18000f9f2
mov r12, qword [rsp + 0x10]
test byte [rsp + 6], 1
je 0x18000f9e0
nop word cs:[rax + rax]
nop dword [rax + rax]
cmp byte [r12 + 1], 0
lea r12, [r12 + 1]
jne 0x18000f7e0
test byte [rsp + 5], 1
je 0x18000f9f0
movabs rax, 0x128af0b28b2899ce
mov rcx, rax
sub r12, rax
movabs rax, 0xae1b22c5276b189e
sub r12, rax
add r12, rcx
movabs rcx, 0x72e8ee727841eab3
sub r12, rcx
movabs rdx, 0x4e83803f2752e0d3
sub r12, rdx
add r12, rcx
add r12, rax
movabs rax, 0x1ee350aa896866f0
mov rcx, rax
add r12, rax
sub r12, r13
movabs rax, 0x81f247c0ecb38d07
sub r12, rax
sub r12, rcx
add r12, rax
movabs rax, 0xa1dc2747dd284ec
mov rcx, rax
sub r12, rax
movabs rax, 0xed6041402cb23bb1
sub r12, rax
add r12, rcx
add r12, rdx
add r12, rax
je 0x18000f9a9
mov rax, qword [rsp + 8]
mov rax, qword [rax + 0x60]
xor r9d, r9d
mov rdi, r12
nop dword [rax]
movzx ebx, word [rax + r9*2]
movsx esi, byte [r13 + r9]
lea ecx, [rbx - 0x41]
lea r11d, [rbx + 0x20]
cmp cx, 0x1a
cmovae r11d, ebx
cmp esi, 0x41
jl 0x18000f8cb
lea ecx, [rsi + 0x20]
cmp sil, 0x5b
cmovge ecx, esi
mov esi, ecx
sub r11d, esi
setne sil
sete cl
test bx, bx
sete dl
setne bl
mov r8d, ebx
or sil, bl
and bl, cl
xor r8b, cl
or r8b, bl
or dl, cl
xor dl, 1
xor sil, 1
mov ecx, edx
and cl, sil
xor sil, dl
or sil, cl
mov ebx, r8d
xor bl, sil
xor sil, 1
xor bl, 1
mov ecx, r8d
and cl, sil
xor sil, r8b
or sil, cl
xor sil, 1
mov ecx, ebx
and cl, sil
test cl, 1
jne 0x18000f9a0
xor bl, sil
test bl, 1
jne 0x18000f9a0
movabs rdx, 0xe0261d17f58dab0d
mov rcx, rdx
sub rcx, r10
sub rcx, rdx
sub rcx, r14
sub rcx, rdi
add rcx, r14
add rcx, r10
movabs rdx, 0xf7c2d82a581c039b
add rcx, rdx
add rcx, rbp
sub rcx, rdx
movabs rdx, 0x63d74e18175a0b8c
sub rcx, rdx
sub rcx, rbp
add rcx, rdx
movabs rbx, 0x8a3fe126bdd5a461
lea rdx, [rbx + r15]
sub rbx, rdx
sub rbx, rcx
lea rdi, [rbx + r15]
add rdi, 0xffffffffffffffff
add r9, 1
cmp r12, r9
jne 0x18000f8a0
jmp 0x18000f9a9
test r11d, r11d
jne 0x18000f79e
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 0x18000f9d0
jmp 0x18000f9e0
jmp 0x18000f9f0
xor eax, eax
jmp 0x18000f9b2