Function at 0x2fc4cfa70
Capabilities:
Access peb ldr_data

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x88
mov qword [rsp + 0x68], rcx
mov dword [rsp + 0x84], 0x60
mov eax, dword [rsp + 0x84]
mov ecx, eax
mov rcx, qword gs:[rcx]
mov qword [rsp + 0x78], rcx
mov rcx, qword [rsp + 0x78]
mov qword [rsp + 0x60], rcx
mov rcx, qword [rsp + 0x60]
mov rcx, qword [rcx + 0x18]
add rcx, 0x10
mov qword [rsp + 0x58], rcx
mov rcx, qword [rsp + 0x58]
mov rcx, qword [rcx]
mov qword [rsp + 0x50], rcx
mov rax, qword [rsp + 0x50]
cmp rax, qword [rsp + 0x58]
je 0x2fc4cfdd9
mov eax, dword [0x2fc4f7174]
mov ecx, dword [0x2fc4f7180]
mov edx, eax
add edx, 0x957d5a2d
add edx, 0x9980cb96
sub edx, 0x957d5a2d
sub edx, 0x2dbb18d4
sub edx, 1
add edx, 0x2dbb18d4
sub edx, 0x2c88262c
sub edx, 0x9980cb96
add edx, 0x2c88262c
imul eax, edx
and eax, 1
cmp eax, 0
sete r8b
cmp ecx, 0xa
setl r9b
mov r10b, r8b
xor r10b, 0xff
mov r11b, r9b
xor r11b, 0xff
mov bl, 1
mov sil, bl
xor sil, 0
or r10b, r11b
or sil, 0
xor r10b, 0xff
and r10b, sil
mov r11b, r8b
xor r11b, 0xff
and r11b, 1
xor bl, 1
and r8b, bl
mov sil, r9b
xor sil, 0xff
and sil, 0xff
and r9b, bl
or r11b, r8b
or sil, r9b
xor r11b, sil
mov r8b, r10b
and r8b, r11b
xor r10b, r11b
or r8b, r10b
test r8b, 1
jne 0x2fc4cfb9e
jmp 0x2fc4d05ab
mov rax, qword [rsp + 0x50]
mov qword [rsp + 0x48], rax
mov rax, qword [rsp + 0x48]
mov rcx, qword [rax + 0x60]
mov rdx, qword [rsp + 0x68]
mov rax, qword [rsp + 0x68]
mov qword [rsp + 0x40], rcx
mov rcx, rax
mov qword [rsp + 0x38], rdx
call sym.StrLen
mov rcx, qword [rsp + 0x40]
mov rdx, qword [rsp + 0x38]
mov r8, rax
call sym.W2Anicmp
xor r9d, r9d
cmp eax, 0
sete r10b
mov eax, dword [0x2fc4f7174]
mov r11d, dword [0x2fc4f7180]
mov esi, r9d
sub esi, 0x7a4ae374
mov edi, eax
sub edi, esi
mov esi, r9d
sub esi, 1
add edi, esi
sub r9d, 0x7a4ae374
add edi, r9d
imul eax, edi
and eax, 1
cmp eax, 0
sete bl
cmp r11d, 0xa
setl bpl
mov r14b, bl
xor r14b, 0xff
and r14b, 1
mov r15b, 1
mov r12b, r15b
xor r12b, 1
mov r13b, bl
and r13b, r12b
mov al, r15b
xor al, 1
and al, 0xff
and r12b, 1
or r14b, r13b
or al, r12b
xor r14b, al
mov al, bpl
xor al, 0xff
and al, 1
mov r12b, r15b
xor r12b, 1
mov r13b, bpl
and r13b, r12b
or al, r13b
mov r12b, r15b
xor r12b, 0
and r12b, 0
mov r13b, r15b
xor r13b, 0
mov cl, r13b
and cl, 0
mov dl, r15b
xor dl, 1
and dl, 0
and r13b, 1
or r12b, cl
or dl, r13b
xor r12b, dl
mov cl, r15b
xor cl, 0
mov dl, r14b
xor dl, cl
and dl, r14b
xor bl, 0xff
mov cl, r12b
xor cl, 0xff
mov r13b, r15b
xor r13b, 0
or bl, cl
or r13b, 0
xor bl, 0xff
and bl, r13b
mov cl, r15b
xor cl, 0
mov r13b, al
xor r13b, cl
and r13b, al
mov cl, r12b
xor cl, 0xff
mov r8b, bpl
xor r8b, cl
and r8b, bpl
mov cl, dl
and cl, bl
xor dl, bl
or cl, dl
mov dl, r13b
xor dl, 0xff
mov bl, r8b
xor bl, 0xff
mov bpl, r15b
xor bpl, 0
mov r9b, dl
and r9b, 0
and r13b, bpl
mov r11b, bl
and r11b, 0
and r8b, bpl
or r9b, r13b
or r11b, r8b
xor r9b, r11b
or dl, bl
xor dl, 0xff
or bpl, 0
and dl, bpl
or r9b, dl
mov dl, cl
xor dl, 0xff
and dl, 1
mov r8b, r15b
xor r8b, 1
and cl, r8b
mov r11b, r9b
xor r11b, 0xff
and r11b, 0xff
and r9b, r8b
or dl, cl
or r11b, r9b
xor dl, r11b
mov cl, r14b
and cl, al
xor r14b, al
or cl, r14b
mov al, cl
xor al, 0xff
and al, 1
xor r15b, 1
and cl, r15b
or al, cl
mov cl, r12b
and cl, 0
xor r12b, 0
or cl, r12b
xor cl, 0xff
mov r8b, al
xor r8b, cl
and r8b, al
mov al, dl
and al, r8b
xor dl, r8b
or al, dl
test al, 1
mov byte [rsp + 0x37], r10b
jne 0x2fc4cfda3
jmp 0x2fc4d05ab
mov al, byte [rsp + 0x37]
test al, 1
jne 0x2fc4cfdb4
jmp 0x2fc4cfdc7
mov rax, qword [rsp + 0x48]
mov rax, qword [rax + 0x30]
mov qword [rsp + 0x70], rax
jmp 0x2fc4d03ff
mov rax, qword [rsp + 0x50]
mov rax, qword [rax]
mov qword [rsp + 0x50], rax
jmp 0x2fc4cfad1
xor eax, eax
mov ecx, dword [0x2fc4f7174]
mov edx, dword [0x2fc4f7180]
sub eax, 0x928b2c33
sub eax, 1
add eax, 0x928b2c33
mov r8d, ecx
add r8d, 0x55587d3a
add r8d, eax
sub r8d, 0x55587d3a
imul ecx, r8d
and ecx, 1
cmp ecx, 0
sete r9b
cmp edx, 0xa
setl r10b
mov r11b, r9b
xor r11b, 0xff
and r11b, 1
mov bl, 1
mov sil, bl
xor sil, 1
mov dil, r9b
and dil, sil
or r11b, dil
mov sil, r10b
xor sil, 0xff
and sil, 1
mov dil, bl
xor dil, 1
mov bpl, r10b
and bpl, dil
or sil, bpl
mov dil, bl
xor dil, 1
and dil, 1
mov bpl, bl
xor bpl, 1
mov r14b, bpl
and r14b, 1
mov r15b, bl
xor r15b, 1
and r15b, 0xff
and bpl, 1
or dil, r14b
or r15b, bpl
xor dil, r15b
mov bpl, r11b
xor bpl, 0xff
mov r14b, bl
xor r14b, 1
mov r15b, bl
xor r15b, 0
or bpl, r14b
or r15b, 0
xor bpl, 0xff
and bpl, r15b
mov r14b, dil
xor r14b, 0xff
mov r15b, r9b
xor r15b, r14b
and r15b, r9b
mov r9b, bl
xor r9b, 1
mov r14b, sil
xor r14b, r9b
and r14b, sil
mov r9b, dil
xor r9b, 0xff
mov r12b, r10b
xor r12b, r9b
and r12b, r10b
mov r9b, bpl
and r9b, r15b
xor bpl, r15b
or r9b, bpl
mov r10b, r14b
xor r10b, 0xff
mov bpl, r12b
xor bpl, 0xff
mov r15b, bl
xor r15b, 0
mov r13b, r10b
and r13b, 0
and r14b, r15b
mov al, bpl
and al, 0
and r12b, r15b
or r13b, r14b
or al, r12b
xor r13b, al
or r10b, bpl
xor r10b, 0xff
or r15b, 0
and r10b, r15b
or r13b, r10b
mov al, r9b
xor al, 0xff
mov r10b, r13b
and r10b, al
xor r13b, 0xff
and r9b, r13b
or r10b, r9b
mov al, r11b
xor al, 0xff
mov r9b, sil
xor r9b, 0xff
mov bpl, bl
xor bpl, 1
mov r14b, al
and r14b, 0xff
and r11b, bpl
mov r15b, r9b
and r15b, 0xff
and sil, bpl
or r14b, r11b
or r15b, sil
xor r14b, r15b
or al, r9b
xor al, 0xff
or bpl, 1
and al, bpl
or r14b, al
mov al, r14b
xor al, 0xff
and al, 1
mov r9b, bl
xor r9b, 1
and r14b, r9b
mov r11b, bl
xor r11b, 1
and r11b, 0xff
and r9b, 1
or al, r14b
or r11b, r9b
xor al, r11b
mov r9b, bl
xor r9b, 1
mov r11b, dil
xor r11b, 0xff
mov sil, bl
xor sil, 0
mov bpl, r9b
and bpl, 0
mov r14b, sil
and r14b, 1
mov r15b, r11b
and r15b, 0
and dil, sil
or bpl, r14b
or r15b, dil
xor bpl, r15b
or r9b, r11b
xor r9b, 0xff
or sil, 0
and r9b, sil
or bpl, r9b
xor bpl, 0xff
mov r9b, al
xor r9b, bpl
and r9b, al
mov al, r10b
xor al, 0xff
mov r11b, r9b
xor r11b, 0xff
xor bl, 0
mov sil, al
and sil, 0
and r10b, bl
mov dil, r11b
and dil, 0
and r9b, bl
or sil, r10b
or dil, r9b
xor sil, dil
or al, r11b
xor al, 0xff
or bl, 0
and al, bl
or sil, al
test sil, 1
jne 0x2fc4d003f
jmp 0x2fc4d0418
mov eax, dword [0x2fc4f7174]
mov ecx, dword [0x2fc4f7180]
mov edx, eax
add edx, 0xf598292a
sub edx, 0x2cc64024
sub edx, 0xf598292a
add edx, 0xdb0ca5f
sub edx, 1
sub edx, 0xdb0ca5f
sub edx, 0xd51a6e3c
add edx, 0x2cc64024
add edx, 0xd51a6e3c
imul eax, edx
and eax, 1
cmp eax, 0
sete r8b
cmp ecx, 0xa
setl r9b
mov r10b, r8b
xor r10b, 0xff
and r10b, 0
mov r11b, 1
mov bl, r11b
xor bl, 0
mov sil, r8b
and sil, bl
mov dil, r11b
xor dil, 1
and dil, 0
and bl, 1
or r10b, sil
or dil, bl
xor r10b, dil
mov bl, r9b
xor bl, 0xff
and bl, 1
mov sil, r11b
xor sil, 1
mov dil, r9b
and dil, sil
mov bpl, r11b
xor bpl, 1
and bpl, 0xff
and sil, 1
or bl, dil
or bpl, sil
xor bl, bpl
mov sil, r11b
xor sil, 1
and sil, 1
mov dil, r11b
xor dil, 1
mov bpl, dil
and bpl, 1
mov r14b, r11b
xor r14b, 1
and r14b, 0xff
and dil, 1
or sil, bpl
or r14b, dil
xor sil, r14b
mov dil, r11b
xor dil, 1
mov bpl, r10b
xor bpl, dil
and bpl, r10b
xor r8b, 0xff
mov dil, sil
xor dil, 0xff
mov r14b, r11b
xor r14b, 1
or r8b, dil
or r14b, 1
xor r8b, 0xff
and r8b, r14b
mov dil, r11b
xor dil, 1
mov r14b, bl
xor r14b, dil
and r14b, bl
xor r9b, 0xff
mov dil, sil
xor dil, 0xff
mov r15b, r11b
xor r15b, 1
or r9b, dil
or r15b, 1
xor r9b, 0xff
and r9b, r15b
mov dil, bpl
xor dil, 0xff
mov r15b, r8b
xor r15b, 0xff
mov r12b, r11b
xor r12b, 0
mov r13b, dil
and r13b, 0
and bpl, r12b
mov al, r15b
and al, 0
and r8b, r12b
or r13b, bpl
or al, r8b
xor r13b, al
or dil, r15b
xor dil, 0xff
or r12b, 0
and dil, r12b
or r13b, dil
mov al, r14b
xor al, 0xff
mov r8b, r9b
xor r8b, 0xff
mov dil, r11b
xor dil, 0
mov bpl, al
and bpl, 0
and r14b, dil
mov r15b, r8b
and r15b, 0
and r9b, dil
or bpl, r14b
or r15b, r9b
xor bpl, r15b
or al, r8b
xor al, 0xff
or dil, 0
and al, dil
or bpl, al
mov al, r13b
xor al, 0xff
mov r8b, bpl
and r8b, al
xor bpl, 0xff
and r13b, bpl
or r8b, r13b
mov al, r10b
and al, bl
xor r10b, bl
or al, r10b
mov r9b, al
xor r9b, 0xff
and r9b, 0
mov r10b, r11b
xor r10b, 0
and al, r10b
mov bl, r11b
xor bl, 1
and bl, 0
and r10b, 1
or r9b, al
or bl, r10b
xor r9b, bl
mov al, sil
and al, 1
xor sil, 1
or al, sil
xor al, 0xff
mov r10b, r9b
xor r10b, al
and r10b, r9b
mov al, r8b
xor al, 0xff
mov r9b, r10b
xor r9b, 0xff
xor r11b, 1
mov bl, al
and bl, 0xff
and r8b, r11b
mov sil, r9b
and sil, 0xff
and r10b, r11b
or bl, r8b
or sil, r10b
xor bl, sil
or al, r9b
xor al, 0xff
or r11b, 1
and al, r11b
or bl, al
test bl, 1
jne 0x2fc4d02ad
jmp 0x2fc4d05f1
xor eax, eax
mov qword [rsp + 0x70], 0
mov ecx, dword [0x2fc4f7174]
mov edx, dword [0x2fc4f7180]
mov r8d, eax
sub r8d, 0xd7752079
mov r9d, ecx
add r9d, r8d
sub eax, 1
add r9d, eax
add r9d, 0xb09c4cb8
add r9d, 0xd7752079
sub r9d, 0xb09c4cb8
imul ecx, r9d
and ecx, 1
cmp ecx, 0
sete r10b
cmp edx, 0xa
setl r11b
mov bl, r10b
xor bl, 0xff
mov sil, r11b
xor sil, 0xff
mov dil, 1
mov bpl, dil
xor bpl, 1
or bl, sil
or bpl, 1
xor bl, 0xff
and bl, bpl
mov sil, r10b
xor sil, 0xff
and sil, 1
xor dil, 1
and r10b, dil
mov bpl, r11b
xor bpl, 0xff
and bpl, 0xff
and r11b, dil
or sil, r10b
or bpl, r11b
xor sil, bpl
mov r10b, bl
and r10b, sil
xor bl, sil
or r10b, bl
test r10b, 1
jne 0x2fc4d036c
jmp 0x2fc4d05f1
xor eax, eax
mov ecx, dword [0x2fc4f7174]
mov edx, dword [0x2fc4f7180]
mov r8d, eax
sub r8d, ecx
mov r9d, eax
sub r9d, 0x4a1ba822
add r8d, r9d
mov r9d, eax
sub r9d, r8d
mov r8d, eax
sub r8d, 1
add r9d, r8d
sub eax, 0x4a1ba822
add r9d, eax
imul ecx, r9d
and ecx, 1
cmp ecx, 0
sete r10b
cmp edx, 0xa
setl r11b
mov bl, r11b
xor bl, 0xff
mov sil, r10b
xor sil, bl
and sil, r10b
mov bl, r10b
xor bl, 0xff
mov dil, r11b
and dil, bl
xor r11b, 0xff
and r10b, r11b
or dil, r10b
mov r10b, sil
and r10b, dil
xor sil, dil
or r10b, sil
test r10b, 1
jne 0x2fc4d03fa
jmp 0x2fc4d0418
jmp 0x2fc4d03ff
mov rax, qword [rsp + 0x70]
add rsp, 0x88
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
mov eax, dword [0x2fc4f7174]
mov ecx, dword [0x2fc4f7180]
mov edx, eax
sub edx, 0xf0160964
add edx, 0x4cfa6f33
add edx, 0xf0160964
add edx, 0x9cf55f1c
sub edx, 1
sub edx, 0x9cf55f1c
add edx, 0x158daf8e
sub edx, 0x4cfa6f33
sub edx, 0x158daf8e
imul eax, edx
and eax, 1
cmp eax, 0
sete r8b
cmp ecx, 0xa
setl r9b
mov r10b, r8b
xor r10b, 0xff
mov r11b, r9b
xor r11b, 0xff
mov bl, 1
xor bl, 1
or r10b, r11b
or bl, 1
xor r10b, 0xff
and r10b, bl
mov r11b, r8b
xor r11b, 0xff
mov bl, r9b
and bl, r11b
xor r9b, 0xff
and r8b, r9b
or bl, r8b
mov r8b, r10b
and r8b, bl
xor r10b, bl
or r8b, r10b
test r8b, 1
jne 0x2fc4d04bf
jmp 0x2fc4d05ff
mov qword [rsp + 0x70], 0
mov eax, dword [0x2fc4f7174]
mov ecx, dword [0x2fc4f7180]
mov edx, eax
add edx, 0x9bc1025e
add edx, 0xf6162c8
sub edx, 0x9bc1025e
add edx, 0xcac68e7d
sub edx, 1
sub edx, 0xcac68e7d
sub edx, 0x8692e85b
sub edx, 0xf6162c8
add edx, 0x8692e85b
imul eax, edx
and eax, 1
cmp eax, 0
sete r8b
cmp ecx, 0xa
setl r9b
mov r10b, r8b
xor r10b, 0xff
mov r11b, r9b
xor r11b, 0xff
mov bl, 1
mov sil, bl
xor sil, 1
or r10b, r11b
or sil, 1
xor r10b, 0xff
and r10b, sil
mov r11b, r8b
xor r11b, 0xff
mov sil, r9b
and sil, r11b
xor r9b, 0xff
and r8b, r9b
or sil, r8b
mov r8b, r10b
xor r8b, 0xff
mov r9b, sil
xor r9b, 0xff
xor bl, 0
mov r11b, r8b
and r11b, 0
and r10b, bl
mov dil, r9b
and dil, 0
and sil, bl
or r11b, r10b
or dil, sil
xor r11b, dil
or r8b, r9b
xor r8b, 0xff
or bl, 0
and r8b, bl
or r11b, r8b
test r11b, 1
jne 0x2fc4d05a6
jmp 0x2fc4d05ff
jmp 0x2fc4d003f
mov rax, qword [rsp + 0x50]
mov qword [rsp + 0x48], rax
mov rax, qword [rsp + 0x48]
mov rcx, qword [rax + 0x60]
mov rdx, qword [rsp + 0x68]
mov rax, qword [rsp + 0x68]
mov qword [rsp + 0x28], rcx
mov rcx, rax
mov qword [rsp + 0x20], rdx
call sym.StrLen
mov rcx, qword [rsp + 0x28]
mov rdx, qword [rsp + 0x20]
mov r8, rax
call sym.W2Anicmp
jmp 0x2fc4cfb9e
mov qword [rsp + 0x70], 0
jmp 0x2fc4d02ad
mov qword [rsp + 0x70], 0
jmp 0x2fc4d04bf