Function at 0x6d7c7ec0
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 0x6d7c8831
xor eax, eax
mov ecx, dword [sym.out.dll_x.7]
mov edx, dword [sym.out.dll_y.8]
mov r8d, eax
sub r8d, 0xa6caa370
mov r9d, ecx
add r9d, r8d
add r9d, 0xe8d50081
sub r9d, 1
sub r9d, 0xe8d50081
mov r8d, eax
sub r8d, r9d
mov r9d, eax
sub r9d, 0xa6caa370
add r8d, r9d
sub eax, r8d
imul ecx, eax
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, 0
or bl, sil
or bpl, 0
xor bl, 0xff
and bl, bpl
mov sil, r10b
xor sil, 0xff
and sil, 0
xor dil, 0
and r10b, dil
mov bpl, r11b
xor bpl, 0xff
and bpl, 0
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 0x6d7c7ff3
jmp 0x6d7c8c69
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.out.dll_StrLen
mov rcx, qword [rsp + 0x40]
mov rdx, qword [rsp + 0x38]
mov r8, rax
call sym.out.dll_W2Anicmp
xor r9d, r9d
cmp eax, 0
sete r10b
mov eax, dword [sym.out.dll_x.7]
mov r11d, dword [sym.out.dll_y.8]
mov esi, eax
sub esi, 0x21cd1b8a
sub esi, 0xa80d0588
add esi, 0x21cd1b8a
mov edi, r9d
sub edi, 1
add esi, edi
sub r9d, 0xa80d0588
sub esi, r9d
imul eax, esi
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, 1
mov r13b, r15b
xor r13b, 1
and r13b, 0
or r12b, r13b
mov r13b, r15b
xor r13b, 0
mov cl, r14b
xor cl, r13b
and cl, r14b
xor bl, 0xff
mov r13b, r12b
xor r13b, 0xff
mov dl, r15b
xor dl, 0
or bl, r13b
or dl, 0
xor bl, 0xff
and bl, dl
mov dl, al
xor dl, 0xff
mov r13b, r15b
xor r13b, 0
mov r8b, r15b
xor r8b, 1
or dl, r13b
or r8b, 1
xor dl, 0xff
and dl, r8b
mov r8b, r12b
xor r8b, 0xff
mov r13b, bpl
xor r13b, r8b
and r13b, bpl
mov r8b, cl
xor r8b, 0xff
mov bpl, bl
xor bpl, 0xff
mov r9b, r15b
xor r9b, 1
mov r11b, r8b
and r11b, 0xff
and cl, r9b
mov sil, bpl
and sil, 0xff
and bl, r9b
or r11b, cl
or sil, bl
xor r11b, sil
or r8b, bpl
xor r8b, 0xff
or r9b, 1
and r8b, r9b
or r11b, r8b
mov cl, dl
and cl, r13b
xor dl, r13b
or cl, dl
mov dl, r11b
xor dl, 0xff
mov r8b, cl
and r8b, dl
xor cl, 0xff
and r11b, cl
or r8b, r11b
mov cl, r14b
and cl, al
xor r14b, al
or cl, r14b
mov al, cl
xor al, 0xff
and al, 1
mov dl, r15b
xor dl, 1
and cl, dl
mov r9b, r15b
xor r9b, 1
and r9b, 0xff
and dl, 1
or al, cl
or r9b, dl
xor al, r9b
mov cl, r12b
and cl, 0
xor r12b, 0
or cl, r12b
xor cl, 0xff
mov dl, al
xor dl, cl
and dl, al
mov al, r8b
xor al, 0xff
mov cl, dl
xor cl, 0xff
xor r15b, 1
mov r9b, al
and r9b, 0xff
and r8b, r15b
mov r11b, cl
and r11b, 0xff
and dl, r15b
or r9b, r8b
or r11b, dl
xor r9b, r11b
or al, cl
xor al, 0xff
or r15b, 1
and al, r15b
or r9b, al
test r9b, 1
mov byte [rsp + 0x37], r10b
jne 0x6d7c8233
jmp 0x6d7c8c69
mov al, byte [rsp + 0x37]
test al, 1
jne 0x6d7c8244
jmp 0x6d7c8532
xor eax, eax
mov ecx, dword [sym.out.dll_x.7]
mov edx, dword [sym.out.dll_y.8]
mov r8d, eax
sub r8d, ecx
mov r9d, eax
sub r9d, 0x31515348
add r8d, r9d
sub eax, r8d
add eax, 0x26779662
sub eax, 1
sub eax, 0x26779662
sub eax, 0x1ce9859f
sub eax, 0x31515348
add eax, 0x1ce9859f
imul ecx, eax
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 0x6d7c82d8
jmp 0x6d7c8caf
xor eax, eax
mov rcx, qword [rsp + 0x48]
mov rcx, qword [rcx + 0x30]
mov qword [rsp + 0x70], rcx
mov edx, dword [sym.out.dll_x.7]
mov r8d, dword [sym.out.dll_y.8]
mov r9d, eax
sub r9d, edx
mov r10d, eax
sub r10d, 0xfee00cb9
add r9d, r10d
sub eax, r9d
sub eax, 0xd1a7995f
sub eax, 1
add eax, 0xd1a7995f
sub eax, 0xa55fd7f7
sub eax, 0xfee00cb9
add eax, 0xa55fd7f7
imul edx, eax
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
or sil, r14b
mov bpl, bl
xor bpl, 0xff
and bpl, 0
mov r14b, dil
xor r14b, 0
mov r15b, bl
and r15b, r14b
mov r12b, dil
xor r12b, 1
and r12b, 0
and r14b, 1
or bpl, r15b
or r12b, r14b
xor bpl, r12b
mov r14b, dil
xor r14b, 0
and r14b, 1
mov r15b, dil
xor r15b, 1
and r15b, 0
or r14b, r15b
mov r15b, sil
xor r15b, 0xff
mov r12b, dil
xor r12b, 0
mov r13b, dil
xor r13b, 0
or r15b, r12b
or r13b, 0
xor r15b, 0xff
and r15b, r13b
xor r11b, 0xff
mov r12b, r14b
xor r12b, 0xff
mov r13b, dil
xor r13b, 1
or r11b, r12b
or r13b, 1
xor r11b, 0xff
and r11b, r13b
mov r12b, dil
xor r12b, 0
mov r13b, bpl
xor r13b, r12b
and r13b, bpl
xor bl, 0xff
mov r12b, r14b
xor r12b, 0xff
mov al, dil
xor al, 0
or bl, r12b
or al, 0
xor bl, 0xff
and bl, al
mov al, r15b
and al, r11b
xor r15b, r11b
or al, r15b
mov r11b, r13b
and r11b, bl
xor r13b, bl
or r11b, r13b
mov bl, al
xor bl, 0xff
and bl, 1
mov r15b, dil
xor r15b, 1
and al, r15b
mov r12b, r11b
xor r12b, 0xff
and r12b, 0xff
and r11b, r15b
or bl, al
or r12b, r11b
xor bl, r12b
mov al, sil
xor al, 0xff
mov r11b, bpl
xor r11b, 0xff
mov r15b, dil
xor r15b, 0
mov r12b, al
and r12b, 0
and sil, r15b
mov r13b, r11b
and r13b, 0
and bpl, r15b
or r12b, sil
or r13b, bpl
xor r12b, r13b
or al, r11b
xor al, 0xff
or r15b, 0
and al, r15b
or r12b, al
mov al, r12b
xor al, 0xff
and al, 0
mov r11b, dil
xor r11b, 0
and r12b, r11b
mov sil, dil
xor sil, 1
and sil, 0
and r11b, 1
or al, r12b
or sil, r11b
xor al, sil
mov r11b, dil
xor r11b, 0
mov sil, r14b
xor sil, 0xff
mov bpl, dil
xor bpl, 0
mov r15b, r11b
and r15b, 0
mov r12b, bpl
and r12b, 0
mov r13b, sil
and r13b, 0
and r14b, bpl
or r15b, r12b
or r13b, r14b
xor r15b, r13b
or r11b, sil
xor r11b, 0xff
or bpl, 0
and r11b, bpl
or r15b, r11b
xor al, 0xff
xor r15b, 0xff
xor dil, 0
or al, r15b
or dil, 0
xor al, 0xff
and al, dil
mov r11b, bl
and r11b, al
xor bl, al
or r11b, bl
test r11b, 1
jne 0x6d7c852d
jmp 0x6d7c8caf
jmp 0x6d7c8c50
xor eax, eax
mov ecx, dword [sym.out.dll_x.7]
mov edx, dword [sym.out.dll_y.8]
mov r8d, eax
sub r8d, 0x92c5495e
mov r9d, ecx
sub r9d, r8d
sub eax, 1
add r9d, eax
add r9d, 0x12da8602
sub r9d, 0x92c5495e
sub r9d, 0x12da8602
imul ecx, r9d
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, 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, 1
and bpl, 1
mov r14b, sil
xor r14b, 1
and r14b, 1
or bpl, r14b
mov r14b, bl
xor r14b, 0xff
mov r15b, sil
xor r15b, 1
mov r12b, sil
xor r12b, 1
or r14b, r15b
or r12b, 1
xor r14b, 0xff
and r14b, r12b
xor r10b, 0xff
mov r15b, bpl
xor r15b, 0xff
mov r12b, sil
xor r12b, 1
or r10b, r15b
or r12b, 1
xor r10b, 0xff
and r10b, r12b
mov r15b, sil
xor r15b, 1
mov r12b, dil
xor r12b, r15b
and r12b, dil
xor r11b, 0xff
mov r15b, bpl
xor r15b, 0xff
mov r13b, sil
xor r13b, 0
or r11b, r15b
or r13b, 0
xor r11b, 0xff
and r11b, r13b
mov r15b, r14b
and r15b, r10b
xor r14b, r10b
or r15b, r14b
mov r10b, r12b
xor r10b, 0xff
mov r14b, r11b
xor r14b, 0xff
mov r13b, sil
xor r13b, 0
mov al, r10b
and al, 0
and r12b, r13b
mov cl, r14b
and cl, 0
and r11b, r13b
or al, r12b
or cl, r11b
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 r10b, al
and r10b, cl
xor al, 0xff
and r15b, al
or r10b, r15b
mov al, bl
xor al, 0xff
mov cl, dil
xor cl, 0xff
mov r11b, sil
xor r11b, 1
mov r14b, al
and r14b, 0xff
and bl, r11b
mov r15b, cl
and r15b, 0xff
and dil, r11b
or r14b, bl
or r15b, dil
xor r14b, r15b
or al, cl
xor al, 0xff
or r11b, 1
and al, r11b
or r14b, al
mov al, r14b
xor al, 0xff
and al, 1
mov cl, sil
xor cl, 1
and r14b, cl
or al, r14b
mov cl, bpl
and cl, 1
xor bpl, 1
or cl, bpl
xor al, 0xff
xor cl, 0xff
mov r11b, sil
xor r11b, 0
or al, cl
or r11b, 0
xor al, 0xff
and al, r11b
mov cl, r10b
xor cl, 0xff
mov r11b, al
xor r11b, 0xff
xor sil, 1
mov bl, cl
and bl, 0xff
and r10b, sil
mov dil, r11b
and dil, 0xff
and al, sil
or bl, r10b
or dil, al
xor bl, dil
or cl, r11b
xor cl, 0xff
or sil, 1
and cl, sil
or bl, cl
test bl, 1
jne 0x6d7c8773
jmp 0x6d7c8cc2
xor eax, eax
mov rcx, qword [rsp + 0x50]
mov rcx, qword [rcx]
mov qword [rsp + 0x50], rcx
mov edx, dword [sym.out.dll_x.7]
mov r8d, dword [sym.out.dll_y.8]
mov r9d, eax
sub r9d, edx
mov r10d, eax
sub r10d, 0xc748b985
add r9d, r10d
sub eax, r9d
sub eax, 0xaebee8a3
sub eax, 1
add eax, 0xaebee8a3
add eax, 0xcdda6f11
sub eax, 0xc748b985
sub eax, 0xcdda6f11
imul edx, eax
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
and sil, 1
mov bpl, 1
xor bpl, 1
and r11b, bpl
mov r14b, bl
xor r14b, 0xff
and r14b, 0xff
and bl, bpl
or sil, r11b
or r14b, bl
xor sil, r14b
mov r11b, dil
and r11b, sil
xor dil, sil
or r11b, dil
test r11b, 1
jne 0x6d7c882c
jmp 0x6d7c8cc2
jmp 0x6d7c7f21
xor eax, eax
mov ecx, dword [sym.out.dll_x.7]
mov edx, dword [sym.out.dll_y.8]
mov r8d, eax
sub r8d, ecx
mov r9d, eax
sub r9d, 0xcbcc85a5
add r8d, r9d
mov r9d, eax
sub r9d, r8d
sub eax, 1
add r9d, eax
sub r9d, 0xf5efe504
sub r9d, 0xcbcc85a5
add r9d, 0xf5efe504
imul ecx, r9d
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
or dil, r14b
mov bpl, sil
xor bpl, 0
and bpl, 1
mov r14b, sil
xor r14b, 1
and r14b, 0
or bpl, r14b
mov r14b, sil
xor r14b, 0
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, 0
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
and r11b, r12b
xor r15b, r12b
or r11b, r15b
mov r14b, r10b
and r14b, r13b
xor r10b, r13b
or r14b, r10b
mov r10b, r11b
xor r10b, 0xff
and r10b, 1
mov r15b, sil
xor r15b, 1
and r11b, r15b
mov r12b, r14b
xor r12b, 0xff
and r12b, 0xff
and r14b, r15b
or r10b, r11b
or r12b, r14b
xor r10b, r12b
mov r11b, bl
xor r11b, 0xff
mov r14b, dil
xor r14b, 0xff
mov r15b, sil
xor r15b, 0
mov r12b, r11b
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 r11b, r14b
xor r11b, 0xff
or r15b, 0
and r11b, r15b
or r12b, r11b
mov r11b, r12b
xor r11b, 0xff
and r11b, 1
mov bl, sil
xor bl, 1
and r12b, bl
or r11b, r12b
mov bl, bpl
and bl, 0
xor bpl, 0
or bl, bpl
xor bl, 0xff
mov dil, r11b
xor dil, bl
and dil, r11b
mov r11b, r10b
xor r11b, 0xff
mov bl, dil
xor bl, 0xff
xor sil, 0
mov bpl, r11b
and bpl, 0
and r10b, sil
mov r14b, bl
and r14b, 0
and dil, sil
or bpl, r10b
or r14b, dil
xor bpl, r14b
or r11b, bl
xor r11b, 0xff
or sil, 0
and r11b, sil
or bpl, r11b
test bpl, 1
jne 0x6d7c8a30
jmp 0x6d7c8cd4
xor eax, eax
mov qword [rsp + 0x70], 0
mov ecx, dword [sym.out.dll_x.7]
mov edx, dword [sym.out.dll_y.8]
mov r8d, eax
sub r8d, 0x82ca3197
mov r9d, ecx
sub r9d, r8d
sub eax, 1
add r9d, eax
add r9d, 0x7dfc9c76
sub r9d, 0x82ca3197
sub r9d, 0x7dfc9c76
imul ecx, r9d
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
or dil, r14b
mov bpl, sil
xor bpl, 0
and bpl, 1
mov r14b, sil
xor r14b, 1
mov r15b, r14b
and r15b, 0
mov r12b, sil
xor r12b, 1
and r12b, 0xff
and r14b, 1
or bpl, r15b
or r12b, r14b
xor bpl, r12b
mov r14b, sil
xor r14b, 0
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, 0
mov r14b, dil
xor r14b, r10b
and r14b, dil
mov r10b, bpl
xor r10b, 0xff
mov r13b, r11b
xor r13b, r10b
and r13b, r11b
mov r10b, r15b
and r10b, r12b
xor r15b, r12b
or r10b, r15b
mov r11b, r14b
and r11b, r13b
xor r14b, r13b
or r11b, r14b
mov r14b, r10b
xor r14b, 0xff
and r14b, 1
mov r15b, sil
xor r15b, 1
and r10b, r15b
mov r12b, r11b
xor r12b, 0xff
and r12b, 0xff
and r11b, r15b
or r14b, r10b
or r12b, r11b
xor r14b, r12b
mov r10b, bl
xor r10b, 0xff
mov r11b, dil
xor r11b, 0xff
mov r15b, sil
xor r15b, 1
mov r12b, r10b
and r12b, 0xff
and bl, r15b
mov r13b, r11b
and r13b, 0xff
and dil, r15b
or r12b, bl
or r13b, dil
xor r12b, r13b
or r10b, r11b
xor r10b, 0xff
or r15b, 1
and r10b, r15b
or r12b, r10b
mov r10b, r12b
xor r10b, 0xff
and r10b, 0
mov r11b, sil
xor r11b, 0
and r12b, r11b
mov bl, sil
xor bl, 1
and bl, 0
and r11b, 1
or r10b, r12b
or bl, r11b
xor r10b, bl
mov r11b, bpl
and r11b, 0
xor bpl, 0
or r11b, bpl
xor r11b, 0xff
mov bl, r10b
xor bl, r11b
and bl, r10b
mov r10b, r14b
xor r10b, 0xff
mov r11b, bl
xor r11b, 0xff
xor sil, 1
mov dil, r10b
and dil, 0xff
and r14b, sil
mov bpl, r11b
and bpl, 0xff
and bl, sil
or dil, r14b
or bpl, bl
xor dil, bpl
or r10b, r11b
xor r10b, 0xff
or sil, 1
and r10b, sil
or dil, r10b
test dil, 1
jne 0x6d7c8c4b
jmp 0x6d7c8cd4
jmp 0x6d7c8c50
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 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.out.dll_StrLen
mov rcx, qword [rsp + 0x28]
mov rdx, qword [rsp + 0x20]
mov r8, rax
call sym.out.dll_W2Anicmp
jmp 0x6d7c7ff3
mov rax, qword [rsp + 0x48]
mov rax, qword [rax + 0x30]
mov qword [rsp + 0x70], rax
jmp 0x6d7c82d8
mov rax, qword [rsp + 0x50]
mov rax, qword [rax]
mov qword [rsp + 0x50], rax
jmp 0x6d7c8773
mov qword [rsp + 0x70], 0
jmp 0x6d7c8a30