Function at 0x2fc4ccf80
Capabilities:
Access peb ldr_data

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x98
mov qword [rsp + 0x78], rcx
mov dword [rsp + 0x94], 0x60
mov eax, dword [rsp + 0x94]
mov ecx, eax
mov rcx, qword gs:[rcx]
mov qword [rsp + 0x88], rcx
mov rcx, qword [rsp + 0x88]
mov qword [rsp + 0x70], rcx
mov rcx, qword [rsp + 0x70]
mov rcx, qword [rcx + 0x18]
add rcx, 0x10
mov qword [rsp + 0x68], rcx
mov rcx, qword [rsp + 0x68]
mov rcx, qword [rcx]
mov qword [rsp + 0x60], rcx
xor eax, eax
mov ecx, dword [0x2fc4f3174]
mov edx, dword [0x2fc4f3180]
mov r8d, eax
sub r8d, ecx
mov r9d, eax
sub r9d, 0x502dd25c
add r8d, r9d
sub eax, r8d
add eax, 0xec2054b
sub eax, 1
sub eax, 0xec2054b
add eax, 0xbf83771b
sub eax, 0x502dd25c
sub eax, 0xbf83771b
imul ecx, eax
and ecx, 1
cmp ecx, 0
sete r10b
cmp edx, 0xa
setl r11b
mov bl, r10b
xor bl, 0xff
and bl, 1
mov sil, 1
mov dil, sil
xor dil, 1
mov bpl, r10b
and bpl, dil
or bl, bpl
mov dil, r11b
xor dil, 0xff
and dil, 1
mov bpl, sil
xor bpl, 1
mov r14b, r11b
and r14b, bpl
mov r15b, sil
xor r15b, 1
and r15b, 0xff
and bpl, 1
or dil, r14b
or r15b, bpl
xor dil, r15b
mov bpl, sil
xor bpl, 1
and bpl, 0
mov r14b, sil
xor r14b, 0
mov r15b, r14b
and r15b, 1
mov r12b, sil
xor r12b, 1
and r12b, 0
and r14b, 1
or bpl, r15b
or r12b, r14b
xor bpl, r12b
mov r14b, sil
xor r14b, 1
mov r15b, bl
xor r15b, r14b
and r15b, bl
mov r14b, bpl
xor r14b, 0xff
mov r12b, r10b
xor r12b, r14b
and r12b, r10b
mov r10b, sil
xor r10b, 1
mov r14b, dil
xor r14b, r10b
and r14b, dil
xor r11b, 0xff
mov r10b, bpl
xor r10b, 0xff
mov r13b, sil
xor r13b, 0
or r11b, r10b
or r13b, 0
xor r11b, 0xff
and r11b, r13b
mov r10b, r15b
and r10b, r12b
xor r15b, r12b
or r10b, r15b
mov r15b, r14b
and r15b, r11b
xor r14b, r11b
or r15b, r14b
mov r11b, r10b
xor r11b, 0xff
and r11b, 0
mov r14b, sil
xor r14b, 0
and r10b, r14b
mov r12b, r15b
xor r12b, 0xff
and r12b, 0
and r15b, r14b
or r11b, r10b
or r12b, r15b
xor r11b, r12b
mov r10b, bl
xor r10b, 0xff
mov r14b, dil
xor r14b, 0xff
mov r15b, sil
xor r15b, 0
mov r12b, r10b
and r12b, 0
and bl, r15b
mov r13b, r14b
and r13b, 0
and dil, r15b
or r12b, bl
or r13b, dil
xor r12b, r13b
or r10b, r14b
xor r10b, 0xff
or r15b, 0
and r10b, r15b
or r12b, r10b
mov r10b, r12b
xor r10b, 0xff
and r10b, 1
mov bl, sil
xor bl, 1
and r12b, bl
mov dil, sil
xor dil, 1
and dil, 0xff
and bl, 1
or r10b, r12b
or dil, bl
xor r10b, dil
mov bl, bpl
and bl, 1
xor bpl, 1
or bl, bpl
xor r10b, 0xff
xor bl, 0xff
mov dil, sil
xor dil, 0
or r10b, bl
or dil, 0
xor r10b, 0xff
and r10b, dil
mov bl, r11b
xor bl, 0xff
mov dil, r10b
xor dil, 0xff
xor sil, 1
mov bpl, bl
and bpl, 0xff
and r11b, sil
mov r14b, dil
and r14b, 0xff
and r10b, sil
or bpl, r11b
or r14b, r10b
xor bpl, r14b
or bl, dil
xor bl, 0xff
or sil, 1
and bl, sil
or bpl, bl
test bpl, 1
jne 0x2fc4cd230
jmp 0x2fc4cdc29
xor eax, eax
mov rcx, qword [rsp + 0x60]
cmp rcx, qword [rsp + 0x68]
setne dl
mov r8d, dword [0x2fc4f3174]
mov r9d, dword [0x2fc4f3180]
mov r10d, eax
sub r10d, 0x96e20e10
mov r11d, r8d
add r11d, r10d
add r11d, 0x1e586c69
sub r11d, 1
sub r11d, 0x1e586c69
mov r10d, eax
sub r10d, r11d
mov r11d, eax
sub r11d, 0x96e20e10
add r10d, r11d
sub eax, r10d
imul r8d, eax
and r8d, 1
cmp r8d, 0
sete bl
cmp r9d, 0xa
setl sil
mov dil, bl
xor dil, 0xff
mov bpl, sil
xor bpl, 0xff
mov r14b, 1
mov r15b, r14b
xor r15b, 0
or dil, bpl
or r15b, 0
xor dil, 0xff
and dil, r15b
mov bpl, bl
xor bpl, 0xff
and bpl, 1
mov r15b, r14b
xor r15b, 1
and bl, r15b
mov r12b, sil
xor r12b, 0xff
and r12b, 0xff
and sil, r15b
or bpl, bl
or r12b, sil
xor bpl, r12b
mov bl, dil
xor bl, 0xff
mov sil, bpl
xor sil, 0xff
xor r14b, 1
mov r15b, bl
and r15b, 0xff
and dil, r14b
mov r12b, sil
and r12b, 0xff
and bpl, r14b
or r15b, dil
or r12b, bpl
xor r15b, r12b
or bl, sil
xor bl, 0xff
or r14b, 1
and bl, r14b
or r15b, bl
test r15b, 1
mov byte [rsp + 0x57], dl
jne 0x2fc4cd33f
jmp 0x2fc4cdc29
mov al, byte [rsp + 0x57]
test al, 1
jne 0x2fc4cd350
jmp 0x2fc4cd931
xor eax, eax
mov ecx, dword [0x2fc4f3174]
mov edx, dword [0x2fc4f3180]
sub eax, 0x979953c4
sub eax, 1
add eax, 0x979953c4
mov r8d, ecx
add r8d, 0xb05e2e05
add r8d, eax
sub r8d, 0xb05e2e05
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, 0
mov bpl, bl
xor bpl, 0
mov r14b, bpl
and r14b, 1
mov r15b, bl
xor r15b, 1
and r15b, 0
and bpl, 1
or dil, r14b
or r15b, bpl
xor dil, r15b
mov bpl, bl
xor bpl, 1
mov r14b, r11b
xor r14b, bpl
and r14b, r11b
xor r9b, 0xff
mov bpl, dil
xor bpl, 0xff
mov r15b, bl
xor r15b, 0
or r9b, bpl
or r15b, 0
xor r9b, 0xff
and r9b, r15b
mov bpl, sil
xor bpl, 0xff
mov r15b, bl
xor r15b, 1
mov r12b, bl
xor r12b, 1
or bpl, r15b
or r12b, 1
xor bpl, 0xff
and bpl, r12b
xor r10b, 0xff
mov r15b, dil
xor r15b, 0xff
mov r12b, bl
xor r12b, 0
or r10b, r15b
or r12b, 0
xor r10b, 0xff
and r10b, r12b
mov r15b, r14b
xor r15b, 0xff
mov r12b, r9b
xor r12b, 0xff
mov r13b, bl
xor r13b, 1
mov al, r15b
and al, 0xff
and r14b, r13b
mov cl, r12b
and cl, 0xff
and r9b, r13b
or al, r14b
or cl, r9b
xor al, cl
or r15b, r12b
xor r15b, 0xff
or r13b, 1
and r15b, r13b
or al, r15b
mov cl, bpl
and cl, r10b
xor bpl, r10b
or cl, bpl
mov r9b, al
xor r9b, 0xff
mov r10b, cl
and r10b, r9b
xor cl, 0xff
and al, cl
or r10b, al
mov al, r11b
and al, sil
xor r11b, sil
or al, r11b
mov cl, al
xor cl, 0xff
and cl, 1
mov r9b, bl
xor r9b, 1
and al, r9b
or cl, al
mov al, bl
xor al, 1
mov r9b, dil
xor r9b, 0xff
xor bl, 1
mov r11b, al
and r11b, 0xff
mov sil, bl
and sil, 1
mov bpl, r9b
and bpl, 0xff
and dil, bl
or r11b, sil
or bpl, dil
xor r11b, bpl
or al, r9b
xor al, 0xff
or bl, 1
and al, bl
or r11b, al
xor r11b, 0xff
mov al, cl
xor al, r11b
and al, cl
mov cl, r10b
and cl, al
xor r10b, al
or cl, r10b
test cl, 1
jne 0x2fc4cd550
jmp 0x2fc4cdc2e
mov rax, qword [rsp + 0x60]
mov qword [rsp + 0x58], rax
mov rax, qword [rsp + 0x58]
mov rcx, qword [rax + 0x60]
mov rdx, qword [rsp + 0x78]
mov rax, qword [rsp + 0x78]
mov qword [rsp + 0x48], rcx
mov rcx, rax
mov qword [rsp + 0x40], rdx
call sym.StrLen
mov rcx, qword [rsp + 0x48]
mov rdx, qword [rsp + 0x40]
mov r8, rax
call sym.W2Anicmp
xor r9d, r9d
cmp eax, 0
sete r10b
mov eax, dword [0x2fc4f3174]
mov r11d, dword [0x2fc4f3180]
mov esi, r9d
sub esi, 1
add esi, 0
sub r9d, esi
mov esi, eax
sub esi, r9d
imul eax, esi
and eax, 1
cmp eax, 0
sete bl
cmp r11d, 0xa
setl dil
mov bpl, dil
xor bpl, 0xff
mov r14b, bl
xor r14b, bpl
and r14b, bl
mov bpl, bl
xor bpl, 0xff
mov r15b, dil
and r15b, bpl
xor dil, 0xff
and bl, dil
or r15b, bl
mov bl, r14b
and bl, r15b
xor r14b, r15b
or bl, r14b
test bl, 1
mov byte [rsp + 0x3f], r10b
jne 0x2fc4cd613
jmp 0x2fc4cdc2e
mov al, byte [rsp + 0x3f]
test al, 1
jne 0x2fc4cd624
jmp 0x2fc4cd91f
xor eax, eax
mov ecx, dword [0x2fc4f3174]
mov edx, dword [0x2fc4f3180]
mov r8d, eax
sub r8d, ecx
mov r9d, eax
sub r9d, 0x1c617c46
add r8d, r9d
mov r9d, eax
sub r9d, r8d
add r9d, 0x658d8c39
sub r9d, 1
sub r9d, 0x658d8c39
sub eax, 0x1c617c46
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
xor r10b, 0xff
mov r11b, dil
xor r11b, 0xff
mov bl, 1
xor bl, 0
mov bpl, r10b
and bpl, 0
and sil, bl
mov r14b, r11b
and r14b, 0
and dil, bl
or bpl, sil
or r14b, dil
xor bpl, r14b
or r10b, r11b
xor r10b, 0xff
or bl, 0
and r10b, bl
or bpl, r10b
test bpl, 1
jne 0x2fc4cd6ee
jmp 0x2fc4cdc74
xor eax, eax
mov rcx, qword [rsp + 0x58]
mov rcx, qword [rcx + 0x30]
mov qword [rsp + 0x80], rcx
mov edx, dword [0x2fc4f3174]
mov r8d, dword [0x2fc4f3180]
mov r9d, edx
sub r9d, 0xbbb341e8
sub r9d, 0xc8c662a6
add r9d, 0xbbb341e8
sub r9d, 0xd5846528
sub r9d, 1
add r9d, 0xd5846528
sub eax, 0xc8c662a6
sub r9d, eax
imul edx, r9d
and edx, 1
cmp edx, 0
sete r10b
cmp r8d, 0xa
setl r11b
mov bl, r10b
xor bl, 0xff
and bl, 1
mov sil, 1
mov dil, sil
xor dil, 1
mov bpl, r10b
and bpl, dil
or bl, bpl
mov dil, r11b
xor dil, 0xff
and dil, 1
mov bpl, sil
xor bpl, 1
mov r14b, r11b
and r14b, bpl
or dil, r14b
mov bpl, sil
xor bpl, 1
and bpl, 0
mov r14b, sil
xor r14b, 0
mov r15b, r14b
and r15b, 1
mov r12b, sil
xor r12b, 1
and r12b, 0
and r14b, 1
or bpl, r15b
or r12b, r14b
xor bpl, r12b
mov r14b, sil
xor r14b, 1
mov r15b, bl
xor r15b, r14b
and r15b, bl
mov r14b, bpl
xor r14b, 0xff
mov r12b, r10b
xor r12b, r14b
and r12b, r10b
mov r10b, dil
xor r10b, 0xff
mov r14b, sil
xor r14b, 1
mov r13b, sil
xor r13b, 1
or r10b, r14b
or r13b, 1
xor r10b, 0xff
and r10b, r13b
mov r14b, bpl
xor r14b, 0xff
mov r13b, r11b
xor r13b, r14b
and r13b, r11b
mov r11b, r15b
xor r11b, 0xff
mov r14b, r12b
xor r14b, 0xff
mov al, sil
xor al, 0
mov cl, r11b
and cl, 0
and r15b, al
mov dl, r14b
and dl, 0
and r12b, al
or cl, r15b
or dl, r12b
xor cl, dl
or r11b, r14b
xor r11b, 0xff
or al, 0
and r11b, al
or cl, r11b
mov al, r10b
xor al, 0xff
mov dl, r13b
xor dl, 0xff
mov r11b, sil
xor r11b, 0
mov r14b, al
and r14b, 0
and r10b, r11b
mov r15b, dl
and r15b, 0
and r13b, r11b
or r14b, r10b
or r15b, r13b
xor r14b, r15b
or al, dl
xor al, 0xff
or r11b, 0
and al, r11b
or r14b, al
mov al, cl
xor al, 0xff
mov dl, r14b
and dl, al
xor r14b, 0xff
and cl, r14b
or dl, cl
mov al, bl
and al, dil
xor bl, dil
or al, bl
mov cl, al
xor cl, 0xff
and cl, 1
mov r10b, sil
xor r10b, 1
and al, r10b
or cl, al
mov al, sil
xor al, 1
mov r10b, bpl
xor r10b, 0xff
xor sil, 1
mov r11b, al
and r11b, 0xff
mov bl, sil
and bl, 1
mov dil, r10b
and dil, 0xff
and bpl, sil
or r11b, bl
or dil, bpl
xor r11b, dil
or al, r10b
xor al, 0xff
or sil, 1
and al, sil
or r11b, al
xor r11b, 0xff
mov al, cl
xor al, r11b
and al, cl
mov cl, dl
and cl, al
xor dl, al
or cl, dl
test cl, 1
jne 0x2fc4cd91a
jmp 0x2fc4cdc74
jmp 0x2fc4cdc0d
mov rax, qword [rsp + 0x60]
mov rax, qword [rax]
mov qword [rsp + 0x60], rax
jmp 0x2fc4ccfe7
xor eax, eax
mov ecx, dword [0x2fc4f3174]
mov edx, dword [0x2fc4f3180]
mov r8d, eax
sub r8d, 1
add r8d, 0
mov r9d, eax
sub r9d, ecx
mov r10d, eax
sub r10d, r8d
add r9d, r10d
sub eax, r9d
imul ecx, eax
and ecx, 1
cmp ecx, 0
sete r11b
cmp edx, 0xa
setl bl
mov sil, r11b
xor sil, 0xff
mov dil, bl
xor dil, 0xff
mov bpl, 1
xor bpl, 1
or sil, dil
or bpl, 1
xor sil, 0xff
and sil, bpl
mov dil, r11b
xor dil, 0xff
mov bpl, bl
and bpl, dil
xor bl, 0xff
and r11b, bl
or bpl, r11b
mov r11b, sil
and r11b, bpl
xor sil, bpl
or r11b, sil
test r11b, 1
jne 0x2fc4cd9c3
jmp 0x2fc4cdc8a
xor eax, eax
mov qword [rsp + 0x80], 0
mov ecx, dword [0x2fc4f3174]
mov edx, dword [0x2fc4f3180]
mov r8d, ecx
add r8d, 0xec7a758f
sub r8d, 0xf804a5c6
sub r8d, 0xec7a758f
add r8d, 0xb5c8a95c
sub r8d, 1
sub r8d, 0xb5c8a95c
sub eax, 0xf804a5c6
sub r8d, eax
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, 0
mov dil, bl
xor dil, 0
mov bpl, r10b
and bpl, dil
mov r14b, bl
xor r14b, 1
and r14b, 0
and dil, 1
or sil, bpl
or r14b, dil
xor sil, r14b
mov dil, bl
xor dil, 1
and dil, 1
mov bpl, bl
xor bpl, 1
and bpl, 1
or dil, bpl
mov bpl, r11b
xor bpl, 0xff
mov r14b, bl
xor r14b, 1
mov r15b, bl
xor r15b, 1
or bpl, r14b
or r15b, 1
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
xor r10b, 0xff
mov r9b, dil
xor r9b, 0xff
mov r12b, bl
xor r12b, 0
or r10b, r9b
or r12b, 0
xor r10b, 0xff
and r10b, r12b
mov r9b, bpl
xor r9b, 0xff
mov r12b, r15b
xor r12b, 0xff
mov r13b, bl
xor r13b, 0
mov al, r9b
and al, 0
and bpl, r13b
mov cl, r12b
and cl, 0
and r15b, r13b
or al, bpl
or cl, r15b
xor al, cl
or r9b, r12b
xor r9b, 0xff
or r13b, 0
and r9b, r13b
or al, r9b
mov cl, r14b
and cl, r10b
xor r14b, r10b
or cl, r14b
mov r9b, al
xor r9b, 0xff
and r9b, 0
mov r10b, bl
xor r10b, 0
and al, r10b
mov bpl, cl
xor bpl, 0xff
and bpl, 0
and cl, r10b
or r9b, al
or bpl, cl
xor r9b, bpl
mov al, r11b
and al, sil
xor r11b, sil
or al, r11b
mov cl, al
xor cl, 0xff
and cl, 1
mov r10b, bl
xor r10b, 1
and al, r10b
mov r11b, bl
xor r11b, 1
and r11b, 0xff
and r10b, 1
or cl, al
or r11b, r10b
xor cl, r11b
mov al, bl
xor al, 1
mov r10b, dil
xor r10b, 0xff
mov r11b, bl
xor r11b, 0
mov sil, al
and sil, 0
mov bpl, r11b
and bpl, 1
mov r14b, r10b
and r14b, 0
and dil, r11b
or sil, bpl
or r14b, dil
xor sil, r14b
or al, r10b
xor al, 0xff
or r11b, 0
and al, r11b
or sil, al
xor cl, 0xff
xor sil, 0xff
xor bl, 0
or cl, sil
or bl, 0
xor cl, 0xff
and cl, bl
mov al, r9b
and al, cl
xor r9b, cl
or al, r9b
test al, 1
jne 0x2fc4cdc08
jmp 0x2fc4cdc8a
jmp 0x2fc4cdc0d
mov rax, qword [rsp + 0x80]
add rsp, 0x98
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
jmp 0x2fc4cd230
mov rax, qword [rsp + 0x60]
mov qword [rsp + 0x58], rax
mov rax, qword [rsp + 0x58]
mov rcx, qword [rax + 0x60]
mov rdx, qword [rsp + 0x78]
mov rax, qword [rsp + 0x78]
mov qword [rsp + 0x30], rcx
mov rcx, rax
mov qword [rsp + 0x28], rdx
call sym.StrLen
mov rcx, qword [rsp + 0x30]
mov rdx, qword [rsp + 0x28]
mov r8, rax
call sym.W2Anicmp
jmp 0x2fc4cd550
mov rax, qword [rsp + 0x58]
mov rax, qword [rax + 0x30]
mov qword [rsp + 0x80], rax
jmp 0x2fc4cd6ee
mov qword [rsp + 0x80], 0
jmp 0x2fc4cd9c3