Function at 0x2fc4ca540
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
xor eax, eax
mov ecx, dword [0x2fc4f4174]
mov edx, dword [0x2fc4f4180]
sub eax, 0x6a86aadf
mov r8d, ecx
add r8d, eax
add r8d, 0xd253e1ad
sub r8d, 1
sub r8d, 0xd253e1ad
sub r8d, 0xd97f8dba
add r8d, 0x6a86aadf
add r8d, 0xd97f8dba
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, 0
or r11b, bl
or dil, 0
xor r11b, 0xff
and r11b, dil
mov bl, r9b
xor bl, 0xff
and bl, 1
mov dil, sil
xor dil, 1
and r9b, dil
mov bpl, r10b
xor bpl, 0xff
and bpl, 0xff
and r10b, dil
or bl, r9b
or bpl, r10b
xor bl, bpl
mov r9b, r11b
xor r9b, 0xff
mov r10b, bl
xor r10b, 0xff
xor sil, 0
mov dil, r9b
and dil, 0
and r11b, sil
mov bpl, r10b
and bpl, 0
and bl, sil
or dil, r11b
or bpl, bl
xor dil, bpl
or r9b, r10b
xor r9b, 0xff
or sil, 0
and r9b, sil
or dil, r9b
test dil, 1
jne 0x2fc4ca694
jmp 0x2fc4cb0d0
xor eax, eax
mov rcx, qword [rsp + 0x50]
cmp rcx, qword [rsp + 0x58]
setne dl
mov r8d, dword [0x2fc4f4174]
mov r9d, dword [0x2fc4f4180]
mov r10d, eax
sub r10d, r8d
mov r11d, eax
sub r11d, 0x927288fe
add r10d, r11d
sub eax, r10d
add eax, 0x5ca71dd7
sub eax, 1
sub eax, 0x5ca71dd7
add eax, 0x1c31cd8f
sub eax, 0x927288fe
sub eax, 0x1c31cd8f
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, 1
or dil, bpl
or r15b, 1
xor dil, 0xff
and dil, r15b
mov bpl, bl
xor bpl, 0xff
and bpl, 1
xor r14b, 1
and bl, r14b
mov r15b, sil
xor r15b, 0xff
and r15b, 0xff
and sil, r14b
or bpl, bl
or r15b, sil
xor bpl, r15b
mov bl, dil
and bl, bpl
xor dil, bpl
or bl, dil
test bl, 1
mov byte [rsp + 0x47], dl
jne 0x2fc4ca767
jmp 0x2fc4cb0d0
mov al, byte [rsp + 0x47]
test al, 1
jne 0x2fc4ca778
jmp 0x2fc4ca956
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 + 0x38], rcx
mov rcx, rax
mov qword [rsp + 0x30], rdx
call sym.StrLen
mov rcx, qword [rsp + 0x38]
mov rdx, qword [rsp + 0x30]
mov r8, rax
call sym.W2Anicmp
cmp eax, 0
jne 0x2fc4ca7d5
mov rax, qword [rsp + 0x48]
mov rax, qword [rax + 0x30]
mov qword [rsp + 0x70], rax
jmp 0x2fc4ca95f
xor eax, eax
mov ecx, dword [0x2fc4f4174]
mov edx, dword [0x2fc4f4180]
mov r8d, eax
sub r8d, 0xb1464de1
sub r8d, 1
add r8d, 0xb1464de1
sub eax, r8d
mov r8d, ecx
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
mov bl, r10b
xor bl, 0xff
mov sil, 1
mov dil, sil
xor dil, 0
or r11b, bl
or dil, 0
xor r11b, 0xff
and r11b, dil
mov bl, r9b
xor bl, 0xff
and bl, 0
mov dil, sil
xor dil, 0
and r9b, dil
mov bpl, r10b
xor bpl, 0xff
and bpl, 0
and r10b, dil
or bl, r9b
or bpl, r10b
xor bl, bpl
mov r9b, r11b
xor r9b, 0xff
mov r10b, bl
xor r10b, 0xff
xor sil, 1
mov dil, r9b
and dil, 0xff
and r11b, sil
mov bpl, r10b
and bpl, 0xff
and bl, sil
or dil, r11b
or bpl, bl
xor dil, bpl
or r9b, r10b
xor r9b, 0xff
or sil, 1
and r9b, sil
or dil, r9b
test dil, 1
jne 0x2fc4ca8b4
jmp 0x2fc4cb0d5
xor eax, eax
mov rcx, qword [rsp + 0x50]
mov rcx, qword [rcx]
mov qword [rsp + 0x50], rcx
mov edx, dword [0x2fc4f4174]
mov r8d, dword [0x2fc4f4180]
mov r9d, eax
sub r9d, 0x31b399e9
mov r10d, edx
sub r10d, r9d
sub eax, 1
add r10d, eax
add r10d, 0x2bba5a84
sub r10d, 0x31b399e9
sub r10d, 0x2bba5a84
imul edx, r10d
and edx, 1
cmp edx, 0
sete r11b
cmp r8d, 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 0x2fc4ca951
jmp 0x2fc4cb0d5
jmp 0x2fc4ca5a1
mov qword [rsp + 0x70], 0
xor eax, eax
mov ecx, dword [0x2fc4f4174]
mov edx, dword [0x2fc4f4180]
mov r8d, eax
sub r8d, 0xb4d4104c
mov r9d, ecx
add r9d, r8d
sub r9d, 0xc90b18c6
sub r9d, 1
add r9d, 0xc90b18c6
sub eax, 0xb4d4104c
sub r9d, eax
imul ecx, r9d
and ecx, 1
cmp ecx, 0
sete r10b
cmp edx, 0xa
setl r11b
mov bl, r10b
xor bl, 0xff
and bl, 0
mov sil, 1
mov dil, sil
xor dil, 0
mov bpl, r10b
and bpl, dil
mov r14b, sil
xor r14b, 1
and r14b, 0
and dil, 1
or bl, bpl
or r14b, dil
xor bl, r14b
mov dil, r11b
xor dil, 0xff
and dil, 0
mov bpl, sil
xor bpl, 0
mov r14b, r11b
and r14b, bpl
mov r15b, sil
xor r15b, 1
and r15b, 0
and bpl, 1
or dil, r14b
or r15b, bpl
xor dil, r15b
mov bpl, sil
xor bpl, 0
and bpl, 0
mov r14b, sil
xor r14b, 0
mov r15b, r14b
and r15b, 0
mov r12b, sil
xor r12b, 1
and r12b, 0
and r14b, 1
or bpl, r15b
or r12b, r14b
xor bpl, r12b
mov r14b, bl
xor r14b, 0xff
mov r15b, sil
xor r15b, 0
mov r12b, sil
xor r12b, 1
or r14b, r15b
or r12b, 1
xor r14b, 0xff
and r14b, r12b
mov r15b, bpl
xor r15b, 0xff
mov r12b, r10b
xor r12b, r15b
and r12b, r10b
mov r10b, sil
xor r10b, 0
mov r15b, dil
xor r15b, r10b
and r15b, dil
xor r11b, 0xff
mov r10b, bpl
xor r10b, 0xff
mov r13b, sil
xor r13b, 1
or r11b, r10b
or r13b, 1
xor r11b, 0xff
and r11b, r13b
mov r10b, r14b
and r10b, r12b
xor r14b, r12b
or r10b, r14b
mov r14b, r15b
and r14b, r11b
xor r15b, r11b
or r14b, r15b
mov r11b, r10b
xor r11b, 0xff
and r11b, 1
mov r15b, sil
xor r15b, 1
and r10b, r15b
mov r12b, r14b
xor r12b, 0xff
and r12b, 0xff
and r14b, r15b
or r11b, r10b
or r12b, r14b
xor r11b, r12b
mov r10b, bl
and r10b, dil
xor bl, dil
or r10b, bl
mov bl, r10b
xor bl, 0xff
and bl, 1
mov dil, sil
xor dil, 1
and r10b, dil
or bl, r10b
mov r10b, bpl
and r10b, 0
xor bpl, 0
or r10b, bpl
xor bl, 0xff
xor r10b, 0xff
mov dil, sil
xor dil, 1
or bl, r10b
or dil, 1
xor bl, 0xff
and bl, dil
mov r10b, r11b
xor r10b, 0xff
mov dil, bl
xor dil, 0xff
xor sil, 1
mov bpl, r10b
and bpl, 0xff
and r11b, sil
mov r14b, dil
and r14b, 0xff
and bl, sil
or bpl, r11b
or r14b, bl
xor bpl, r14b
or r10b, dil
xor r10b, 0xff
or sil, 1
and r10b, sil
or bpl, r10b
test bpl, 1
jne 0x2fc4cab7f
jmp 0x2fc4cb0e7
xor eax, eax
mov ecx, dword [0x2fc4f4174]
mov edx, dword [0x2fc4f4180]
sub eax, 0x910b7d44
mov r8d, ecx
add r8d, eax
sub r8d, 0x51384f06
sub r8d, 1
add r8d, 0x51384f06
sub r8d, 0x34b19157
add r8d, 0x910b7d44
add r8d, 0x34b19157
imul ecx, r8d
and ecx, 1
cmp ecx, 0
sete r9b
cmp edx, 0xa
setl r10b
mov r11b, r10b
xor r11b, 0xff
mov bl, r9b
xor bl, r11b
and bl, r9b
mov r11b, r9b
xor r11b, 0xff
mov sil, r10b
and sil, r11b
xor r10b, 0xff
and r9b, r10b
or sil, r9b
mov r9b, bl
and r9b, sil
xor bl, sil
or r9b, bl
test r9b, 1
jne 0x2fc4cac16
jmp 0x2fc4cb0e7
xor eax, eax
mov ecx, dword [0x2fc4f4174]
mov edx, dword [0x2fc4f4180]
mov r8d, eax
sub r8d, 0xbf6793fa
sub r8d, 1
add r8d, 0xbf6793fa
sub eax, r8d
mov r8d, ecx
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
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, 0
mov dil, sil
xor dil, 0
and r9b, dil
mov bpl, r10b
xor bpl, 0xff
and bpl, 0
and r10b, dil
or bl, r9b
or bpl, r10b
xor bl, bpl
mov r9b, r11b
xor r9b, 0xff
mov r10b, bl
xor r10b, 0xff
xor sil, 1
mov dil, r9b
and dil, 0xff
and r11b, sil
mov bpl, r10b
and bpl, 0xff
and bl, sil
or dil, r11b
or bpl, bl
xor dil, bpl
or r9b, r10b
xor r9b, 0xff
or sil, 1
and r9b, sil
or dil, r9b
test dil, 1
jne 0x2fc4cacf5
jmp 0x2fc4cb0cb
mov eax, dword [0x2fc4f4174]
mov ecx, dword [0x2fc4f4180]
mov edx, 0xdcaacb2c
add edx, 0
sub edx, 1
sub edx, 0xdcaacb2c
mov r8d, eax
sub r8d, 0xd3614ed0
add r8d, edx
add r8d, 0xd3614ed0
imul eax, r8d
and eax, 1
cmp eax, 0
sete r9b
cmp ecx, 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, 0
and dil, 1
mov bpl, bl
xor bpl, 1
and bpl, 0
or dil, bpl
mov bpl, r11b
xor bpl, 0xff
mov r14b, bl
xor r14b, 0
mov r15b, bl
xor r15b, 1
or bpl, r14b
or r15b, 1
xor bpl, 0xff
and bpl, r15b
xor r9b, 0xff
mov r14b, dil
xor r14b, 0xff
mov r15b, bl
xor r15b, 1
or r9b, r14b
or r15b, 1
xor r9b, 0xff
and r9b, r15b
mov r14b, bl
xor r14b, 0
mov r15b, sil
xor r15b, r14b
and r15b, sil
mov r14b, dil
xor r14b, 0xff
mov r12b, r10b
xor r12b, r14b
and r12b, r10b
mov r10b, bpl
xor r10b, 0xff
mov r14b, r9b
xor r14b, 0xff
mov r13b, bl
xor r13b, 0
mov al, r10b
and al, 0
and bpl, r13b
mov cl, r14b
and cl, 0
and r9b, r13b
or al, bpl
or cl, r9b
xor al, cl
or r10b, r14b
xor r10b, 0xff
or r13b, 0
and r10b, r13b
or al, r10b
mov cl, r15b
xor cl, 0xff
mov r9b, r12b
xor r9b, 0xff
mov r10b, bl
xor r10b, 1
mov bpl, cl
and bpl, 0xff
and r15b, r10b
mov r14b, r9b
and r14b, 0xff
and r12b, r10b
or bpl, r15b
or r14b, r12b
xor bpl, r14b
or cl, r9b
xor cl, 0xff
or r10b, 1
and cl, r10b
or bpl, cl
mov cl, al
xor cl, 0xff
mov r9b, bpl
and r9b, cl
xor bpl, 0xff
and al, bpl
or r9b, al
mov al, r11b
xor al, 0xff
mov cl, sil
xor cl, 0xff
mov r10b, bl
xor r10b, 0
mov bpl, al
and bpl, 0
and r11b, r10b
mov r14b, cl
and r14b, 0
and sil, r10b
or bpl, r11b
or r14b, sil
xor bpl, r14b
or al, cl
xor al, 0xff
or r10b, 0
and al, r10b
or bpl, al
mov al, bpl
xor al, 0xff
and al, 0
mov cl, bl
xor cl, 0
and bpl, cl
xor bl, 1
and bl, 0
and cl, 1
or al, bpl
or bl, cl
xor al, bl
mov cl, dil
and cl, 0
xor dil, 0
or cl, dil
xor cl, 0xff
mov r10b, al
xor r10b, cl
and r10b, al
mov al, r9b
and al, r10b
xor r9b, r10b
or al, r9b
test al, 1
jne 0x2fc4caf27
jmp 0x2fc4cb0ec
mov rax, qword [rsp + 0x70]
mov ecx, dword [0x2fc4f4174]
mov edx, dword [0x2fc4f4180]
mov r8d, ecx
add r8d, 0x18942c70
add r8d, 0xb98288f1
sub r8d, 0x18942c70
add r8d, 0x7d27aa63
sub r8d, 1
sub r8d, 0x7d27aa63
add r8d, 0xc6f697dc
sub r8d, 0xb98288f1
sub r8d, 0xc6f697dc
imul ecx, r8d
and ecx, 1
cmp ecx, 0
sete r9b
cmp edx, 0xa
setl r10b
mov r11b, r10b
xor r11b, 0xff
mov bl, r9b
xor bl, r11b
and bl, r9b
mov r11b, r9b
xor r11b, 0xff
mov sil, r10b
and sil, r11b
xor r10b, 0xff
and r9b, r10b
or sil, r9b
mov r9b, bl
xor r9b, 0xff
mov r10b, sil
xor r10b, 0xff
mov r11b, 1
xor r11b, 1
mov dil, r9b
and dil, 0xff
and bl, r11b
mov bpl, r10b
and bpl, 0xff
and sil, r11b
or dil, bl
or bpl, sil
xor dil, bpl
or r9b, r10b
xor r9b, 0xff
or r11b, 1
and r9b, r11b
or dil, r9b
test dil, 1
mov qword [rsp + 0x28], rax
jne 0x2fc4cb00a
jmp 0x2fc4cb0ec
xor eax, eax
mov ecx, dword [0x2fc4f4174]
mov edx, dword [0x2fc4f4180]
mov r8d, 0x5f0b844d
add r8d, 0
sub r8d, 1
sub r8d, 0x5f0b844d
sub eax, r8d
mov r8d, ecx
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
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 0x2fc4cb0b2
jmp 0x2fc4cb0cb
mov rax, qword [rsp + 0x28]
add rsp, 0x88
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
jmp 0x2fc4cacf5
jmp 0x2fc4ca694
mov rax, qword [rsp + 0x50]
mov rax, qword [rax]
mov qword [rsp + 0x50], rax
jmp 0x2fc4ca8b4
jmp 0x2fc4cab7f
jmp 0x2fc4caf27