Function at 0x100878d0
Capabilities:
Contain obfuscated stackstrings

Disassembly:
sub esp, 0x24
mov eax, dword [0x101a53c4]
xor eax, esp
mov dword [esp + 0x20], eax
push esi
mov esi, dword [esp + 0x30]
push edi
mov edi, dword [sym.imp.USER32.dll_IsWindow]
push esi
call edi
test eax, eax
jne 0x10087902
pop edi
pop esi
mov ecx, dword [esp + 0x20]
xor ecx, esp
call fcn.100f5016
add esp, 0x24
ret
mov eax, dword [esp + 0x38]
push ebx
xor ebx, ebx
cmp eax, ebx
jne 0x10087928
push esi
call edi
neg eax
pop ebx
sbb eax, eax
pop edi
neg eax
pop esi
mov ecx, dword [esp + 0x20]
xor ecx, esp
call fcn.100f5016
add esp, 0x24
ret
cmp eax, 1
jne 0x10087957
mov eax, dword [esp + 0x34]
push eax
call fcn.100873d0
add esp, 4
mov ecx, ecx
xor ecx, ecx
cmp eax, esi
sete cl
pop ebx
pop edi
pop esi
mov eax, ecx
mov ecx, dword [esp + 0x20]
xor ecx, esp
call fcn.100f5016
add esp, 0x24
ret
cmp eax, 2
jne 0x1008797b
push esi
call dword [sym.imp.USER32.dll_IsWindowVisible]
neg eax
pop ebx
sbb eax, eax
pop edi
neg eax
pop esi
mov ecx, dword [esp + 0x20]
xor ecx, esp
call fcn.100f5016
add esp, 0x24
ret
cmp eax, 3
jne 0x1008799f
push esi
call dword [sym.imp.USER32.dll_IsIconic]
neg eax
pop ebx
sbb eax, eax
pop edi
neg eax
pop esi
mov ecx, dword [esp + 0x20]
xor ecx, esp
call fcn.100f5016
add esp, 0x24
ret
cmp eax, 4
jne 0x100879c3
push esi
call dword [sym.imp.USER32.dll_IsZoomed]
neg eax
pop ebx
sbb eax, eax
pop edi
neg eax
pop esi
mov ecx, dword [esp + 0x20]
xor ecx, esp
call fcn.100f5016
add esp, 0x24
ret
cmp eax, 5
jne 0x100879ee
push 0xffffffffffffffec
push esi
call dword [sym.imp.USER32.dll_GetWindowLongA]
mov bl, bl
movzx eax, al
pop ebx
shr eax, 3
pop edi
and eax, 1
pop esi
mov ecx, dword [esp + 0x20]
xor ecx, esp
call fcn.100f5016
add esp, 0x24
ret
cmp eax, 6
jne 0x10087a30
mov ebx, ebx
mov dword [esp + 0xc], ebx
push edx
pop edx
lea edx, [esp + 0xc]
push edx
push 0x3e8
push 3
push ebx
push ebx
push ebx
push esi
call fcn.10052bc0
add esp, 0x1c
xchg ebx, eax
xchg ebx, eax
xor ecx, ecx
cmp eax, ebx
sete cl
pop ebx
pop edi
pop esi
mov eax, ecx
mov ecx, dword [esp + 0x20]
xor ecx, esp
call fcn.100f5016
add esp, 0x24
ret
cmp eax, 7
jne 0x10087a54
push esi
call dword [sym.imp.USER32.dll_IsWindowEnabled]
neg eax
pop ebx
sbb eax, eax
pop edi
neg eax
pop esi
mov ecx, dword [esp + 0x20]
xor ecx, esp
call fcn.100f5016
add esp, 0x24
ret
cmp eax, 8
jne 0x10087b18
mov al, 0x70
mov cl, 0x6e
mov byte [esp + 0x23], al
mov byte [esp + 0x24], al
mov dl, 0x73
mov al, 0x64
mov byte [esp + 0x1c], 0x49
mov byte [esp + 0x1d], dl
mov byte [esp + 0x1e], 0x48
mov byte [esp + 0x1f], 0x75
mov byte [esp + 0x20], cl
mov byte [esp + 0x21], 0x67
mov byte [esp + 0x22], 0x41
mov byte [esp + 0x25], 0x57
mov byte [esp + 0x26], 0x69
mov byte [esp + 0x27], cl
mov byte [esp + 0x28], al
mov byte [esp + 0x29], 0x6f
mov byte [esp + 0x2a], 0x77
mov byte [esp + 0x2b], bl
push edx
pop edx
mov byte [esp + 0x17], al
mov al, 0x6c
mov byte [esp + 0x10], 0x55
mov byte [esp + 0x11], dl
mov byte [esp + 0x12], 0x65
mov byte [esp + 0x13], 0x72
mov byte [esp + 0x14], 0x33
mov byte [esp + 0x15], 0x32
mov byte [esp + 0x16], 0x2e
mov byte [esp + 0x18], al
mov byte [esp + 0x19], al
mov byte [esp + 0x1a], bl
mov edi, edi
lea edx, [esp + 0x1c]
push edx
lea eax, [esp + 0x14]
push eax
call dword [sym.imp.KERNEL32.DLL_GetModuleHandleA]
push eax
call dword [sym.imp.KERNEL32.DLL_GetProcAddress]
mov eax, eax
cmp eax, ebx
je 0x10087b52
push esi
call eax
pop ebx
pop edi
pop esi
mov ecx, dword [esp + 0x20]
xor ecx, esp
call fcn.100f5016
add esp, 0x24
ret
cmp eax, 9
jne 0x10087b52
mov dword [esp + 0xc], ebx
mov al, al
lea ecx, [esp + 0xc]
push ecx
push esi
call fcn.10052c10
add esp, 8
push ecx
pop ecx
mov edx, dword [esp + 0xc]
push edx
call fcn.10056a90
add esp, 4
pop ebx
pop edi
pop esi
mov ecx, dword [esp + 0x20]
xor ecx, esp
call fcn.100f5016
add esp, 0x24
ret
mov ecx, dword [esp + 0x2c]
pop ebx
pop edi
pop esi
xor ecx, esp
xor eax, eax
call fcn.100f5016
add esp, 0x24
ret