Function at 0x18004d610
Capabilities:
Create thread
Terminate thread

Disassembly:
mov dword [rsp + 8], ecx
sub rsp, 0xb8
mov dword [rsp + 0x40], 0
mov dword [rsp + 0x30], 0
mov dword [rsp + 0xa0], 0
mov qword [rsp + 0x38], 0
mov ecx, 0xc8
call qword [sym.imp.KERNEL32.dll_Sleep]
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov qword [0x1800596f0], rax
cmp dword [rsp + 0xc0], 0
je 0x18004d672
mov eax, dword [rsp + 0xc0]
mov dword [0x180059720], eax
jmp 0x18004d67d
mov dword [rsp + 0xc0], 0
lea rcx, str.USER32.dll
call qword [sym.imp.KERNEL32.dll_LoadLibraryA]
test rax, rax
jne 0x18004d696
xor eax, eax
jmp 0x18004da02
lea rdx, [rsp + 0x30]
lea rcx, [rsp + 0x40]
call fcn.1800435ac
test eax, eax
je 0x18004d89f
cmp dword [rsp + 0x40], 6
jne 0x18004d6c7
cmp dword [rsp + 0x30], 0
jne 0x18004d6c7
mov dword [0x180057154], 0
jmp 0x18004d72f
cmp dword [rsp + 0x40], 6
jne 0x18004d6e1
cmp dword [rsp + 0x30], 1
jne 0x18004d6e1
mov dword [0x180057154], 2
jmp 0x18004d72f
cmp dword [rsp + 0x40], 6
jne 0x18004d6fb
cmp dword [rsp + 0x30], 2
jne 0x18004d6fb
mov dword [0x180057154], 4
jmp 0x18004d72f
cmp dword [rsp + 0x40], 6
jne 0x18004d715
cmp dword [rsp + 0x30], 3
jne 0x18004d715
mov dword [0x180057154], 6
jmp 0x18004d72f
cmp dword [rsp + 0x40], 0xa
jne 0x18004d728
mov dword [0x180057154], 8
jmp 0x18004d72f
xor eax, eax
jmp 0x18004da02
mov eax, dword [0x180057154]
add eax, 1
mov dword [0x180057154], eax
mov dword [0x180059594], 1
mov eax, dword [0x180057154]
mov ecx, eax
lea rax, [0x1800571a8]
mov eax, dword [rax + rcx*4]
mov dword [0x1800595fc], eax
mov eax, dword [0x180057154]
mov ecx, eax
lea rax, [0x1800571d0]
mov eax, dword [rax + rcx*4]
mov dword [0x1800596b4], eax
mov eax, dword [0x180057154]
mov ecx, eax
lea rax, [0x1800571f8]
mov eax, dword [rax + rcx*4]
mov dword [0x1800596b8], eax
mov eax, dword [0x180057154]
mov ecx, eax
lea rax, [0x180057220]
mov eax, dword [rax + rcx*4]
mov dword [0x1800596bc], eax
mov eax, dword [0x180057154]
mov ecx, eax
lea rax, [0x180057248]
mov eax, dword [rax + rcx*4]
mov dword [0x1800596c0], eax
mov eax, dword [0x180057154]
mov ecx, eax
lea rax, [0x180057270]
mov eax, dword [rax + rcx*4]
mov dword [0x1800596c4], eax
mov eax, dword [0x180057154]
cmp eax, 4
je 0x18004d80b
mov eax, dword [0x180057154]
cmp eax, 6
je 0x18004d80b
mov eax, dword [0x180057154]
cmp eax, 8
je 0x18004d80b
mov eax, dword [0x1800596c4]
sub eax, 1
mov dword [rsp + 0xa8], eax
jmp 0x18004d81b
mov eax, dword [0x1800596c4]
add eax, 1
mov dword [rsp + 0xa8], eax
mov eax, dword [rsp + 0xa8]
mov dword [0x1800596c8], eax
mov eax, dword [0x180059594]
test eax, eax
je 0x18004d83f
mov dword [rsp + 0xac], 0x42
jmp 0x18004d84a
mov dword [rsp + 0xac], 0x2a
mov eax, dword [rsp + 0xac]
mov dword [0x1800595c4], eax
mov eax, dword [0x180057154]
mov ecx, eax
lea rax, [0x180057298]
mov eax, dword [rax + rcx*4]
mov dword [0x1800596cc], eax
mov eax, dword [0x180057154]
mov ecx, eax
lea rax, [0x1800572c0]
mov eax, dword [rax + rcx*4]
mov dword [0x1800596d0], eax
mov eax, dword [0x180057154]
mov ecx, eax
lea rax, [0x1800572e8]
mov eax, dword [rax + rcx*4]
mov dword [0x1800596d4], eax
mov r9d, 4
mov r8d, 0x3000
mov edx, 0x1000
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_VirtualAlloc]
mov qword [0x1800596e0], rax
cmp qword [0x1800596e0], 0
jne 0x18004d8d0
xor eax, eax
jmp 0x18004da02
mov dword [rsp + 0x50], 0x50
mov dword [rsp + 0x54], 0
lea rax, [0x18004cab0]
mov qword [rsp + 0x58], rax
mov dword [rsp + 0x60], 0
mov dword [rsp + 0x64], 0
mov rax, qword [0x1800596f0]
mov qword [rsp + 0x68], rax
mov qword [rsp + 0x70], 0
mov qword [rsp + 0x78], 0
mov qword [rsp + 0x80], 0
mov qword [rsp + 0x88], 0
lea rax, str.MyMainWnd
mov qword [rsp + 0x90], rax
mov qword [rsp + 0x98], 0
lea rcx, [rsp + 0x50]
call qword [sym.imp.USER32.dll_RegisterClassExW]
movzx eax, ax
test eax, eax
jne 0x18004d966
xor eax, eax
jmp 0x18004da02
mov qword [rsp + 0x28], 0
mov dword [rsp + 0x20], 0
xor r9d, r9d
lea r8, [0x18004d140]
xor edx, edx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_CreateThread]
mov qword [rsp + 0x38], rax
cmp qword [rsp + 0x38], 0
je 0x18004d9fc
mov dword [rsp + 0xa4], 0
mov eax, dword [0x1800596e8]
test eax, eax
jne 0x18004d9d5
cmp dword [rsp + 0xa4], 0x32
jae 0x18004d9d5
mov ecx, 0x64
call qword [sym.imp.KERNEL32.dll_Sleep]
mov eax, dword [rsp + 0xa4]
add eax, 1
mov dword [rsp + 0xa4], eax
jmp 0x18004d9a3
xor edx, edx
mov rcx, qword [rsp + 0x38]
call qword [sym.imp.KERNEL32.dll_TerminateThread]
xor edx, edx
mov rcx, qword [0x1800591e8]
call qword [sym.imp.KERNEL32.dll_TerminateThread]
mov ecx, 0x64
call qword [sym.imp.KERNEL32.dll_Sleep]
mov eax, dword [0x1800596e8]
add rsp, 0xb8
ret