Function at 0x41f890
Capabilities:
Hide graphical window

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x28
cmp dword [ebp + 8], 0
jne 0x41f8b5
push 0xe
push 0x20
push 0x434864
call fcn.0040b010
add esp, 0xc
or eax, 0xffffffff
jmp 0x41fbce
mov dword [ebp - 0xc], 0x40000000
mov eax, dword [ebp + 0xc]
mov ecx, dword [eax + 0x10]
mov dword [ecx], 0
mov dword [ebp - 4], 0x28
mov edx, dword [ebp - 4]
mov dword [ebp - 8], edx
mov dword [ebp - 0x10], 0x43b9e8
mov dword [ebp - 0x14], 0
jmp 0x41f8ee
mov eax, dword [ebp - 0x14]
add eax, 1
mov dword [ebp - 0x14], eax
mov ecx, dword [ebp - 0x14]
cmp ecx, dword [ebp + 0x10]
jge 0x41fafd
mov edx, dword [ebp - 0x14]
imul edx, edx, 0x28
mov eax, dword [ebp + 0x14]
mov ecx, dword [eax + edx]
mov dword [ebp - 0x18], ecx
mov edx, dword [ebp - 0x18]
sub edx, 1
mov dword [ebp - 0x18], edx
cmp dword [ebp - 0x18], 0x13
ja case.0x41f926.2
mov eax, dword [ebp - 0x18]
movzx ecx, byte [eax + 0x41fbf8]
jmp dword [ecx*4 + 0x41fbd4]
mov edx, dword [ebp - 0x14]
imul edx, edx, 0x28
mov eax, dword [ebp + 0x14]
fld qword [0x42d738]
fcomp qword [eax + edx + 8]
fnstsw ax
test ah, 5
jp 0x41f95f
mov ecx, dword [ebp - 0x14]
imul ecx, ecx, 0x28
mov edx, dword [ebp + 0x14]
fld qword [edx + ecx + 8]
fadd qword [0x42d728]
fstp qword [ebp - 0x20]
jmp 0x41f968
fld qword [0x42d738]
fstp qword [ebp - 0x20]
fld qword [ebp - 0x20]
call fcn.0042b990
mov dword [ebp - 8], eax
mov eax, dword [ebp - 0x14]
imul eax, eax, 0x28
mov ecx, dword [ebp + 0x14]
fld qword [0x42d738]
fcomp qword [ecx + eax + 0x10]
fnstsw ax
test ah, 5
jp 0x41f9a5
mov edx, dword [ebp - 0x14]
imul edx, edx, 0x28
mov eax, dword [ebp + 0x14]
fld qword [eax + edx + 0x10]
fadd qword [0x42d728]
fstp qword [ebp - 0x28]
jmp 0x41f9ae
fld qword [0x42d738]
fstp qword [ebp - 0x28]
fld qword [ebp - 0x28]
call fcn.0042b990
mov dword [ebp - 4], eax
jmp 0x41faf8
mov ecx, dword [ebp - 0xc]
or ecx, 0x800000
mov dword [ebp - 0xc], ecx
jmp 0x41faf8
mov edx, dword [ebp - 0x14]
imul edx, edx, 0x28
mov eax, dword [ebp + 0x14]
mov ecx, dword [eax + edx + 8]
mov dword [ebp - 0x10], ecx
jmp 0x41faf8
push 0x43487c
push 0xa
push 0x33
push 0x434888
call fcn.0040b010
add esp, 0x10
or eax, 0xffffffff
jmp 0x41fbce
mov edx, dword [ebp - 0x14]
imul edx, edx, 0x28
mov eax, dword [ebp + 0x14]
mov ecx, dword [eax + edx + 8]
push ecx
push 0x4348a0
call sub.MSVCR90.dll_strcmp
add esp, 8
test eax, eax
je 0x41fa86
mov edx, dword [ebp - 0x14]
imul edx, edx, 0x28
mov eax, dword [ebp + 0x14]
mov ecx, dword [eax + edx + 8]
push ecx
push 0x4348a8
call sub.MSVCR90.dll_strcmp
add esp, 8
test eax, eax
je 0x41fa86
mov edx, dword [ebp - 0x14]
imul edx, edx, 0x28
mov eax, dword [ebp + 0x14]
mov ecx, dword [eax + edx + 8]
push ecx
push 0x4348b0
call sub.MSVCR90.dll_strcmp
add esp, 8
test eax, eax
je 0x41fa86
mov edx, dword [ebp - 0x14]
imul edx, edx, 0x28
mov eax, dword [ebp + 0x14]
mov ecx, dword [eax + edx + 8]
push ecx
push 2
push 0x3b
push 0x4348b8
call fcn.0040b010
add esp, 0x10
or eax, 0xffffffff
jmp 0x41fbce
jmp 0x41faf8
push 0x4348d0
push 0xa
push 0x40
push 0x4348dc
call fcn.0040b010
add esp, 0x10
or eax, 0xffffffff
jmp 0x41fbce
mov edx, dword [ebp - 0x14]
imul edx, edx, 0x28
mov eax, dword [ebp + 0xc]
mov ecx, dword [eax + 0x10]
mov eax, dword [ebp + 0x14]
mov edx, dword [eax + edx + 8]
mov dword [ecx], edx
jmp 0x41faf8
mov eax, dword [ebp - 0x14]
imul eax, eax, 0x28
mov ecx, dword [ebp + 0xc]
mov edx, dword [ebp + 0x14]
mov eax, dword [edx + eax + 8]
mov dword [ecx + 0x14], eax
jmp 0x41faf8
mov ecx, dword [ebp - 0x14]
imul ecx, ecx, 0x28
mov edx, dword [ebp + 0x14]
mov eax, dword [edx + ecx]
push eax
push 1
push 0x49
push 0x4348f4
call fcn.0040b010
add esp, 0x10
or eax, 0xffffffff
jmp 0x41fbce
jmp 0x41f8e5
lea ecx, [ebp - 8]
push ecx
mov edx, dword [ebp + 8]
push edx
call fcn.004130f0
add esp, 8
mov eax, dword [ebp - 0xc]
or eax, 0xc4
mov dword [ebp - 0xc], eax
cmp dword [ebp - 4], 0x28
jle 0x41fb2a
mov ecx, dword [ebp - 0xc]
or ecx, 0x300000
mov dword [ebp - 0xc], ecx
push 0
mov edx, dword [0x43efec]
push edx
mov eax, dword [ebp + 0xc]
sub eax, dword [0x43f028]
cdq
mov ecx, 0x18
idiv ecx
push eax
mov edx, dword [ebp + 8]
mov eax, dword [edx + 0xc]
push eax
mov ecx, dword [ebp - 4]
push ecx
mov edx, dword [ebp - 8]
push edx
push 0
push 0
mov eax, dword [ebp - 0xc]
push eax
mov ecx, dword [ebp - 0x10]
push ecx
push str.EDIT
push 0
call dword [sym.imp.USER32.dll_CreateWindowExA]
mov edx, dword [ebp + 0xc]
mov dword [edx + 0xc], eax
mov eax, dword [ebp + 0xc]
cmp dword [eax + 0xc], 0
jne 0x41fb92
push 7
push 0x55
push 0x434914
call fcn.0040b010
add esp, 0xc
or eax, 0xffffffff
jmp 0x41fbce
push 5
mov ecx, dword [ebp + 0xc]
mov edx, dword [ecx + 0xc]
push edx
call dword [sym.imp.USER32.dll_ShowWindow]
mov eax, dword [ebp + 0xc]
mov ecx, dword [eax + 0xc]
push ecx
call dword [sym.imp.USER32.dll_UpdateWindow]
cmp dword [ebp + 8], 0
je 0x41fbcc
mov edx, dword [ebp + 8]
cmp dword [edx], 0
jne 0x41fbcc
mov eax, dword [ebp + 0xc]
push eax
mov ecx, dword [ebp + 8]
push ecx
call fcn.0040bd80
add esp, 8
xor eax, eax
mov esp, ebp
pop ebp
ret