Function at 0x180053bc0
Capabilities:
Resolve function by parsing pe exports

Disassembly:
mov dword [rsp + 0x20], r9d
mov qword [rsp + 0x18], r8
mov qword [rsp + 0x10], rdx
mov qword [rsp + 8], rcx
push rdi
sub rsp, 0x70
mov dword [rsp + 0x40], SafeArrayGetElement
call qword [sym.imp.USER32.dll_GetDesktopWindow]
mov ecx, dword [rsp + 0x40]
movsxd rcx, ecx
lea rdx, [0x18009af80]
mov dword [rdx + rcx*4], eax
mov dword [rsp + 0x28], 1
mov eax, 4
imul rax, rax, 2
lea rcx, [0x18009af80]
mov eax, dword [rcx + rax]
xor eax, 0xfffff207
mov ecx, 4
imul rcx, rcx, 2
lea rdx, [0x18009af80]
mov dword [rdx + rcx], eax
xor eax, eax
mov word [rsp + 0x48], ax
lea rax, [rsp + 0x4a]
mov rdi, rax
xor eax, eax
mov ecx, 0x1c
rep stosb byte [rdi], al
mov r8d, 0x20
xor edx, edx
mov rcx, qword [rsp + 0x80]
call fcn.18005afd0
mov dword [rsp + 0x34], 0
jmp 0x180053c6c
mov eax, dword [rsp + 0x34]
inc eax
mov dword [rsp + 0x34], eax
mov eax, dword [rsp + 0x98]
cmp dword [rsp + 0x34], eax
jge 0x180053cba
movsxd rax, dword [rsp + 0x34]
mov rcx, qword [rsp + 0x90]
movsx rax, word [rcx + rax*2]
mov rcx, qword [rsp + 0x80]
movzx eax, word [rcx + rax*2]
inc ax
movsxd rcx, dword [rsp + 0x34]
mov rdx, qword [rsp + 0x90]
movsx rcx, word [rdx + rcx*2]
mov rdx, qword [rsp + 0x80]
mov word [rdx + rcx*2], ax
jmp 0x180053c62
mov eax, 2
imul rax, rax, 0
mov rcx, qword [rsp + 0x80]
movsx eax, word [rcx + rax]
cmp eax, dword [rsp + 0x98]
jne 0x180053cdf
xor eax, eax
jmp 0x180053ef1
mov dword [rsp + 0x38], 1
jmp 0x180053cf3
mov eax, dword [rsp + 0x38]
inc eax
mov dword [rsp + 0x38], eax
cmp dword [rsp + 0x38], 0xf
jg 0x180053d75
mov eax, 1
mov word [rsp + 0x24], ax
movsx rax, word [rsp + 0x24]
lea rcx, [0x18009af80]
cmp dword [rcx + rax*4], 1
jne 0x180053d39
movsx rax, word [rsp + 0x24]
lea rcx, [0x18009af80]
mov eax, dword [rcx + rax*4]
inc eax
movsx rcx, word [rsp + 0x24]
lea rdx, [0x18009af80]
mov dword [rdx + rcx*4], eax
mov eax, dword [rsp + 0x28]
shl eax, 1
mov dword [rsp + 0x28], eax
movsxd rax, dword [rsp + 0x38]
mov rcx, qword [rsp + 0x80]
movsx eax, word [rcx + rax*2]
mov ecx, dword [rsp + 0x28]
sub ecx, eax
mov eax, ecx
mov dword [rsp + 0x28], eax
cmp dword [rsp + 0x28], 0
jge 0x180053d70
mov eax, dword [rsp + 0x28]
jmp 0x180053ef1
jmp 0x180053ce9
mov dword [rsp + 0x30], 1
jmp 0x180053d89
mov eax, dword [rsp + 0x30]
inc eax
mov dword [rsp + 0x30], eax
cmp dword [rsp + 0x30], 0xf
jge 0x180053dbc
mov eax, dword [rsp + 0x30]
dec eax
cdqe
movsx eax, word [rsp + rax*2 + 0x48]
movsxd rcx, dword [rsp + 0x30]
mov rdx, qword [rsp + 0x80]
movsx ecx, word [rdx + rcx*2]
add eax, ecx
movsxd rcx, dword [rsp + 0x30]
mov word [rsp + rcx*2 + 0x48], ax
jmp 0x180053d7f
mov dword [rsp + 0x3c], 0
mov eax, dword [rsp + 0x3c]
cmp eax, 0xd9e701
jne 0x180053de7
lea r8, str.Local56428741672351888162816441678403681230424920001353172380x
xor edx, edx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_OpenMutexA]
mov qword [rsp + 0x68], rax
jmp 0x180053e0f
mov eax, 4
imul rax, rax, 0xb
lea rcx, [0x18009af80]
mov eax, dword [rcx + rax]
inc eax
mov ecx, 4
imul rcx, rcx, 0xb
lea rdx, [0x18009af80]
mov dword [rdx + rcx], eax
mov dword [rsp + 0x20], 0
jmp 0x180053e23
mov eax, dword [rsp + 0x20]
inc eax
mov dword [rsp + 0x20], eax
mov eax, dword [rsp + 0x98]
cmp dword [rsp + 0x20], eax
jge 0x180053eae
movsxd rax, dword [rsp + 0x20]
mov rcx, qword [rsp + 0x90]
movsx eax, word [rcx + rax*2]
test eax, eax
je 0x180053ea9
movsxd rax, dword [rsp + 0x20]
mov rcx, qword [rsp + 0x90]
movsx eax, word [rcx + rax*2]
dec eax
cdqe
movsx rax, word [rsp + rax*2 + 0x48]
mov rcx, qword [rsp + 0x88]
movzx edx, word [rsp + 0x20]
mov word [rcx + rax*2], dx
movsxd rax, dword [rsp + 0x20]
mov rcx, qword [rsp + 0x90]
movsx eax, word [rcx + rax*2]
dec eax
cdqe
movzx eax, word [rsp + rax*2 + 0x48]
inc ax
movsxd rcx, dword [rsp + 0x20]
mov rdx, qword [rsp + 0x90]
movsx ecx, word [rdx + rcx*2]
dec ecx
movsxd rcx, ecx
mov word [rsp + rcx*2 + 0x48], ax
jmp 0x180053e19
mov eax, 5
mov word [rsp + 0x2c], ax
movsx rax, word [rsp + 0x2c]
lea rcx, [0x18009af80]
cmp dword [rcx + rax*4], 1
jne 0x180053eed
movsx rax, word [rsp + 0x2c]
lea rcx, [0x18009af80]
mov eax, dword [rcx + rax*4]
inc eax
movsx rcx, word [rsp + 0x2c]
lea rdx, [0x18009af80]
mov dword [rdx + rcx*4], eax
mov eax, dword [rsp + 0x28]
add rsp, 0x70
pop rdi
ret