Function at 0x41dd60
Capabilities:
Accept command line arguments
Print debug messages

Disassembly:
push ebx
mov ebx, esp
sub esp, 8
and esp, 0xfffffff8
add esp, 4
push ebp
mov ebp, dword [ebx + 4]
mov dword [esp + 4], ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x653e7d
mov eax, dword fs:[0]
push eax
push ebx
sub esp, 0x100
mov eax, dword [0x6ee06c]
xor eax, ebp
mov dword [ebp - 0x14], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
xor eax, eax
mov dword [ebp - 0xac], 0
mov dword [ebp - 0xa8], 7
mov word [ebp - 0xbc], ax
push 0xb
push 0x6d8efc
lea ecx, [ebp - 0xbc]
mov dword [ebp - 4], eax
call fcn.0040ffa0
push 0x24
push str.D1CC8D99_63FF_4228_9E32_010D565A0555
lea ecx, [ebp - 0xbc]
call fcn.0040ffa0
cmp dword [ebp - 0xa8], 8
lea eax, [ebp - 0xbc]
xorps xmm0, xmm0
lea ecx, [ebp - 0x3c]
cmovae eax, dword [ebp - 0xbc]
push eax
movlpd qword [ebp - 0x3c], xmm0
call fcn.004c7604
push 0x38
lea eax, [ebp - 0x8c]
push 0
push eax
call fcn.004e7e00
xorps xmm0, xmm0
mov dword [ebp - 0x8c], vtable.WTL::CMessageLoop.0
add esp, 0xc
mov dword [ebp - 0x78], 0
movups xmmword [ebp - 0x88], xmm0
mov dword [ebp - 0x74], 0
movups xmmword [ebp - 0x70], xmm0
mov dword [ebp - 0x58], 0
movq qword [ebp - 0x60], xmm0
xor eax, eax
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x18], 7
mov word [ebp - 0x2c], ax
mov byte [ebp - 4], 3
mov eax, dword [0x6fe504]
add eax, 0x10
push eax
mov dword [ebp - 0xf4], eax
call dword [sym.imp.KERNEL32.dll_EnterCriticalSection]
call dword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
mov esi, dword [0x6fe8c4]
xor edx, edx
push 4
mov edi, eax
mov ecx, dword [esi + 8]
add ecx, 1
setb dl
neg edx
or edx, ecx
push edx
push dword [esi]
call fcn.004f0fcf
add esp, 0xc
test eax, eax
je 0x41def4
mov dword [esi], eax
xor ecx, ecx
mov eax, dword [esi + 8]
add eax, 1
push 4
setb cl
neg ecx
or ecx, eax
push ecx
push dword [esi + 4]
call fcn.004f0fcf
add esp, 0xc
test eax, eax
je 0x41def4
mov ecx, dword [esi + 8]
mov dword [esi + 4], eax
lea edx, [ecx*4]
mov ecx, dword [esi]
add ecx, edx
je 0x41dee5
mov dword [ecx], edi
mov eax, dword [esi + 4]
add eax, edx
je 0x41def1
lea ecx, [ebp - 0x8c]
mov dword [eax], ecx
inc dword [esi + 8]
push dword [ebp - 0xf4]
call dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
xorps xmm0, xmm0
lea ecx, [ebp - 0x34]
movlpd qword [ebp - 0x34], xmm0
call fcn.004c6fdd
mov byte [ebp - 4], 4
call dword [sym.imp.KERNEL32.dll_GetCommandLineW]
push eax
lea ecx, [ebp - 0x34]
call fcn.004c755d
push str.84932SD8DW
lea eax, [ebp - 0x54]
push eax
lea ecx, [ebp - 0x34]
call fcn.004c6ffd
push str.EFS569D9FI
lea eax, [ebp - 0xec]
mov byte [ebp - 4], 5
push eax
lea ecx, [ebp - 0x34]
call fcn.004c6ffd
push str.31415421
lea eax, [ebp - 0xa4]
mov byte [ebp - 4], 6
push eax
lea ecx, [ebp - 0x34]
call fcn.004c6ffd
sub esp, 0x18
mov byte [ebp - 4], 7
lea eax, [ebp - 0xec]
mov ecx, esp
push eax
call fcn.0040fc30
call fcn.004c02d2
cmp dword [ebp - 0x90], 8
lea ecx, [ebp - 0xa4]
mov edi, eax
mov dword [ebp - 0xf4], edx
cmovae ecx, dword [ebp - 0xa4]
lea eax, [ebp - 0xd4]
push ecx
push str.qid:__s__n
push eax
mov dword [ebp - 0xf0], edi
call fcn.004c0115
add esp, 0x24
mov byte [ebp - 4], 8
lea eax, [ebp - 0xd4]
cmp dword [ebp - 0xc0], 8
cmovae eax, dword [ebp - 0xd4]
push eax
call dword [sym.imp.KERNEL32.dll_OutputDebugStringW]
cmp dword [ebp - 0x40], 8
lea eax, [ebp - 0x54]
push str.497F2A4146
cmovae eax, dword [ebp - 0x54]
push eax
call fcn.004c0281
add esp, 8
test al, al
je 0x41e114
lea eax, [ebp - 0x3c]
push eax
call fcn.0041e680
test al, al
jne 0x41e3c7
push 3
push str.vU__
lea ecx, [ebp - 0x2c]
call fcn.00403400
push 5
push 0x6d9aa4
lea ecx, [ebp - 0x2c]
call fcn.0040ffa0
push 0
push edi
call dword [sym.imp.USER32.dll_EnableWindow]
push dword [ebp - 0xf0]
cmp dword [ebp - 0x18], 8
lea esi, [ebp - 0x2c]
push 0x6fe8ec
cmovae esi, dword [ebp - 0x2c]
push 0x6f6b68
call fcn.00416fb0
add esp, 8
movzx eax, ax
mov ecx, 0x6fe8cc
push eax
push 0
push 0x40000
push 0x86000008
push esi
push 0
push edi
call fcn.00416ec0
test eax, eax
je 0x41e3c7
push 0x3a8
sub esp, 0x18
lea eax, [ebp - 0xa4]
mov ecx, esp
push eax
call fcn.0040fc30
lea eax, [ebp - 0x110]
push eax
call fcn.004c0572
add esp, 0x20
mov byte [ebp - 4], 9
cmp eax, 0x6ff0b0
je 0x41e0be
cmp dword [eax + 0x14], 0x10
mov ecx, eax
jb 0x41e0b0
mov ecx, dword [eax]
push dword [eax + 0x10]
push ecx
mov ecx, 0x6ff0b0
call fcn.0040ace0
mov byte [ebp - 4], 8
mov edx, dword [ebp - 0xfc]
cmp edx, 0x10
jb 0x41e0fc
mov ecx, dword [ebp - 0x110]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x41e0f2
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41e64a
push edx
push ecx
call fcn.00424265
add esp, 8
push ecx
mov ecx, 0x6fe8d0
call fcn.0041d860
push 5
push dword [0x6fe8d0]
jmp 0x41e2f8
cmp dword [ebp - 0x40], 8
lea eax, [ebp - 0x54]
push str.2FC2E35353
cmovae eax, dword [ebp - 0x54]
push eax
call fcn.004c0281
add esp, 8
test al, al
je 0x41e254
lea eax, [ebp - 0x3c]
push eax
call fcn.0041e680
test al, al
jne 0x41e3c7
push 3
push str.EQ_P_
lea ecx, [ebp - 0x2c]
call fcn.00403400
push 5
push 0x6d9aa4
lea ecx, [ebp - 0x2c]
call fcn.0040ffa0
push 0
push edi
call dword [sym.imp.USER32.dll_EnableWindow]
push dword [ebp - 0xf0]
cmp dword [ebp - 0x18], 8
lea esi, [ebp - 0x2c]
push 0x6ff0e8
cmovae esi, dword [ebp - 0x2c]
push 0x6f6ad8
call fcn.00416fb0
add esp, 8
movzx eax, ax
mov ecx, 0x6ff0c8
push eax
push 0
push 0x40000
push 0x86000008
push esi
push 0
push edi
call fcn.00416ec0
test eax, eax
je 0x41e3c7
push 0x3a8
sub esp, 0x18
lea eax, [ebp - 0xa4]
mov ecx, esp
push eax
call fcn.0040fc30
lea eax, [ebp - 0x110]
push eax
call fcn.004c0572
add esp, 0x20
mov byte [ebp - 4], 0xa
cmp eax, 0x6ff8ac
je 0x41e1fe
cmp dword [eax + 0x14], 0x10
mov ecx, eax
jb 0x41e1f0
mov ecx, dword [eax]
push dword [eax + 0x10]
push ecx
mov ecx, 0x6ff8ac
call fcn.0040ace0
mov byte [ebp - 4], 8
mov edx, dword [ebp - 0xfc]
cmp edx, 0x10
jb 0x41e23c
mov ecx, dword [ebp - 0x110]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x41e232
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41e64f
push edx
push ecx
call fcn.00424265
add esp, 8
push ecx
mov ecx, 0x6ff0cc
call fcn.0041d860
push 5
push dword [0x6ff0cc]
jmp 0x41e2f8
cmp dword [ebp - 0x40], 8
lea eax, [ebp - 0x54]
push str.ERDA627FR7
cmovae eax, dword [ebp - 0x54]
push eax
call fcn.004c0281
add esp, 8
test al, al
je 0x41e3c7
push 5
push str.EQ_P
lea ecx, [ebp - 0x2c]
call fcn.00403400
push 5
push 0x6d9aa4
lea ecx, [ebp - 0x2c]
call fcn.0040ffa0
push 0
push edi
call dword [sym.imp.USER32.dll_EnableWindow]
push dword [ebp - 0xf0]
cmp dword [ebp - 0x18], 8
lea esi, [ebp - 0x2c]
push 0x6ff8e4
cmovae esi, dword [ebp - 0x2c]
push 0x6f6a48
call fcn.00416fb0
add esp, 8
movzx eax, ax
mov ecx, 0x6ff8c4
push eax
push 0
push 0x40000
push 0x86000008
push esi
push 0
push edi
call fcn.00416ec0
test eax, eax
je 0x41e3c7
push ecx
mov ecx, 0x6ff8c8
call fcn.0041d860
push 5
push dword [0x6ff8c8]
call dword [sym.imp.USER32.dll_ShowWindow]
mov edi, dword [sym.imp.USER32.dll_PeekMessageW]
mov ecx, 1
xor esi, esi
mov dword [ebp - 0xf4], ecx
test ecx, ecx
je 0x41e344
push 0
push 0
push 0
push 0
lea eax, [ebp - 0x70]
push eax
call edi
test eax, eax
jne 0x41e344
mov eax, dword [ebp - 0x8c]
lea ecx, [ebp - 0x8c]
push esi
mov eax, dword [eax + 8]
call eax
inc esi
test eax, eax
jne 0x41e315
mov dword [ebp - 0xf4], eax
push 0
push 0
push 0
lea eax, [ebp - 0x70]
push eax
call dword [sym.imp.USER32.dll_GetMessageW]
mov ecx, dword [ebp - 0xf4]
cmp eax, 0xffffffff
je 0x41e311
test eax, eax
je 0x41e3b8
lea eax, [ebp - 0x70]
push eax
mov eax, dword [ebp - 0x8c]
lea ecx, [ebp - 0x8c]
mov eax, dword [eax + 4]
call eax
test eax, eax
jne 0x41e390
lea eax, [ebp - 0x70]
push eax
call dword [sym.imp.USER32.dll_TranslateMessage]
lea eax, [ebp - 0x70]
push eax
call dword [sym.imp.USER32.dll_DispatchMessageW]
lea eax, [ebp - 0x70]
push eax
mov eax, dword [ebp - 0x8c]
lea ecx, [ebp - 0x8c]
mov eax, dword [eax + 0xc]
call eax
mov ecx, dword [ebp - 0xf4]
test eax, eax
je 0x41e311
jmp 0x41e304
call fcn.0041d700
push 1
push dword [ebp - 0xf0]
jmp 0x41e3ca
push 1
push edi
call dword [sym.imp.USER32.dll_EnableWindow]
mov edx, dword [ebp - 0xc0]
cmp edx, 8
jb 0x41e410
mov ecx, dword [ebp - 0xd4]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x41e406
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41e654
push edx
push ecx
call fcn.00424265
add esp, 8
mov edx, dword [ebp - 0x90]
xor eax, eax
mov dword [ebp - 0xc4], 0
mov dword [ebp - 0xc0], 7
mov word [ebp - 0xd4], ax
cmp edx, 8
jb 0x41e46d
mov ecx, dword [ebp - 0xa4]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x41e463
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41e659
push edx
push ecx
call fcn.00424265
add esp, 8
mov edx, dword [ebp - 0xd8]
xor eax, eax
mov dword [ebp - 0x94], 0
mov dword [ebp - 0x90], 7
mov word [ebp - 0xa4], ax
cmp edx, 8
jb 0x41e4ca
mov ecx, dword [ebp - 0xec]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x41e4c0
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41e65e
push edx
push ecx
call fcn.00424265
add esp, 8
mov edx, dword [ebp - 0x40]
xor eax, eax
mov dword [ebp - 0xdc], 0
mov dword [ebp - 0xd8], 7
mov word [ebp - 0xec], ax
cmp edx, 8
jb 0x41e521
mov ecx, dword [ebp - 0x54]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x41e517
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41e663
push edx
push ecx
call fcn.00424265
add esp, 8
xor eax, eax
mov dword [ebp - 0x44], 0
lea ecx, [ebp - 0x34]
mov dword [ebp - 0x40], 7
mov word [ebp - 0x54], ax
call fcn.004c36c9
mov edx, dword [ebp - 0x18]
cmp edx, 8
jb 0x41e577
mov ecx, dword [ebp - 0x2c]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x41e56d
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41e668
push edx
push ecx
call fcn.00424265
add esp, 8
xor eax, eax
mov dword [ebp - 0x1c], 0
mov word [ebp - 0x2c], ax
mov eax, dword [ebp - 0x7c]
mov dword [ebp - 0x18], 7
mov dword [ebp - 0x8c], vtable.WTL::CMessageLoop.0
test eax, eax
je 0x41e5ac
push eax
call fcn.004eb5e6
add esp, 4
mov dword [ebp - 0x7c], 0
mov eax, dword [ebp - 0x88]
mov dword [ebp - 0x78], 0
mov dword [ebp - 0x74], 0
test eax, eax
je 0x41e5d7
push eax
call fcn.004eb5e6
add esp, 4
mov dword [ebp - 0x88], 0
lea ecx, [ebp - 0x3c]
mov dword [ebp - 0x84], 0
mov dword [ebp - 0x80], 0
call fcn.004c7619
mov edx, dword [ebp - 0xa8]
cmp edx, 8
jb 0x41e62c
mov ecx, dword [ebp - 0xbc]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x41e622
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41e66d
push edx
push ecx
call fcn.00424265
add esp, 8
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov ecx, dword [ebp - 0x14]
xor ecx, ebp
call fcn.00423c15
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
call fcn.004eb7f6
call fcn.004eb7f6
call fcn.004eb7f6
call fcn.004eb7f6
call fcn.004eb7f6
call fcn.004eb7f6
call fcn.004eb7f6
call fcn.004eb7f6
int3