Function at 0x100421e0
Capabilities:
Create thread

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x10071acb
mov eax, dword fs:[0]
push eax
sub esp, 0x98
mov eax, dword [0x1008b274]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 4], 0
mov eax, 0x9077b546
push eax
lea ecx, [ebp - 0x8c]
call fcn.10040e30
mov dword [ebp - 0x98], eax
mov ecx, dword [ebp - 0x98]
mov dword [ebp - 0x9c], ecx
mov byte [ebp - 4], 1
mov edx, dword [ebp - 0x9c]
push edx
call fcn.10021e00
add esp, 4
mov byte [ebp - 4], 0
mov dword [ebp - 0x90], 0
jmp 0x1004226a
mov eax, dword [ebp - 0x90]
add eax, 1
mov dword [ebp - 0x90], eax
cmp dword [ebp - 0x90], 0x59
jge 0x10042283
mov ecx, dword [ebp - 0x90]
mov byte [ebp + ecx - 0x8c], 0
jmp 0x1004225b
push 0x561e83ea
lea ecx, [ebp - 0x30]
call fcn.10040db0
mov dword [ebp - 0xa0], eax
mov edx, dword [ebp - 0xa0]
mov dword [ebp - 0xa4], edx
mov byte [ebp - 4], 2
mov eax, dword [ebp - 0xa4]
push eax
call fcn.10022280
add esp, 4
mov byte [ebp - 4], 0
mov dword [ebp - 0x94], 0
jmp 0x100422d4
mov ecx, dword [ebp - 0x94]
add ecx, 1
mov dword [ebp - 0x94], ecx
cmp dword [ebp - 0x94], 0x20
jge 0x100422ea
mov edx, dword [ebp - 0x94]
mov byte [ebp + edx - 0x30], 0
jmp 0x100422c5
push 0
push 0
push 0
push 0x10042110
push 0
push 0
call dword [sym.imp.KERNEL32.dll_CreateThread]
clc
jae 0x10042304
mov ah, 0x79
pushf
push 0xa
jae 0x10042311
jmp 0x1004230c
call 0x10042313
jae 0x1004230c
add esp, 4
jmp 0x10042318
dec dword [esp]
jno 0x1004231d
jns 0x10042308
jp 0x10042321
add esp, 4
popf
jmp 0x10042328
push eax
push edx
xor edx, 0x90
push edx
sub edx, 0x80
pop eax
add eax, edx
pop edx
pop eax
je 0x10042341
jne 0x10042341
jns 0x100423be
jl 0x10042346
add ebp, ebx
add edi, dword [ecx + 0x74]
sti
jmp 0x10042348
je 0x10042343
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 0x10042362
jne 0x10042361
call 0x930813e9
rol byte [ebx + eax*4], 0xf0
add eax, 0x1750374
xor eax, 3
add eax, 4
xor eax, 5
je 0x10042370
jne 0x10042370
call 0x1013c3dc
add bh, bh
adc eax, sym.imp.KERNEL32.dll_Sleep
push 0xfa0
call dword [sym.imp.KERNEL32.dll_Sleep]
xor eax, eax
test eax, eax
je 0x10042384
jne 0x10042383
call 0x9308140b
rol byte [ebx + eax*4], 0xf0
add eax, 0x3eb037c
inc edx
xor eax, 3
add eax, 4
xor eax, 5
jl 0x10042392
jmp 0x10042394
je 0x1004238f
clc
jae 0x10042399
pop esi
inc edx
je 0x1004239e
jne 0x1004239e
inc edx
pushf
push 0xa
jae 0x100423ab
jmp 0x100423a6
call 0x100423ad
jae 0x100423a6
add esp, 4
jmp 0x100423b2
dec dword [esp]
jno 0x100423b7
jns 0x100423a2
jp 0x100423bb
add esp, 4
popf
jmp 0x100423c2
push eax
push edx
xor edx, 0x90
push edx
sub edx, 0x80
pop eax
add eax, edx
pop edx
pop eax
je 0x100423db
jne 0x100423db
call 0x1fc4572f
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
call fcn.10022100
mov dword [ebp - 4], 3
lea ecx, [ebp + 8]
call fcn.10006c00
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.1004c355
mov esp, ebp
pop ebp
ret