Function at 0x6d7c63c0
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 eax, dword [sym.out.dll_x.7]
mov ecx, dword [sym.out.dll_y.8]
mov edx, eax
sub edx, 0x953974a8
add edx, 0x8e19cb3d
add edx, 0x953974a8
sub edx, 0xf357967b
sub edx, 1
add edx, 0xf357967b
add edx, 0xe6a0e59b
sub edx, 0x8e19cb3d
sub edx, 0xe6a0e59b
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
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, 1
mov r11b, r8b
and r11b, 0xff
and r10b, bl
mov dil, r9b
and dil, 0xff
and sil, bl
or r11b, r10b
or dil, sil
xor r11b, dil
or r8b, r9b
xor r8b, 0xff
or bl, 1
and r8b, bl
or r11b, r8b
test r11b, 1
jne 0x6d7c64ff
jmp 0x6d7c6af4
mov rax, qword [rsp + 0x50]
cmp rax, qword [rsp + 0x58]
setne cl
mov edx, dword [sym.out.dll_x.7]
mov r8d, dword [sym.out.dll_y.8]
mov r9d, edx
add r9d, 0x58700bb9
add r9d, 0x5f74dc39
sub r9d, 0x58700bb9
sub r9d, 0xcdd2e076
sub r9d, 1
add r9d, 0xcdd2e076
sub r9d, 0x73a43764
sub r9d, 0x5f74dc39
add r9d, 0x73a43764
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
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
mov byte [rsp + 0x47], cl
jne 0x6d7c65e6
jmp 0x6d7c6af4
mov al, byte [rsp + 0x47]
test al, 1
jne 0x6d7c65f7
jmp 0x6d7c67b2
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.out.dll_StrLen
mov rcx, qword [rsp + 0x38]
mov rdx, qword [rsp + 0x30]
mov r8, rax
call sym.out.dll_W2Anicmp
cmp eax, 0
jne 0x6d7c67a0
xor eax, eax
mov ecx, dword [sym.out.dll_x.7]
mov edx, dword [sym.out.dll_y.8]
sub eax, 1
add eax, 0
mov r8d, ecx
sub r8d, 0x2a2cb70f
add r8d, eax
add r8d, 0x2a2cb70f
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 0x6d7c66c0
jmp 0x6d7c6af9
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, 0x8b0789bf
add r9d, 0
sub r9d, 1
sub r9d, 0x8b0789bf
sub eax, r9d
mov r9d, edx
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
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
mov bpl, r11b
and bpl, sil
xor r11b, 0xff
and r10b, r11b
or bpl, r10b
mov r10b, bl
xor r10b, 0xff
mov r11b, bpl
xor r11b, 0xff
xor dil, 0
mov sil, r10b
and sil, 0
and bl, dil
mov r14b, r11b
and r14b, 0
and bpl, dil
or sil, bl
or r14b, bpl
xor sil, r14b
or r10b, r11b
xor r10b, 0xff
or dil, 0
and r10b, dil
or sil, r10b
test sil, 1
jne 0x6d7c679b
jmp 0x6d7c6af9
jmp 0x6d7c67bb
mov rax, qword [rsp + 0x50]
mov rax, qword [rax]
mov qword [rsp + 0x50], rax
jmp 0x6d7c6421
mov qword [rsp + 0x70], 0
xor eax, eax
mov ecx, dword [sym.out.dll_x.7]
mov edx, dword [sym.out.dll_y.8]
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
and sil, 0
mov dil, 1
mov bpl, dil
xor bpl, 0
mov r14b, r11b
and r14b, bpl
mov r15b, dil
xor r15b, 1
and r15b, 0
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
or bpl, r15b
mov r14b, dil
xor r14b, 0
and r14b, 0
mov r15b, dil
xor r15b, 0
mov r12b, r15b
and r12b, 0
mov r13b, dil
xor r13b, 1
and r13b, 0
and r15b, 1
or r14b, r12b
or r13b, r15b
xor r14b, r13b
mov r15b, sil
xor r15b, 0xff
mov r12b, dil
xor r12b, 0
mov r13b, dil
xor r13b, 1
or r15b, r12b
or r13b, 1
xor r15b, 0xff
and r15b, r13b
xor r11b, 0xff
mov r12b, r14b
xor r12b, 0xff
mov r13b, dil
xor r13b, 0
or r11b, r12b
or r13b, 0
xor r11b, 0xff
and r11b, r13b
mov r12b, bpl
xor r12b, 0xff
mov r13b, dil
xor r13b, 0
mov al, dil
xor al, 0
or r12b, r13b
or al, 0
xor r12b, 0xff
and r12b, al
mov al, r14b
xor al, 0xff
mov r13b, bl
xor r13b, al
and r13b, bl
mov al, r15b
and al, r11b
xor r15b, r11b
or al, r15b
mov r11b, r12b
xor r11b, 0xff
mov bl, r13b
xor bl, 0xff
mov r15b, dil
xor r15b, 1
mov cl, r11b
and cl, 0xff
and r12b, r15b
mov dl, bl
and dl, 0xff
and r13b, r15b
or cl, r12b
or dl, r13b
xor cl, dl
or r11b, bl
xor r11b, 0xff
or r15b, 1
and r11b, r15b
or cl, r11b
mov dl, al
xor dl, 0xff
and dl, 0
mov r11b, dil
xor r11b, 0
and al, r11b
mov bl, cl
xor bl, 0xff
and bl, 0
and cl, r11b
or dl, al
or bl, cl
xor dl, bl
mov al, sil
xor al, 0xff
mov cl, bpl
xor cl, 0xff
mov r11b, dil
xor r11b, 0
mov bl, al
and bl, 0
and sil, r11b
mov r15b, cl
and r15b, 0
and bpl, r11b
or bl, sil
or r15b, bpl
xor bl, r15b
or al, cl
xor al, 0xff
or r11b, 0
and al, r11b
or bl, al
mov al, bl
xor al, 0xff
and al, 0
mov cl, dil
xor cl, 0
and bl, cl
mov r11b, dil
xor r11b, 1
and r11b, 0
and cl, 1
or al, bl
or r11b, cl
xor al, r11b
mov cl, dil
xor cl, 0
mov r11b, r14b
xor r11b, 0xff
mov bl, dil
xor bl, 0
mov sil, cl
and sil, 0
mov bpl, bl
and bpl, 0
mov r15b, r11b
and r15b, 0
and r14b, bl
or sil, bpl
or r15b, r14b
xor sil, r15b
or cl, r11b
xor cl, 0xff
or bl, 0
and cl, bl
or sil, cl
xor sil, 0xff
mov cl, al
xor cl, sil
and cl, al
mov al, dl
xor al, 0xff
mov r11b, cl
xor r11b, 0xff
xor dil, 0
mov bl, al
and bl, 0
and dl, dil
mov sil, r11b
and sil, 0
and cl, dil
or bl, dl
or sil, cl
xor bl, sil
or al, r11b
xor al, 0xff
or dil, 0
and al, dil
or bl, al
test bl, 1
jne 0x6d7c6a45
jmp 0x6d7c6b0c
xor eax, eax
mov rcx, qword [rsp + 0x70]
mov edx, dword [sym.out.dll_x.7]
mov r8d, dword [sym.out.dll_y.8]
mov r9d, eax
sub r9d, 1
add r9d, 0
sub eax, r9d
mov r9d, edx
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
mov sil, r11b
xor sil, 0xff
mov dil, 1
xor dil, 1
or bl, sil
or dil, 1
xor bl, 0xff
and bl, dil
mov sil, r10b
xor sil, 0xff
mov dil, r11b
and dil, sil
xor r11b, 0xff
and r10b, r11b
or dil, r10b
mov r10b, bl
and r10b, dil
xor bl, dil
or r10b, bl
test r10b, 1
mov qword [rsp + 0x28], rcx
jne 0x6d7c6adb
jmp 0x6d7c6b0c
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 0x6d7c64ff
mov rax, qword [rsp + 0x48]
mov rax, qword [rax + 0x30]
mov qword [rsp + 0x70], rax
jmp 0x6d7c66c0
jmp 0x6d7c6a45