Function at 0x43fc14
Capabilities:
Read .ini file

Disassembly:
push ebp
mov ebp, esp
push ebx
push esi
push edi
mov esi, dword [ebp + 0x14]
mov ebx, dword [ebp + 0xc]
mov edi, 0x50a608
mov eax, dword [ebx + 4]
test eax, eax
je 0x4406cd
cmp byte [eax], 0x2d
jne 0x4406cd
xor edx, edx
mov dword [0x50a634], edx
xor ecx, ecx
mov dword [0x50a638], ecx
xor edx, edx
mov dword [0x50a624], edx
xor ecx, ecx
mov dword [0x50a628], ecx
xor edx, edx
mov dword [0x50a62c], edx
xor ecx, ecx
mov dword [0x50a630], ecx
push 0x61
push eax
call fcn.00401278
add esp, 8
test eax, eax
je 0x43fc84
mov dword [0x50a634], 1
jmp 0x43fca0
push 0x72
mov eax, dword [ebx + 4]
push eax
call fcn.00401278
add esp, 8
test eax, eax
je 0x43fca0
mov dword [0x50a634], 2
push 0x73
mov eax, dword [ebx + 4]
push eax
call fcn.00401278
add esp, 8
test eax, eax
je 0x43fcbc
mov dword [0x50a638], 1
cmp dword [0x50a634], 0
jne 0x43fcd8
cmp dword [0x50a638], 0
jne 0x43fcd8
mov eax, 1
jmp 0x440b2b
push 0
push 0x4f369a
push 0x51f0b4
call fcn.00462b2c
mov dword [0x50a618], eax
cmp dword [0x50a634], 0
je 0x440686
cmp dword [ebx + 8], 0
jne 0x43fd20
mov edx, dword [0x50a618]
push edx
call fcn.00499164
push 0
push 0
mov ecx, dword [ebx]
push ecx
push 0
call fcn.0045bf34
jmp 0x440b2b
test byte [0x50a634], 1
je 0x43fe17
mov dword [0x50a620], 3
jmp 0x43fda0
mov eax, dword [0x50a620]
mov al, byte [edx + 1]
cmp al, 0x70
jne 0x43fd54
mov edx, dword [0x50a620]
inc edx
mov dword [0x50a628], edx
jmp 0x43fd99
mov ecx, dword [0x50a620]
cmp al, 0x67
jne 0x43fd6b
mov eax, dword [0x50a620]
inc eax
mov dword [0x50a630], eax
jmp 0x43fd99
mov edx, dword [0x50a620]
cmp al, 0x64
jne 0x43fd84
mov ecx, dword [0x50a620]
inc ecx
mov dword [0x50a624], ecx
jmp 0x43fd99
mov edx, dword [0x50a620]
cmp al, 0x77
jne 0x43fdc8
mov eax, dword [0x50a620]
inc eax
mov dword [0x50a62c], eax
add dword [0x50a620], 2
mov ecx, dword [0x50a620]
mov edx, dword [ebx + ecx*4]
test edx, edx
je 0x43fdc8
mov eax, dword [0x50a620]
cmp byte [edx], 0x2d
jne 0x43fdc8
mov ecx, dword [0x50a620]
cmp dword [ebx + ecx*4 + 4], 0
jne 0x43fd39
cmp dword [0x50a624], 0
je 0x43fdea
mov eax, dword [ebp + 0x10]
mov byte [eax], 0
push ebx
mov edx, dword [ebp + 0x10]
push edx
mov ecx, dword [0x50a624]
push ecx
call fcn.004b6b5c
jmp 0x43fe42
mov eax, dword [ebp + 0x10]
mov edx, dword [ebx + 8]
push esi
push edi
mov esi, eax
mov edi, edx
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
jmp 0x43fe42
mov eax, dword [ebp + 0x10]
mov edx, dword [ebx + 8]
push esi
push edi
mov esi, eax
mov edi, edx
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
push 0x3a
mov eax, dword [ebp + 0x10]
push eax
call fcn.00401278
add esp, 8
mov dword [edi], eax
cmp dword [edi], 0
je 0x43fe5c
mov edx, dword [edi]
mov byte [edx], 0
mov ecx, dword [ebp + 0x10]
cmp byte [ecx], 0
jne 0x43fe82
mov eax, dword [0x50a618]
push eax
call fcn.00499164
push 0
push 0
mov edx, dword [ebx]
push edx
push 0
call fcn.0045bf34
jmp 0x440b2b
mov ecx, dword [0x50a618]
mov dword [0x50a614], ecx
jmp 0x43ff1f
mov eax, dword [0x50a614]
mov edx, dword [eax]
push esi
push edi
mov edi, edx
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
push 0x4f36a5
push esi
call fcn.004015f8
add esp, 8
mov dword [edi], eax
cmp dword [edi], 0
je 0x43ff11
mov eax, dword [edi]
mov byte [eax], 0
push esi
call fcn.004d7f78
mov dword [0x50a60c], esi
jmp 0x43feeb
inc dword [0x50a60c]
mov edx, dword [0x50a60c]
cmp byte [edx], 0x20
je 0x43fee5
mov eax, dword [0x50a60c]
cmp byte [eax], 0
je 0x43ff11
mov edx, dword [ebp + 0x10]
push edx
push eax
call fcn.004014a8
add esp, 8
test eax, eax
je 0x43ff2c
mov ecx, dword [0x50a614]
mov eax, dword [ecx + 0x30]
mov dword [0x50a614], eax
cmp dword [0x50a614], 0
jne 0x43fe93
cmp dword [0x50a614], 0
jne 0x440011
mov edx, dword [ebp + 0x10]
mov ecx, dword [ebx + 8]
push esi
push edi
mov esi, edx
mov edi, ecx
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
mov eax, dword [0x50a618]
mov dword [0x50a614], eax
jmp 0x440004
push 0x4f36ae
mov edx, dword [0x50a614]
mov ecx, dword [edx]
push ecx
call fcn.004015f8
add esp, 8
mov dword [edi], eax
cmp dword [edi], 0
je 0x43fff6
add dword [edi], 7
jmp 0x43ff97
inc dword [edi]
mov eax, dword [edi]
cmp byte [eax], 0x20
je 0x43ff95
mov edx, dword [edi]
push esi
push edi
mov edi, edx
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
push 0x3a
push esi
call fcn.00401278
add esp, 8
mov dword [edi], eax
cmp dword [edi], 0
je 0x43fff6
mov eax, dword [edi]
mov byte [eax], 0
push esi
call fcn.004d7f78
cmp byte [esi], 0
je 0x43fff6
mov edx, dword [ebp + 0x10]
push edx
push esi
call fcn.004014a8
add esp, 8
test eax, eax
je 0x440011
mov ecx, dword [0x50a614]
mov eax, dword [ecx + 0x30]
mov dword [0x50a614], eax
cmp dword [0x50a614], 0
jne 0x43ff73
test byte [0x50a634], 1
je 0x4405a4
cmp dword [0x50a624], 0
je 0x44004f
mov byte [esi], 0
push ebx
push esi
mov edx, dword [0x50a624]
push edx
call fcn.004b6b5c
push 0x4f36b7
push esi
call fcn.004014a8
add esp, 8
test eax, eax
jne 0x4400b4
mov byte [esi], 0
jmp 0x4400b4
mov byte [esi], 0
mov eax, dword [0x50a614]
test eax, eax
je 0x4400b4
mov edx, dword [eax]
mov dword [edi], edx
jmp 0x440063
inc dword [edi]
mov ecx, dword [edi]
cmp byte [ecx], 0x20
je 0x440061
mov eax, dword [edi]
push esi
push edi
mov edi, eax
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
push 0x4f36bd
push esi
call fcn.004015f8
add esp, 8
mov dword [edi], eax
cmp dword [edi], 0
je 0x4400b1
mov eax, dword [edi]
mov byte [eax], 0
push esi
call fcn.004d7f78
jmp 0x4400b4
mov byte [esi], 0
cmp byte [esi], 0
jne 0x4400df
mov edx, dword [ebx + 8]
push esi
push edi
mov edi, edx
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
mov eax, dword [ebp + 0x10]
push esi
push edi
mov edi, esi
mov esi, eax
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
cmp dword [0x50a628], 0
je 0x440140
mov eax, dword [0x50a628]
mov edx, dword [ebx + eax*4]
push esi
push edi
mov edi, edx
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
jmp 0x44021a
mov byte [esi], 0
cmp dword [0x50a614], 0
je 0x440206
push 0x4f36c6
mov eax, dword [0x50a614]
mov edx, dword [eax]
push edx
call fcn.004015f8
add esp, 8
mov dword [edi], eax
cmp dword [edi], 0
je 0x440206
add dword [edi], 7
push 0x3a
mov ecx, dword [edi]
push ecx
call fcn.00401278
add esp, 8
mov dword [0x50a60c], eax
cmp dword [0x50a60c], 0
je 0x440206
inc dword [0x50a60c]
jmp 0x44019c
inc dword [0x50a60c]
mov eax, dword [0x50a60c]
cmp byte [eax], 0x20
je 0x440196
mov edx, dword [0x50a60c]
push esi
push edi
mov edi, edx
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
push 0x4f36cf
push esi
call fcn.004015f8
add esp, 8
mov dword [edi], eax
cmp dword [edi], 0
je 0x4401e9
mov eax, dword [edi]
mov byte [eax], 0
push 0x3a
push esi
call fcn.00401278
add esp, 8
mov dword [edi], eax
cmp dword [edi], 0
je 0x440200
mov edx, dword [edi]
mov byte [edx], 0
push esi
call fcn.004d7f78
cmp byte [esi], 0
jne 0x44021a
push esi
push edi
mov edi, esi
mov esi, 0x4f36d7
mov eax, edi
movsd dword es:[edi], dword [esi]
movsb byte es:[edi], byte [esi]
pop edi
pop esi
push esi
mov edx, dword [ebx + 8]
push edx
push 0x4f36dd
mov ecx, dword [ebp + 0x10]
push ecx
call fcn.00401318
pop ecx
add eax, dword [ebp + 0x10]
push eax
call sub.USER32.dll_wsprintfA
add esp, 0x10
cmp dword [0x50a62c], 0
je 0x44028c
mov eax, dword [0x50a62c]
mov edx, dword [ebx + eax*4]
push esi
push edi
mov edi, edx
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
push 0x4f36eb
push esi
call fcn.004014a8
add esp, 8
test eax, eax
jne 0x440351
mov byte [esi], 0
jmp 0x440351
mov byte [esi], 0
cmp dword [0x50a614], 0
je 0x440351
push 0x4f36f1
mov eax, dword [0x50a614]
mov edx, dword [eax]
push edx
call fcn.004015f8
add esp, 8
mov dword [edi], eax
cmp dword [edi], 0
je 0x440351
add dword [edi], 7
push 0x3a
mov ecx, dword [edi]
push ecx
call fcn.00401278
add esp, 8
mov dword [0x50a60c], eax
cmp dword [0x50a60c], 0
je 0x440351
inc dword [0x50a60c]
push 0x4f36fa
mov eax, dword [0x50a60c]
push eax
call fcn.004015f8
add esp, 8
mov dword [edi], eax
cmp dword [edi], 0
je 0x440351
mov edx, dword [edi]
mov byte [edx], 0
push 0x3a
mov ecx, dword [0x50a60c]
push ecx
call fcn.00401278
add esp, 8
mov dword [0x50a610], eax
cmp dword [0x50a610], 0
je 0x44034c
inc dword [0x50a610]
mov eax, dword [0x50a610]
push esi
push edi
mov edi, eax
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
mov eax, dword [edi]
mov byte [eax], 0x47
cmp byte [esi], 0
je 0x440372
push esi
push 0x4f3702
mov edx, dword [ebp + 0x10]
push edx
call fcn.00401318
pop ecx
add eax, dword [ebp + 0x10]
push eax
call sub.USER32.dll_wsprintfA
add esp, 0xc
cmp dword [0x50a630], 0
je 0x4403be
mov ecx, dword [0x50a630]
mov eax, dword [ebx + ecx*4]
push esi
push edi
mov edi, eax
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
push 0x4f3707
push esi
call fcn.004014a8
add esp, 8
test eax, eax
jne 0x44041f
mov byte [esi], 0
jmp 0x44041f
mov byte [esi], 0
cmp dword [0x50a614], 0
je 0x44041f
push 0x4f370d
mov eax, dword [0x50a614]
mov edx, dword [eax]
push edx
call fcn.004015f8
add esp, 8
mov dword [edi], eax
cmp dword [edi], 0
je 0x44041f
add dword [edi], 6
jmp 0x4403ed
inc dword [edi]
mov ecx, dword [edi]
cmp byte [ecx], 0x20
je 0x4403eb
mov eax, dword [edi]
push esi
push edi
mov edi, eax
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
push esi
call fcn.004d7f78
cmp byte [esi], 0
je 0x440440
push esi
push 0x4f3715
mov eax, dword [ebp + 0x10]
push eax
call fcn.00401318
pop ecx
add eax, dword [ebp + 0x10]
push eax
call sub.USER32.dll_wsprintfA
add esp, 0xc
cmp dword [0x50a614], 0
je 0x44052d
mov edx, dword [ebp + 0x10]
push edx
call fcn.00401318
pop ecx
add eax, 2
push eax
call fcn.0040c55c
pop ecx
mov dword [edi], eax
cmp dword [edi], 0
jne 0x440487
mov ecx, dword [0x50a618]
push ecx
call fcn.00499164
push 2
push 0
mov eax, dword [ebx]
push eax
push 0
call fcn.0045bf34
jmp 0x440b2b
mov edx, dword [0x50a614]
mov ecx, dword [edx]
push ecx
call fcn.0040c454
pop ecx
mov eax, dword [0x50a614]
mov edx, dword [edi]
mov dword [eax], edx
mov ecx, dword [0x50a614]
mov eax, dword [ecx]
mov edx, dword [ebp + 0x10]
push esi
push edi
mov esi, eax
mov edi, edx
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
cmp dword [ebp + 0x18], 0
je 0x440686
push 0x4f371f
mov eax, dword [ebp + 0x10]
push eax
call fcn.004015f8
add esp, 8
mov ebx, eax
mov dword [edi], ebx
test ebx, ebx
je 0x4404f5
mov byte [ebx], 0
mov eax, dword [ebp + 0x10]
push eax
push 0
push 0x39f
call fcn.0041f178
push eax
push esi
call sub.USER32.dll_wsprintfA
add esp, 0xc
xor edx, edx
mov dword [0x4fb760], edx
mov ecx, dword [0x4f29d4]
push ecx
push esi
mov eax, dword [ebp + 8]
push eax
call fcn.004bd330
jmp 0x440686
push 0
push 0
mov edx, dword [ebp + 0x10]
push edx
mov ecx, dword [0x50a618]
push ecx
call fcn.00498c08
mov dword [0x50a618], eax
cmp dword [ebp + 0x18], 0
je 0x440686
push 0x4f3728
mov eax, dword [ebp + 0x10]
push eax
call fcn.004015f8
add esp, 8
mov ebx, eax
mov dword [edi], ebx
test ebx, ebx
je 0x44056c
mov byte [ebx], 0
mov eax, dword [ebp + 0x10]
push eax
push 0
push 0x3a0
call fcn.0041f178
push eax
push esi
call sub.USER32.dll_wsprintfA
add esp, 0xc
xor edx, edx
mov dword [0x4fb760], edx
mov ecx, dword [0x4f29d4]
push ecx
push esi
mov eax, dword [ebp + 8]
push eax
call fcn.004bd330
jmp 0x440686
cmp dword [0x50a614], 0
jne 0x440619
cmp dword [ebp + 0x18], 0
je 0x440603
push 0x4f3731
mov edx, dword [ebp + 0x10]
push edx
call fcn.004015f8
add esp, 8
mov dword [edi], eax
cmp dword [edi], 0
je 0x4405d0
mov ecx, dword [edi]
mov byte [ecx], 0
mov eax, dword [ebp + 0x10]
push eax
push 0
push 0x3a1
call fcn.0041f178
push eax
push esi
call sub.USER32.dll_wsprintfA
add esp, 0xc
xor edx, edx
mov dword [0x4fb760], edx
mov ecx, dword [0x4f29d4]
push ecx
push esi
mov eax, dword [ebp + 8]
push eax
call fcn.004bd330
mov edx, dword [0x50a618]
push edx
call fcn.00499164
mov eax, 1
jmp 0x440b2b
mov edx, dword [0x50a614]
push edx
mov ecx, dword [0x50a618]
push ecx
call fcn.00498fb0
mov dword [0x50a618], eax
cmp dword [ebp + 0x18], 0
je 0x440686
push 0x4f373a
mov eax, dword [ebp + 0x10]
push eax
call fcn.004015f8
add esp, 8
mov ebx, eax
mov dword [edi], ebx
test ebx, ebx
je 0x440653
mov byte [ebx], 0
mov eax, dword [ebp + 0x10]
push eax
push 0
push 0x3a2
call fcn.0041f178
push eax
push esi
call sub.USER32.dll_wsprintfA
add esp, 0xc
xor edx, edx
mov dword [0x4fb760], edx
mov ecx, dword [0x4f29d4]
push ecx
push esi
mov eax, dword [ebp + 8]
push eax
call fcn.004bd330
cmp dword [0x50a638], 0
je 0x4406a2
push 1
mov edx, dword [0x50a618]
push edx
call fcn.004d7170
mov dword [0x50a618], eax
mov ecx, dword [0x50a618]
push ecx
push 0x4f3743
push 0x51f0b4
call fcn.00463068
mov eax, dword [0x50a618]
push eax
call fcn.00499164
mov eax, 1
jmp 0x440b2b
mov edx, dword [0x4fc344]
push edx
call fcn.00499164
xor ecx, ecx
mov dword [0x4fc344], ecx
mov eax, dword [ebx + 4]
test eax, eax
je 0x44098d
mov byte [0x4fad00], 0
mov byte [0x4fae2c], 0
mov byte [0x4fae90], 0
mov byte [0x4fad64], 0
mov dx, word [0x4faf5a]
mov word [0x4faf58], dx
push 0x2e
push eax
call fcn.00401278
add esp, 8
test eax, eax
jne 0x440801
mov ecx, dword [ebx + 4]
push ecx
call fcn.004b6a38
test eax, eax
jne 0x440755
mov eax, dword [ebx + 4]
push eax
call fcn.004d1e90
test eax, eax
je 0x440801
mov edx, dword [ebp + 0x10]
push edx
call fcn.004d1ac0
jmp 0x4409eb
mov ecx, dword [ebx + 4]
push ecx
call fcn.00409a14
pop ecx
mov edi, eax
mov dword [0x50a61c], edi
test edi, edi
jle 0x4407e4
dec edi
push edi
push 0x4f374e
push esi
call sub.USER32.dll_wsprintfA
add esp, 0xc
push 0x51f0b4
push 0x180
mov eax, dword [ebp + 0x10]
push eax
push 0x4f375c
push esi
push 0x4f3753
call sub.KERNEL32.dll_GetPrivateProfileStringA
mov edx, dword [ebp + 0x10]
cmp byte [edx], 0
jne 0x4407be
push 6
push 0
push 0
push 0x3a3
call fcn.0041f178
push eax
push 0
call fcn.0045bf34
jmp 0x440b2b
push 0
push 0
mov ecx, dword [ebp + 0x10]
push ecx
mov eax, dword [0x4fc344]
push eax
call fcn.00498c08
mov dword [0x4fc344], eax
mov edx, dword [ebp + 0x10]
push edx
call fcn.004d18d8
jmp 0x4409eb
push 6
push 0
push 0
push 0x3a4
call fcn.0041f178
push eax
push 0
call fcn.0045bf34
jmp 0x440b2b
push 0x3a
mov ecx, dword [ebx + 4]
push ecx
call fcn.00401278
add esp, 8
mov dword [edi], eax
cmp dword [edi], 0
je 0x440828
mov eax, dword [edi]
mov byte [eax], 0
inc dword [edi]
mov edx, dword [edi]
cmp byte [edx], 0
jne 0x440828
xor ecx, ecx
mov dword [edi], ecx
mov eax, dword [ebx + 4]
push esi
push edi
mov esi, 0x4fae2c
mov edi, eax
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
push esi
push edi
mov esi, 0x4fad00
mov edi, 0x4fae2c
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
cmp dword [edi], 0
je 0x4408df
mov eax, dword [edi]
push eax
call fcn.00409a14
pop ecx
mov word [0x4faf58], ax
cmp word [0x4faf58], 0
ja 0x4408aa
mov dx, word [0x4faf5a]
mov word [0x4faf58], dx
cmp dword [ebx + 8], 0
je 0x44094a
mov ecx, dword [ebx + 8]
push esi
mov esi, 0x4fae90
mov edi, ecx
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
pop esi
jmp 0x44094a
cmp dword [ebx + 8], 0
je 0x44093e
mov eax, dword [ebx + 8]
push eax
call fcn.00409a14
pop ecx
mov word [0x4faf58], ax
cmp word [0x4faf58], 0
ja 0x44090d
mov dx, word [0x4faf5a]
mov word [0x4faf58], dx
cmp dword [ebx + 0xc], 0
je 0x44094a
mov ecx, dword [ebx + 0xc]
push esi
mov esi, 0x4fae90
mov edi, ecx
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
pop esi
jmp 0x44094a
mov ax, word [0x4faf5a]
mov word [0x4faf58], ax
push 0x4fae90
movzx edx, word [0x4faf58]
push edx
push 0x4fae2c
push 0x4fad00
push 0x4f3760
mov ecx, dword [ebp + 0x10]
push ecx
call sub.USER32.dll_wsprintfA
add esp, 0x18
push 0
push 0
mov eax, dword [ebp + 0x10]
push eax
mov edx, dword [0x4fc344]
push edx
call fcn.00498c08
mov dword [0x4fc344], eax
jmp 0x4409eb
cmp byte [0x4fae2c], 0
je 0x4409eb
cmp byte [0x4fad00], 0
je 0x4409a7
mov dword [edi], 0x4fad00
jmp 0x4409ad
mov dword [edi], 0x4fae2c
push 0x4fae90
movzx ecx, word [0x4faf58]
push ecx
push 0x4fae2c
mov eax, dword [edi]
push eax
push 0x4f3773
mov edx, dword [ebp + 0x10]
push edx
call sub.USER32.dll_wsprintfA
add esp, 0x18
push 0
push 0
mov ecx, dword [ebp + 0x10]
push ecx
mov eax, dword [0x4fc344]
push eax
call fcn.00498c08
mov dword [0x4fc344], eax
cmp byte [0x4fae2c], 0
je 0x440b1d
cmp dword [0x4f39b0], 0
je 0x440a7b
mov dword [0x4fb770], 1
mov edx, dword [0x4f29d4]
push edx
push 0
push 0x5e4
call fcn.0041f178
push eax
mov ecx, dword [0x4fd9fc]
push ecx
call fcn.004bc548
mov eax, dword [0x4f29d4]
push eax
mov edx, dword [0x4fd9fc]
push edx
call fcn.004bc3ec
push 0x4f3786
call fcn.004eec3c
test eax, eax
je 0x440a65
push 0
push 0x3e8
push 0x7c
mov ecx, dword [0x4fd9ec]
push ecx
call sub.USER32.dll_SetTimer
jmp 0x440b16
push 0
push 0x64
push 0x7c
mov eax, dword [0x4fd9ec]
push eax
call sub.USER32.dll_SetTimer
jmp 0x440b16
push 0
call fcn.00444c50
test eax, eax
je 0x440b04
push esi
mov edx, dword [ebp + 0x10]
push edx
call fcn.004f0120
mov dword [0x4fb770], 1
mov ecx, dword [0x4f29d4]
push ecx
push 0
push 0x5e3
call fcn.0041f178
push eax
mov eax, dword [0x4fd9fc]
push eax
call fcn.004bc548
mov edx, dword [0x4f29d4]
push edx
mov ecx, dword [0x4fd9fc]
push ecx
call fcn.004bc3ec
push 0x4f378a
call fcn.004eec3c
test eax, eax
je 0x440af0
push 0
push 0x3e8
push 0x7c
mov eax, dword [0x4fd9ec]
push eax
call sub.USER32.dll_SetTimer
jmp 0x440b16
push 0
push 0x64
push 0x7c
mov edx, dword [0x4fd9ec]
push edx
call sub.USER32.dll_SetTimer
jmp 0x440b16
push 0
push 1
push 0x7c
mov ecx, dword [0x4fd9ec]
push ecx
call sub.USER32.dll_SetTimer
mov eax, 1
jmp 0x440b2b
push 0
push 0
mov edx, dword [ebx]
push edx
push 0
call fcn.0045bf34
pop edi
pop esi
pop ebx
pop ebp
ret 0x14