Function at 0x1002a633
Capabilities:
Create thread

Disassembly:
jae 0x1002a56d
jmp 0x1002a568
call fcn.1002a56f
jae 0x1002a568
add esp, 4
jmp 0x1002a574
dec dword [esp]
jno 0x1002a579
jns 0x1002a564
jp 0x1002a57d
add esp, 4
popf
jmp 0x1002a584
push eax
push edx
xor edx, 0x90
push edx
sub edx, 0x80
pop eax
add eax, edx
pop edx
pop eax
je 0x1002a59d
jne 0x1002a59d
call 0x1fc2d8f1
wait
rcl byte [edx + 0x33], 0xd0
push eax
xor eax, eax
setnp al
push edx
xor edx, eax
shl edx, 2
xchg edx, eax
pop edx
or eax, ecx
pop eax
xor eax, eax
test eax, eax
je 0x1002a5b7
jne 0x1002a5b6
call 0x9306963e
rol byte [ebx + eax*4], 0xf0
add eax, 0x3eb037c
invalid
xor eax, 3
add eax, 4
xor eax, 5
jl 0x1002a5c5
jmp 0x1002a5c7
je 0x1002a5c2
clc
jae 0x1002a5cc
mov esi, 0x750374c6
add esi, eax
je 0x1002a5d1
jne 0x1002a5d1
invalid
pushf
push 0xa
jae 0x1002a5de
jmp 0x1002a5d9
call 0x1002a5e0
jae 0x1002a5d9
add esp, 4
jmp 0x1002a5e5
dec dword [esp]
jno 0x1002a5ea
jns 0x1002a5d5
jp 0x1002a5ee
add esp, 4
popf
jmp 0x1002a5f5
push eax
push edx
xor edx, 0x90
push edx
sub edx, 0x80
pop eax
add eax, edx
pop edx
pop eax
je 0x1002a60e
jne 0x1002a60e
call 0x1fc2d962
wait
rcl byte [edx + 0x33], 0xd0
push eax
xor eax, eax
setnp al
push edx
xor edx, eax
shl edx, 2
xchg edx, eax
pop edx
or eax, ecx
pop eax
clc
jae 0x1002a624
adc bl, byte [eax + 0x66]
pushfd
pushf
push 0xa
jae 0x1002a631
jmp 0x1002a62c
call 0x1002a633
jae 0x1002a62c
add esp, 4
jmp 0x1002a638
dec dword [esp]
jno 0x1002a63d
jns 0x1002a628
jp 0x1002a641
add esp, 4
popf
jmp 0x1002a648
push eax
push edx
xor edx, 0x90
push edx
sub edx, 0x80
pop eax
add eax, edx
pop edx
pop eax
je 0x1002a661
jne 0x1002a661
pop eax
jl 0x1002a666
jmp 0x1002a668
je 0x1002a663
push eax
xor eax, eax
setnp al
push edx
xor edx, eax
shl edx, 2
xchg edx, eax
pop edx
or eax, ecx
pop eax
xor eax, eax
test eax, eax
je 0x1002a682
jne 0x1002a681
call 0x93069709
rol byte [ebx + eax*4], 0xf0
add eax, 0x1750374
xor eax, 3
add eax, 4
xor eax, 5
je 0x1002a690
jne 0x1002a690
call 0x106ca6fe
push 0
push 0
push 0
push 0x10026550
push 0
push 0
call dword [sym.imp.KERNEL32.dll_CreateThread]
test eax, eax
jne 0x1002a6ec
mov eax, 0xeded912b
push eax
lea ecx, [ebp - 0x28]
call fcn.100256c0
mov dword [ebp - 0x14], eax
mov ecx, dword [ebp - 0x14]
mov dword [ebp - 0x18], ecx
mov dword [ebp - 4], 0
mov edx, dword [ebp - 0x18]
push edx
call fcn.10029c20
add esp, 4
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x28]
call fcn.1001f140
mov eax, 1
jmp 0x1002a783
xor eax, eax
test eax, eax
je 0x1002a6f5
jne 0x1002a6f4
call 0x9306977c
rol byte [ebx + eax*4], 0xf0
add eax, 0x3eb037c
outsb dx, byte [esi]
xor eax, 3
add eax, 4
xor eax, 5
jl 0x1002a703
jmp 0x1002a705
je 0x1002a700
clc
jae 0x1002a70a
fisubr dword [esi + 0x74]
add esi, dword [ebp + 1]
je 0x1002a70f
jne 0x1002a70f
outsb dx, byte [esi]
pushf
push 0xa
jae 0x1002a71c
jmp 0x1002a717
call 0x1002a71e
jae 0x1002a717
add esp, 4
jmp 0x1002a723
dec dword [esp]
jno 0x1002a728
jns 0x1002a713
jp 0x1002a72c
add esp, 4
popf
jmp 0x1002a733
push eax
push edx
xor edx, 0x90
push edx
sub edx, 0x80
pop eax
add eax, edx
pop edx
pop eax
je 0x1002a74c
jne 0x1002a74c
call 0x1fc2daa0
wait
rcl byte [edx + 0x33], 0xd0
push eax
xor eax, eax
setnp al
push edx
xor edx, eax
shl edx, 2
xchg edx, eax
pop edx
or eax, ecx
pop eax
cmp dword [0x10433eb4], 0
je case.default.0x1002a536
mov eax, dword [0x10433eb4]
push eax
call fcn.100262f0
add esp, 4
mov dword [0x10433eb4], 0
mov eax, 1
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc