Function at 0x1011b300
Capabilities:
Create thread

Disassembly:
push ebp
mov ebp, esp
push ecx
cmp dword [ebp + 0xc], 0
push ebx
push esi
push edi
jl 0x1011b55a
mov esi, dword [ebp + 0x1c]
cmp dword [esi + 0x2c], 1
jge 0x1011b379
mov edi, dword [esi + 0x19c]
test edi, edi
je 0x1011b55a
cmp byte [edi + 0xc], 0
jne 0x1011b367
mov eax, dword [edi + 4]
mov byte [edi + 0xc], 1
test eax, eax
je 0x1011b367
push 0x3a98
push 0x3a98
push eax
push 0
call dword [sym.imp.KERNEL32.dll_ChangeTimerQueueTimer]
push 0
push 0
push edi
push 0x100f9ff0
push 0
push 0
call dword [sym.imp.KERNEL32.dll_CreateThread]
push eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [esi + 0x19c], 0
pop edi
pop esi
pop ebx
pop ecx
pop ebp
ret 0x18
cmp dword [esi + 0x18c], 0
jne 0x1011b401
mov edi, dword [esi + 0x19c]
test edi, edi
je 0x1011b3d5
cmp byte [edi + 0xc], 0
jne 0x1011b3cb
mov eax, dword [edi + 4]
mov byte [edi + 0xc], 1
test eax, eax
je 0x1011b3cb
push 0x3a98
push 0x3a98
push eax
push 0
call dword [sym.imp.KERNEL32.dll_ChangeTimerQueueTimer]
push 0
push 0
push edi
push 0x100f9ff0
push 0
push 0
call dword [sym.imp.KERNEL32.dll_CreateThread]
push eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [esi + 0x19c], 0
push dword [esi + 0x1bc]
push dword [esi + 0x1b8]
push dword [esi + 0x1b4]
push dword [esi + 0x1b0]
push esi
call sym.ExuiKrnln_X32.dll_ControlAddRedrawRect
push esi
call sym.ExuiKrnln_X32.dll_ControlRedraw
pop edi
pop esi
pop ebx
pop ecx
pop ebp
ret 0x18
mov eax, dword [esi + 0x118]
xor edi, edi
xor ecx, ecx
mov dword [ebp + 0xc], edi
test eax, eax
jle 0x1011b461
mov eax, dword [esi + 0x114]
mov edx, dword [eax + ecx*4]
mov ebx, dword [edx + 0x28]
cmp ebx, 0xff
jne 0x1011b429
inc edi
jmp 0x1011b456
movsx eax, word [esi + 0x18c]
add eax, ebx
mov dword [edx + 0x28], eax
mov eax, dword [esi + 0x114]
mov eax, dword [eax + ecx*4]
cmp dword [eax + 0x28], 0xfe
jle 0x1011b44f
mov dword [eax + 0x28], 0xff
inc edi
mov dword [ebp + 0xc], 1
mov eax, dword [esi + 0x118]
inc ecx
cmp ecx, eax
jl 0x1011b412
cmp edi, eax
jne 0x1011b4b8
mov ebx, dword [esi + 0x19c]
test ebx, ebx
je 0x1011b4b8
cmp byte [ebx + 0xc], 0
jne 0x1011b4ae
mov eax, dword [ebx + 4]
mov byte [ebx + 0xc], 1
test eax, eax
je 0x1011b4ae
push 0x3a98
push 0x3a98
push eax
push 0
call dword [sym.imp.KERNEL32.dll_ChangeTimerQueueTimer]
push 0
push 0
push ebx
push 0x100f9ff0
push 0
push 0
call dword [sym.imp.KERNEL32.dll_CreateThread]
push eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [esi + 0x19c], 0
cmp dword [ebp + 0xc], 0
je 0x1011b527
push dword [esi + 0x1bc]
push dword [esi + 0x1b8]
push dword [esi + 0x1b4]
push dword [esi + 0x1b0]
push esi
call sym.ExuiKrnln_X32.dll_ControlAddRedrawRect
cmp dword [esi + 0x2c], 1
jl 0x1011b50a
cmp byte [esi + 0xe1], 0
jne 0x1011b50a
cmp dword [esi + 0xd0], 0
jle 0x1011b4fc
inc dword [esi + 0xcc]
jmp 0x1011b50a
or dword [esi + 0xbc], 1
mov byte [0x1016c3a5], 1
test edi, edi
jne 0x1011b527
mov eax, dword [0x1016c3d4]
test eax, eax
je 0x1011b527
push eax
push eax
push 0x10469
push dword [eax + 0x28]
call dword [sym.imp.USER32.dll_SendMessageW]
cmp dword [esi + 0x19c], 0
jne 0x1011b55a
movsx eax, word [esi + 0x18e]
mov ecx, 0x21
push 0
push 0
push 0
push esi
test eax, eax
push fcn.1011b300
cmove eax, ecx
push eax
push eax
call sym.ExuiKrnln_X32.dll_CreateTimerEx
mov dword [esi + 0x19c], eax
pop edi
pop esi
pop ebx
pop ecx
pop ebp
ret 0x18