Function at 0x2fc4cfb80
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
mov rax, qword [rsp + 0x60]
cmp rax, qword [rsp + 0x68]
je 0x2fc4d035d
xor eax, eax
mov ecx, dword [0x2fc4f9174]
mov edx, dword [0x2fc4f9180]
mov r8d, 0xb5758675
add r8d, 0
sub r8d, 1
sub r8d, 0xb5758675
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, bl
xor sil, 0xff
mov dil, r11b
xor dil, sil
and dil, r11b
mov sil, r11b
xor sil, 0xff
mov bpl, bl
and bpl, sil
xor bl, 0xff
and r11b, bl
or bpl, r11b
mov r11b, dil
and r11b, bpl
xor dil, bpl
or r11b, dil
test r11b, 1
jne 0x2fc4cfc80
jmp 0x2fc4d04fc
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 + 0x50], rcx
mov rcx, rax
mov qword [rsp + 0x48], rdx
call sym.StrLen
mov rcx, qword [rsp + 0x50]
mov rdx, qword [rsp + 0x48]
mov r8, rax
call sym.W2Anicmp
xor r9d, r9d
cmp eax, 0
sete r10b
mov eax, dword [0x2fc4f9174]
mov r11d, dword [0x2fc4f9180]
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
and bpl, 1
mov r15b, 1
xor r15b, 1
and bl, r15b
mov r12b, dil
xor r12b, 0xff
and r12b, 0xff
and dil, r15b
or bpl, bl
or r12b, dil
xor bpl, r12b
mov bl, r14b
and bl, bpl
xor r14b, bpl
or bl, r14b
test bl, 1
mov byte [rsp + 0x47], r10b
jne 0x2fc4cfd58
jmp 0x2fc4d04fc
mov al, byte [rsp + 0x47]
test al, 1
jne 0x2fc4cfd69
jmp 0x2fc4d0015
xor eax, eax
mov ecx, dword [0x2fc4f9174]
mov edx, dword [0x2fc4f9180]
sub eax, 0x54411f57
mov r8d, ecx
add r8d, eax
sub r8d, 0x42e9fa9a
sub r8d, 1
add r8d, 0x42e9fa9a
sub r8d, 0xb6f966cc
add r8d, 0x54411f57
add r8d, 0xb6f966cc
imul ecx, r8d
and ecx, 1
cmp ecx, 0
sete r9b
cmp edx, 0xa
setl r10b
mov r11b, r9b
xor r11b, 0xff
mov bl, r10b
xor bl, 0xff
mov sil, 1
mov dil, sil
xor dil, 1
or r11b, bl
or dil, 1
xor r11b, 0xff
and r11b, dil
mov bl, r9b
xor bl, 0xff
and bl, 1
xor sil, 1
and r9b, sil
mov dil, r10b
xor dil, 0xff
and dil, 0xff
and r10b, sil
or bl, r9b
or dil, r10b
xor bl, dil
mov r9b, r11b
and r9b, bl
xor r11b, bl
or r9b, r11b
test r9b, 1
jne 0x2fc4cfe25
jmp 0x2fc4d0542
xor eax, eax
mov rcx, qword [rsp + 0x58]
mov rcx, qword [rcx + 0x30]
mov qword [rsp + 0x80], rcx
mov edx, dword [0x2fc4f9174]
mov r8d, dword [0x2fc4f9180]
mov r9d, eax
sub r9d, 0x12410568
mov r10d, edx
add r10d, r9d
mov r9d, eax
sub r9d, 1
add r10d, r9d
sub eax, 0x12410568
sub r10d, eax
imul edx, r10d
and edx, 1
cmp edx, 0
sete r11b
cmp r8d, 0xa
setl bl
mov sil, r11b
xor sil, 0xff
and sil, 1
mov dil, 1
mov bpl, dil
xor bpl, 1
mov r14b, r11b
and r14b, bpl
mov r15b, dil
xor r15b, 1
and r15b, 0xff
and bpl, 1
or sil, r14b
or r15b, bpl
xor sil, r15b
mov bpl, bl
xor bpl, 0xff
and bpl, 1
mov r14b, dil
xor r14b, 1
mov r15b, bl
and r15b, r14b
mov r12b, dil
xor r12b, 1
and r12b, 0xff
and r14b, 1
or bpl, r15b
or r12b, r14b
xor bpl, r12b
mov r14b, dil
xor r14b, 1
and r14b, 1
mov r15b, dil
xor r15b, 1
and r15b, 1
or r14b, r15b
mov r15b, dil
xor r15b, 1
mov r12b, sil
xor r12b, r15b
and r12b, sil
mov r15b, r14b
xor r15b, 0xff
mov r13b, r11b
xor r13b, r15b
and r13b, r11b
mov r11b, dil
xor r11b, 1
mov r15b, bpl
xor r15b, r11b
and r15b, bpl
mov r11b, r14b
xor r11b, 0xff
mov al, bl
xor al, r11b
and al, bl
mov r11b, r12b
and r11b, r13b
xor r12b, r13b
or r11b, r12b
mov bl, r15b
and bl, al
xor r15b, al
or bl, r15b
mov al, r11b
xor al, 0xff
and al, 1
mov r15b, dil
xor r15b, 1
and r11b, r15b
mov r12b, bl
xor r12b, 0xff
and r12b, 0xff
and bl, r15b
or al, r11b
or r12b, bl
xor al, r12b
mov r11b, sil
and r11b, bpl
xor sil, bpl
or r11b, sil
mov bl, r11b
xor bl, 0xff
and bl, 1
mov sil, dil
xor sil, 1
and r11b, sil
or bl, r11b
mov r11b, dil
xor r11b, 1
mov sil, r14b
xor sil, 0xff
mov bpl, dil
xor bpl, 1
mov r15b, r11b
and r15b, 0xff
mov r12b, bpl
and r12b, 1
mov r13b, sil
and r13b, 0xff
and r14b, bpl
or r15b, r12b
or r13b, r14b
xor r15b, r13b
or r11b, sil
xor r11b, 0xff
or bpl, 1
and r11b, bpl
or r15b, r11b
xor bl, 0xff
xor r15b, 0xff
xor dil, 0
or bl, r15b
or dil, 0
xor bl, 0xff
and bl, dil
mov r11b, al
and r11b, bl
xor al, bl
or r11b, al
test r11b, 1
jne 0x2fc4d0010
jmp 0x2fc4d0542
jmp 0x2fc4d0369
xor eax, eax
mov ecx, dword [0x2fc4f9174]
mov edx, dword [0x2fc4f9180]
mov r8d, ecx
sub r8d, 0x69050bb8
add r8d, 0x7fff8c80
add r8d, 0x69050bb8
sub eax, 1
add r8d, eax
sub r8d, 0xc0635691
sub r8d, 0x7fff8c80
add r8d, 0xc0635691
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
mov bpl, bl
xor bpl, 1
and bpl, 0xff
and sil, 1
or r11b, dil
or bpl, sil
xor r11b, bpl
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, 1
or r9b, bpl
or r15b, 1
xor r9b, 0xff
and r9b, r15b
mov bpl, sil
xor bpl, 0xff
mov r15b, bl
xor r15b, 1
mov r12b, bl
xor r12b, 0
or bpl, r15b
or r12b, 0
xor bpl, 0xff
and bpl, r12b
xor r10b, 0xff
mov r15b, dil
xor r15b, 0xff
mov r12b, bl
xor r12b, 1
or r10b, r15b
or r12b, 1
xor r10b, 0xff
and r10b, r12b
mov r15b, r14b
and r15b, r9b
xor r14b, r9b
or r15b, r14b
mov r9b, bpl
xor r9b, 0xff
mov r14b, r10b
xor r14b, 0xff
mov r12b, bl
xor r12b, 1
mov r13b, r9b
and r13b, 0xff
and bpl, r12b
mov al, r14b
and al, 0xff
and r10b, r12b
or r13b, bpl
or al, r10b
xor r13b, al
or r9b, r14b
xor r9b, 0xff
or r12b, 1
and r9b, r12b
or r13b, r9b
mov al, r15b
xor al, 0xff
and al, 0
mov r9b, bl
xor r9b, 0
and r15b, r9b
mov r10b, r13b
xor r10b, 0xff
and r10b, 0
and r13b, r9b
or al, r15b
or r10b, r13b
xor al, r10b
mov r9b, r11b
and r9b, sil
xor r11b, sil
or r9b, r11b
mov r10b, r9b
xor r10b, 0xff
and r10b, 0
mov r11b, bl
xor r11b, 0
and r9b, r11b
mov sil, bl
xor sil, 1
and sil, 0
and r11b, 1
or r10b, r9b
or sil, r11b
xor r10b, sil
mov r9b, dil
and r9b, 1
xor dil, 1
or r9b, dil
xor r10b, 0xff
xor r9b, 0xff
mov r11b, bl
xor r11b, 1
or r10b, r9b
or r11b, 1
xor r10b, 0xff
and r10b, r11b
mov r9b, al
xor r9b, 0xff
mov r11b, r10b
xor r11b, 0xff
xor bl, 0
mov sil, r9b
and sil, 0
and al, bl
mov dil, r11b
and dil, 0
and r10b, bl
or sil, al
or dil, r10b
xor sil, dil
or r9b, r11b
xor r9b, 0xff
or bl, 0
and r9b, bl
or sil, r9b
test sil, 1
jne 0x2fc4d0281
jmp 0x2fc4d0558
xor eax, eax
mov rcx, qword [rsp + 0x60]
mov rcx, qword [rcx]
mov qword [rsp + 0x60], rcx
mov edx, dword [0x2fc4f9174]
mov r8d, dword [0x2fc4f9180]
sub eax, 1
add eax, 0
mov r9d, edx
sub r9d, 0x3e2864ae
add r9d, eax
add r9d, 0x3e2864ae
imul edx, r9d
and edx, 1
cmp edx, 0
sete r10b
cmp r8d, 0xa
setl r11b
mov bl, r11b
xor bl, 0xff
mov sil, r10b
xor sil, bl
and sil, r10b
mov bl, r10b
xor bl, 0xff
and bl, 0
mov dil, 1
mov bpl, dil
xor bpl, 0
and r10b, bpl
mov r14b, r11b
xor r14b, 0xff
and r14b, 0
and r11b, bpl
or bl, r10b
or r14b, r11b
xor bl, r14b
mov r10b, sil
xor r10b, 0xff
mov r11b, bl
xor r11b, 0xff
xor dil, 1
mov bpl, r10b
and bpl, 0xff
and sil, dil
mov r14b, r11b
and r14b, 0xff
and bl, dil
or bpl, sil
or r14b, bl
xor bpl, r14b
or r10b, r11b
xor r10b, 0xff
or dil, 1
and r10b, dil
or bpl, r10b
test bpl, 1
jne 0x2fc4d0358
jmp 0x2fc4d0558
jmp 0x2fc4cfbe7
mov qword [rsp + 0x80], 0
xor eax, eax
mov ecx, dword [0x2fc4f9174]
mov edx, dword [0x2fc4f9180]
sub eax, 0xfde76582
mov r8d, ecx
sub r8d, eax
sub r8d, 0xb7455ff4
sub r8d, 1
add r8d, 0xb7455ff4
add r8d, 0xe4c63fe5
sub r8d, 0xfde76582
sub r8d, 0xe4c63fe5
imul ecx, r8d
and ecx, 1
cmp ecx, 0
sete r9b
cmp edx, 0xa
setl r10b
mov r11b, r9b
xor r11b, 0xff
mov bl, r10b
xor bl, 0xff
mov sil, 1
xor sil, 1
or r11b, bl
or sil, 1
xor r11b, 0xff
and r11b, sil
mov bl, r9b
xor bl, 0xff
mov sil, r10b
and sil, bl
xor r10b, 0xff
and r9b, r10b
or sil, r9b
mov r9b, r11b
and r9b, sil
xor r11b, sil
or r9b, r11b
test r9b, 1
jne 0x2fc4d0411
jmp 0x2fc4d056a
xor eax, eax
mov rcx, qword [rsp + 0x80]
mov edx, dword [0x2fc4f9174]
mov r8d, dword [0x2fc4f9180]
mov r9d, eax
sub r9d, 0x610f814e
mov r10d, edx
add r10d, r9d
sub r10d, 0xcca8f1f9
sub r10d, 1
add r10d, 0xcca8f1f9
mov r9d, eax
sub r9d, r10d
mov r10d, eax
sub r10d, 0x610f814e
add r9d, r10d
sub eax, r9d
imul edx, eax
and edx, 1
cmp edx, 0
sete r11b
cmp r8d, 0xa
setl bl
mov sil, r11b
xor sil, 0xff
mov dil, bl
xor dil, 0xff
mov bpl, 1
mov r14b, bpl
xor r14b, 1
or sil, dil
or r14b, 1
xor sil, 0xff
and sil, r14b
mov dil, r11b
xor dil, 0xff
and dil, 0
xor bpl, 0
and r11b, bpl
mov r14b, bl
xor r14b, 0xff
and r14b, 0
and bl, bpl
or dil, r11b
or r14b, bl
xor dil, r14b
mov r11b, sil
and r11b, dil
xor sil, dil
or r11b, sil
test r11b, 1
mov qword [rsp + 0x38], rcx
jne 0x2fc4d04e3
jmp 0x2fc4d056a
mov rax, qword [rsp + 0x38]
add rsp, 0x98
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
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 0x2fc4cfc80
mov rax, qword [rsp + 0x58]
mov rax, qword [rax + 0x30]
mov qword [rsp + 0x80], rax
jmp 0x2fc4cfe25
mov rax, qword [rsp + 0x60]
mov rax, qword [rax]
mov qword [rsp + 0x60], rax
jmp 0x2fc4d0281
jmp 0x2fc4d0411