Function at 0x421eb9
Capabilities:
Accept command line arguments
Create thread

Disassembly:
mov eax, 0x49baf5
call fcn.00498a28
sub esp, 0x44
push ebx
push esi
mov esi, 0x4ce858
mov dword [0x4ce858], 0x4b79f4
push edi
mov dword [ebp - 0x14], esi
mov dword [0x4ce85c], 0x4b79e8
mov dword [0x4ce860], 0x4b79dc
call fcn.00438d0b
mov dword [0x4ce868], eax
call dword [sym.imp.KERNEL32.dll_GetCommandLineW]
push eax
mov ecx, 0x4ce86c
call fcn.00402788
xor ebx, ebx
mov ecx, 0x4ce888
push ebx
mov dword [ebp - 4], ebx
call fcn.0040ba1d
mov dword [0x4ce888], 0x4b27c0
mov ecx, 0x4ce890
mov byte [ebp - 4], 1
call fcn.00431c57
mov byte [ebp - 4], 2
push 0x18
mov dword [0x4ce990], ebx
mov dword [0x4ce994], ebx
call fcn.0046f0e2
pop ecx
mov dword [eax], eax
mov dword [eax + 4], eax
mov dword [0x4ce990], eax
mov dword [0x4ce9bc], ebx
mov dword [0x4ce9c0], ebx
mov dword [0x4ce9c4], 0x5dc
xor eax, eax
lea edi, [ebp - 0x40]
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
mov dword [ebp - 0x30], ebx
mov dword [ebp - 0x2c], 0xf
mov byte [ebp - 0x40], bl
lea eax, [ebp - 0x40]
mov byte [ebp - 4], 4
push eax
mov ecx, 0x4ce9c8
call fcn.00435bc2
mov byte [ebp - 4], 6
mov eax, dword [ebp - 0x2c]
cmp eax, 0xf
jbe 0x421faa
inc eax
push eax
push dword [ebp - 0x40]
call fcn.00402f94
pop ecx
pop ecx
push esi
mov dword [ebp - 0x30], ebx
mov dword [ebp - 0x2c], 0xf
mov byte [ebp - 0x40], bl
call fcn.00421e4e
push eax
mov ecx, 0x4ceb70
call fcn.004121cf
mov esi, 0x4cec58
mov byte [ebp - 4], 7
push ebx
mov ecx, esi
call fcn.00413f33
push 0x4cec6c
mov dword [0x4cec58], 0x4b3d84
mov dword [0x4cec68], ebx
call dword [sym.imp.KERNEL32.dll_InitializeCriticalSection]
push ebx
push ebx
push esi
push 0x413849
push ebx
push ebx
mov dword [0x4cec84], ebx
mov dword [0x4cec88], ebx
mov dword [0x4cec90], 0x4ce85c
call dword [sym.imp.KERNEL32.dll_CreateThread]
mov dword [0x4cec8c], eax
xor eax, eax
lea edi, [ebp - 0x40]
stosd dword es:[edi], eax
push 0xf
pop esi
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
mov dword [ebp - 0x30], ebx
mov dword [ebp - 0x2c], esi
mov byte [ebp - 0x40], bl
lea eax, [ebp - 0x40]
mov byte [ebp - 4], 9
push eax
push ecx
push 0x4ce860
call fcn.00421e4e
push eax
mov ecx, 0x4cec98
call fcn.0041180b
mov eax, dword [ebp - 0x2c]
cmp eax, esi
jbe 0x422065
inc eax
push eax
push dword [ebp - 0x40]
call fcn.00402f94
pop ecx
pop ecx
or dword [0x4cef6c], 0xffffffff
xor eax, eax
mov edi, 0x4cef78
mov dword [0x4cef60], ebx
mov dword [0x4cef64], 3
mov dword [0x4cef68], ebx
mov word [0x4cef74], bx
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
xor eax, eax
mov dword [0x4cef88], ebx
mov dword [0x4cef8c], 7
mov word [0x4cef78], ax
mov byte [ebp - 4], 0xc
push ebx
mov byte [0x4cef90], bl
call dword [sym.imp.KERNEL32.dll_GetModuleHandleW]
mov esi, dword [0x4ce868]
mov dword [0x4ce864], eax
mov eax, dword fs:[0x2c]
mov dword [ebp - 0x10], ebx
mov ecx, dword [eax]
mov eax, dword [0x4ce834]
cmp eax, dword [ecx + 4]
jle 0x42212a
push 0x4ce834
call fcn.0046f407
cmp dword [0x4ce834], 0xffffffff
pop ecx
jne 0x42212a
push 0x49f8de
mov byte [ebp - 4], 0xd
call fcn.0046f376
mov edi, 0x4ce83c
mov dword [esp], 0x4b749c
mov ecx, edi
call fcn.00403061
push 0x4ce834
mov dword [0x4ce838], edi
mov byte [ebp - 4], 0xc
call fcn.0046f3b6
pop ecx
mov eax, dword [0x4ce838]
cmp dword [eax + 0x14], 0xf
jbe 0x422137
mov eax, dword [eax]
push eax
lea eax, [ebp - 0x24]
mov ecx, esi
push eax
call fcn.00438d6d
mov byte [ebp - 4], 0xe
cmp dword [ebp - 0x20], 0
jbe 0x42215e
lea eax, [ebp - 0x10]
push eax
push ebx
push dword [ebp - 0x20]
push dword [ebp - 0x24]
call dword [sym.imp.GDI32.dll_AddFontMemResourceEx]
mov esi, 0x4ce858
mov ecx, esi
call fcn.0042250c
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov byte [0x4ce884], al
mov al, byte [ebp - 0x20]
mov byte [ebp - 0x40], al
mov al, byte [ebp - 0x1f]
mov byte [ebp - 0x3f], al
lea eax, [ebp - 0x50]
mov dword [ebp - 0x50], 0x4b79b8
mov dword [ebp - 0x48], 0x42246a
mov dword [ebp - 0x44], ebx
mov dword [ebp - 0x3c], esi
mov dword [ebp - 0x2c], eax
mov ecx, eax
mov byte [ebp - 4], 0xf
push ecx
mov ecx, 0x4cebe0
call fcn.0040dfbc
lea ecx, [ebp - 0x50]
call fcn.0040e046
lea ecx, [ebp - 0x24]
call fcn.00403617
mov ecx, dword [ebp - 0xc]
mov eax, esi
pop edi
pop esi
mov dword fs:[0], ecx
pop ebx
leave
ret