Function at 0x4ad6c0
Capabilities:
Read .ini file

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x454
mov eax, dword [0x57c870]
xor eax, ebp
mov dword [ebp - 0x10], eax
fldz
fstp dword [ebp - 0xc]
fldz
fstp dword [ebp - 8]
mov al, byte [0x5fd3b7]
mov byte [ebp - 0x110], al
push 0xfe
push 0
lea ecx, [ebp - 0x10f]
push ecx
call fcn.005323e0
add esp, 0xc
mov dl, byte [0x5fd3cc]
mov byte [ebp - 0x220], dl
push 0xfe
push 0
lea eax, [ebp - 0x21f]
push eax
call fcn.005323e0
add esp, 0xc
mov dword [ebp - 0x11c], 0
mov dword [ebp - 0x114], 0
mov dword [ebp - 0x224], 0
mov dword [ebp - 4], 0
mov dword [ebp - 0x118], 0
fld1
fstp dword [ebp - 0x228]
fld dword [ebp - 0x228]
fmul qword [0x54b678]
fstp dword [ebp - 0x228]
call fcn.0042d690
cmp dword [0x5fdb24], 0
je 0x4ad77e
xor eax, eax
jmp 0x4ae535
push str.DynEd_Control_System__U.S._Patent_5_065_345
push 0x719380
call fcn.00532580
add esp, 8
push str._c__Copyright_1988_2014__DynEd_International__Inc.__All_Rights_Reserved
push 0x57226c
push 0x71947f
call fcn.00532706
add esp, 0xc
push 0x10
push 6
push 0xe
push 0x122
push 0x5722b8
push 0x5722bc
push 0x71957e
call fcn.00532706
add esp, 0x1c
push 0x71957e
push str.Starting_DynEd_Engine_Application_version__s
lea ecx, [ebp - 0x110]
push ecx
call fcn.00532706
add esp, 0xc
lea edx, [ebp - 0x110]
push edx
push 0
call fcn.00436500
add esp, 8
push 0x603ae0
call fcn.004dd910
add esp, 4
mov word [0x60043c], ax
movsx eax, word [0x60043c]
test eax, eax
je 0x4ad823
xor ecx, ecx
mov word [0x575684], cx
xor edx, edx
mov word [0x575688], dx
mov eax, dword [ebp + 0xc]
push eax
mov ecx, dword [ebp + 8]
push ecx
call fcn.004af810
add esp, 8
cmp dword [0x5fdb24], 1
jne 0x4ad843
xor eax, eax
jmp 0x4ae535
push 0x10
push 6
push 0xe
push 0x122
push str._03d._03d._03d._03d
push 0x5fd218
call fcn.00532706
add esp, 0x18
push 0x10
push 6
push 0xe
push 0x122
push 0x57231c
push str._s___03d._03d._03d._03d_
push 0x5fd268
call fcn.00532706
add esp, 0x1c
push 0x5c48f8
call fcn.00423be0
add esp, 4
call fcn.004d7950
push 0x12
call fcn.004f4cf0
add esp, 4
cmp dword [0x5fdb24], 1
jne 0x4ad8ae
xor eax, eax
jmp 0x4ae535
call fcn.004a7d20
call fcn.004b3380
call fcn.00484fa0
cmp dword [0x5fdb24], 1
jne 0x4ad8cd
xor eax, eax
jmp 0x4ae535
push 5
mov edx, dword [0x60137c]
push edx
call dword [sym.imp.USER32.dll_ShowWindow]
push 2
call fcn.004f3670
add esp, 4
call fcn.00483e60
call fcn.004c0c70
call fcn.004ca7b0
cmp dword [0x5fdb24], 1
jne 0x4ad905
xor eax, eax
jmp 0x4ae535
lea eax, [ebp - 0x110]
push eax
call fcn.00485fc0
add esp, 4
lea ecx, [ebp - 0x110]
push ecx
call fcn.00456010
add esp, 4
cmp eax, 1
jne 0x4ad931
cmp dword [0x5fdb24], 1
jne 0x4ad938
xor eax, eax
jmp 0x4ae535
cmp dword [0x5c6c1c], 1
jne 0x4ad953
push str.010_011_012_013_014_019_020_025_026_027_028_029_030_032_033_034_038_039_049_050_051_052_059_060_061_062_063_064
push 0x5f5880
call fcn.00532580
add esp, 8
push 0x5f5880
lea edx, [ebp - 0x220]
push edx
call fcn.00532580
add esp, 8
mov dword [ebp - 4], 0
jmp 0x4ad979
mov eax, dword [ebp - 4]
add eax, 1
mov dword [ebp - 4], eax
cmp dword [ebp - 4], 0x7d
jge 0x4ad9c3
mov ecx, dword [ebp - 4]
push ecx
push 0x5723b0
lea edx, [ebp - 0x110]
push edx
call fcn.00532706
add esp, 0xc
lea eax, [ebp - 0x110]
push eax
lea ecx, [ebp - 0x220]
push ecx
call fcn.00532680
add esp, 8
test eax, eax
je 0x4ad9c1
mov edx, dword [ebp - 4]
imul edx, edx, 0x55
mov dword [edx + 0xd86f08], 1
jmp 0x4ad970
call fcn.004f7f40
call fcn.00483eb0
fstp dword [ebp - 8]
push 0x5f5d88
push 0x5f98d8
call fcn.00532580
add esp, 8
push 0x5f98d8
call fcn.00433f40
add esp, 4
push 0x5723b8
push 0x5f98d8
call fcn.00532590
add esp, 8
push 0x5f5d88
call fcn.004925f0
add esp, 4
test eax, eax
je 0x4ada24
push 0x5f98d8
push 0x5fd3d0
call fcn.00532580
add esp, 8
mov dword [ebp - 0x118], 0x5fd3d0
call fcn.00485a30
mov dword [ebp - 0x118], eax
mov eax, dword [ebp - 0x118]
push eax
call fcn.004925f0
add esp, 4
test eax, eax
jne 0x4ada60
push 0x5fd3d0
push 0x5f96d8
call fcn.00532580
add esp, 8
jmp 0x4ada74
mov ecx, dword [ebp - 0x118]
push ecx
push 0x5f96d8
call fcn.00532580
add esp, 8
push 0x5723bc
push 0x5fd3d0
push 0x5723c8
lea edx, [ebp - 0x110]
push edx
call fcn.00532706
add esp, 0x10
lea eax, [ebp - 0x110]
push eax
push 0xff
lea ecx, [ebp - 0x220]
push ecx
push 0x5fd3cd
push str.launcher_pic
push 0x5723e0
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
movsx edx, byte [ebp - 0x220]
test edx, edx
je 0x4adb04
lea eax, [ebp - 0x220]
push eax
push 0x5c
push 0x5c
push 0x5723e8
push 0x5f96d8
push 0x5723f0
push 0x5fd4d0
call fcn.00532706
add esp, 0x1c
push 0x5fd4d0
call fcn.00423310
add esp, 4
test eax, eax
jne 0x4adb04
mov byte [0x5fd4d0], 0
lea ecx, [ebp - 0x110]
push ecx
push 0xff
lea edx, [ebp - 0x220]
push edx
push 0x5fd3ce
push str.launcher_movie
push 0x572410
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
movsx eax, byte [ebp - 0x220]
test eax, eax
je 0x4adb85
lea ecx, [ebp - 0x220]
push ecx
push 0x5c
push 0x5c
push 0x572418
push 0x5f96d8
push str._s_s_clogos_c_s
push 0x5fd5d0
call fcn.00532706
add esp, 0x1c
push 0x5fd5d0
call fcn.00423310
add esp, 4
test eax, eax
jne 0x4adb85
push 0x5fd5d0
push 3
call fcn.00436500
add esp, 8
mov byte [0x5fd5d0], 0
call fcn.004af320
call fcn.00484fa0
cmp dword [0x5fdb24], 1
jne 0x4adb9f
xor eax, eax
jmp 0x4ae535
call fcn.00483eb0
fadd qword [0x54d1d8]
fstp dword [ebp - 0xc]
push 1
push 1
call fcn.004caf40
add esp, 8
cmp dword [0x5fdb24], 1
jne 0x4adbc9
xor eax, eax
jmp 0x4ae535
mov edx, dword [0x5fdb08]
push edx
call fcn.00460c80
add esp, 4
mov dword [ebp - 0x224], eax
mov dword [0x5fda24], 0
mov eax, dword [ebp - 0x224]
imul eax, eax, 0x1564
mov ecx, dword [0x5fda68]
imul ecx, ecx, 0x94
lea edx, [eax + ecx + 0x667080]
mov eax, dword [0x5fda4c]
mov ecx, dword [edx + eax*4]
movsx edx, byte [ecx + 0x42]
cmp edx, 0x4b
jne 0x4adc24
mov dword [0x5fda24], 1
jmp 0x4adc5e
mov eax, dword [ebp - 0x224]
imul eax, eax, 0x1564
mov ecx, dword [0x5fda68]
imul ecx, ecx, 0x94
lea edx, [eax + ecx + 0x667080]
mov eax, dword [0x5fda4c]
mov ecx, dword [edx + eax*4]
movsx edx, byte [ecx + 0x43]
cmp edx, 0x48
jne 0x4adc5e
mov dword [0x5fda24], 2
call fcn.004de900
mov eax, dword [ebp - 0x224]
imul eax, eax, 0x1564
mov ecx, dword [0x5fda68]
imul ecx, ecx, 0x94
lea edx, [eax + ecx + 0x667080]
mov eax, dword [0x5fda4c]
mov ecx, dword [edx + eax*4]
movsx edx, byte [ecx + 0x31]
cmp edx, 0x30
jne 0x4adc9f
mov dword [0x5fd9e4], 1
jmp 0x4adca9
mov dword [0x5fd9e4], 0
call fcn.004b8370
mov eax, dword [0x5fda54]
mov dword [ebp - 0x114], eax
mov dword [0x5fda54], 0
cmp dword [0x5fd9a0], 0
jne 0x4adce3
cmp dword [0x5fdb18], 0
jne 0x4adce3
cmp dword [0x5fe284], 0
jne 0x4adce3
call fcn.004e6960
mov dword [0x57652c], 0
cmp dword [0x5fdb24], 1
jne 0x4adcfd
xor eax, eax
jmp 0x4ae535
push 1
call fcn.004f3670
add esp, 4
call fcn.00484fa0
push 0x5f5d88
call fcn.004925f0
add esp, 4
test eax, eax
je 0x4add4e
push 0x5f5d88
push 0x5fd3d0
call fcn.00532580
add esp, 8
push 0x5fd3d0
call fcn.00433f40
add esp, 4
push 0x572430
push 0x5fd3d0
call fcn.00532590
add esp, 8
push str.tutor.loc
push 2
call fcn.004308f0
add esp, 8
mov dword [ebp - 0x11c], eax
cmp dword [ebp - 0x11c], 0xffffffff
jne 0x4add78
mov dword [0x569250], 0
jmp 0x4add96
call fcn.00477db0
mov dword [ebp - 0x11c], eax
cmp dword [ebp - 0x11c], 0
jne 0x4add96
mov dword [0x569250], 0
cmp dword [0x5fdb24], 1
jne 0x4adda6
xor eax, eax
jmp 0x4ae535
mov dword [0x5f5670], 1
cmp dword [0x5f6630], 1
jne 0x4adec1
push str.local.hst
push 0x5f6d48
call fcn.0053617f
add esp, 8
test eax, eax
jne 0x4ade8e
mov dword [0x5c4c28], 1
push 0x1102600
mov ecx, dword [0x5c4c28]
imul ecx, ecx, 0x127c
add ecx, 0x11a6ec0
push ecx
call fcn.0045eda0
add esp, 8
xor edx, edx
mov word [0x110b450], dx
mov eax, dword [0x5c4c28]
imul eax, eax, 0x127c
xor ecx, ecx
mov word [eax + 0x11a717e], cx
push 0x1102600
mov edx, dword [0x5c4c28]
imul edx, edx, 0x127c
add edx, 0x11a6ec0
push edx
call fcn.0045a360
add esp, 8
mov dword [0x5f663c], 1
push 0x1102600
call fcn.0044d2d0
add esp, 4
cmp dword [0x5f5d84], 1
jne 0x4ade8c
cmp dword [0x5f4bcc], 1
jne 0x4ade8c
cmp dword [0x5f4a98], 0
jne 0x4ade8c
push 0x5fd3cf
push 0x5fd4cf
push 0x57244c
push str.MSG_Internet_You_May_Drop_ConnectionWin
call fcn.00422b80
add esp, 0x10
jmp 0x4adebf
push 0x5fd5cf
push 0x5f6d48
call fcn.0046ec00
add esp, 8
mov dword [ebp - 0x11c], eax
cmp dword [ebp - 0x11c], 0
jle 0x4adeb8
cmp dword [0x5fdb24], 1
jne 0x4adebf
xor eax, eax
jmp 0x4ae535
jmp 0x4adeda
mov eax, dword [0x5fdb08]
push eax
call fcn.00457db0
add esp, 4
test eax, eax
jne 0x4adeda
xor eax, eax
jmp 0x4ae535
cmp dword [0x5f6630], 1
jne 0x4adf34
movsx ecx, byte [0x1102784]
test ecx, ecx
je 0x4adf34
push 0x1068ea0
push 0x572484
lea edx, [ebp - 0x430]
push edx
call fcn.00532706
add esp, 0xc
lea eax, [ebp - 0x22c]
push eax
push 0
push 2
push 0x57223c
lea ecx, [ebp - 0x330]
push ecx
push 0x5fd6cf
lea edx, [ebp - 0x430]
push edx
push 5
call fcn.00491e40
add esp, 0x20
call fcn.004f5180
call fcn.004f44b0
call fcn.004f7040
push 0
call fcn.004f5d80
add esp, 4
mov eax, dword [0x5c4c28]
imul eax, eax, 0x127c
add eax, 0x11a6ec0
push eax
call fcn.0045cea0
add esp, 4
push 0x1102600
mov ecx, dword [0x5c4c28]
imul ecx, ecx, 0x127c
add ecx, 0x11a6ec0
push ecx
call fcn.0044a6b0
add esp, 8
mov dword [ebp - 0x11c], eax
cmp dword [ebp - 0x11c], 1
jne 0x4adfc2
push 0x1102600
mov edx, dword [0x5c4c28]
imul edx, edx, 0x127c
add edx, 0x11a6ec0
push edx
call fcn.004423c0
add esp, 8
push 0x1102600
call fcn.0044a800
add esp, 4
mov dword [0x5fdae0], 1
mov dword [0x573dd8], 0
push 4
mov eax, dword [0x5c4c28]
imul eax, eax, 0x127c
add eax, 0x11a6ec0
push eax
call fcn.00460890
add esp, 8
movsx ecx, ax
cmp ecx, 1
je 0x4ae01d
cmp dword [0x5c6c1c], 1
je 0x4ae01d
cmp dword [0x5fd8dc], 1
je 0x4ae01d
cmp dword [0x5fdb08], 0x3c
je 0x4ae01d
cmp dword [0x5fdb08], 0x3d
jne 0x4ae031
mov dword [0x5fdae0], 0
mov dword [0x573dd8], 1
mov dword [0x573de8], 1
push 0xb
mov edx, dword [0x5c4c28]
imul edx, edx, 0x127c
add edx, 0x11a6ec0
push edx
call fcn.00460890
add esp, 8
cwde
cmp eax, 1
jne 0x4ae068
mov dword [0x573de8], 0
cmp dword [0x5f563c], 0
jne 0x4ae0a9
mov ecx, dword [0x5c4c28]
imul ecx, ecx, 0x127c
movsx edx, word [ecx + 0x11a6f32]
cmp edx, 1
jne 0x4ae093
mov dword [0x5fd970], 1
movsx eax, word [0x1102690]
and eax, 1
je 0x4ae0a9
mov dword [0x5fd970], 1
movsx ecx, word [0x1102690]
and ecx, 2
je 0x4ae0c1
mov dword [0x5fda00], 1
jmp 0x4ae0cb
mov dword [0x5fda00], 0
cmp dword [0x5fda00], 1
jne 0x4ae0de
push 1
call fcn.004f7610
add esp, 4
push 2
mov edx, dword [0x5c4c28]
imul edx, edx, 0x127c
add edx, 0x11a6ec0
push edx
call fcn.00460890
add esp, 8
cwde
cmp eax, 1
jne 0x4ae10b
mov dword [0x569250], 0
mov ecx, dword [0x5c4c28]
imul ecx, ecx, 0x127c
add ecx, 0x11a6ec0
push ecx
call fcn.00462080
add esp, 4
test eax, eax
jne 0x4ae134
mov dword [0x563454], 0
movsx edx, word [0x1102690]
and edx, 4
jne 0x4ae14a
mov dword [0x569250], 0
mov eax, dword [ebp - 0x114]
mov dword [0x5fda54], eax
cmp dword [0x5fdb24], 1
jne 0x4ae165
xor eax, eax
jmp 0x4ae535
push 2
call fcn.004f3670
add esp, 4
call fcn.004ae550
call fcn.004d00d0
push 2
call fcn.004b4790
add esp, 4
call fcn.004e81f0
push 0x50
push 0x31
push 0x5fd817
call fcn.005323e0
add esp, 0xc
mov dword [0x5fdbac], 0
push 3
mov ecx, dword [0x5c4c28]
imul ecx, ecx, 0x127c
add ecx, 0x11a6ec0
push ecx
call fcn.00460890
add esp, 8
movsx edx, ax
test edx, edx
jne 0x4ae329
mov eax, dword [0x5c4c28]
imul eax, eax, 0x127c
add eax, 0x11a6ec0
push eax
call fcn.0042a7a0
add esp, 4
test eax, eax
jne 0x4ae329
mov ecx, dword [0x5fdb08]
push ecx
push 0x1102600
call fcn.0042cd90
add esp, 8
mov dword [ebp - 0x11c], eax
cmp dword [ebp - 0x11c], 0xffffffec
jg 0x4ae329
push 2
call fcn.004221d0
add esp, 4
mov word [ebp - 0x43c], ax
mov edx, dword [0xd88fdf]
imul edx, edx, 0x23280
movzx eax, word [edx + 0x746bc4]
push eax
mov ecx, dword [0xd88fdf]
imul ecx, ecx, 0x23280
movzx edx, word [ecx + 0x746bc2]
push edx
mov eax, dword [0xd88fdf]
imul eax, eax, 0x23280
movzx ecx, word [eax + 0x746bc0]
push ecx
push 0x572490
lea edx, [ebp - 0x110]
push edx
call fcn.00532706
add esp, 0x14
lea eax, [ebp - 0x110]
push eax
lea ecx, [ebp - 0x448]
push ecx
call fcn.004344f0
add esp, 8
lea edx, [ebp - 0x454]
push edx
lea eax, [ebp - 0x444]
push eax
lea ecx, [ebp - 0x438]
push ecx
movsx edx, word [ebp - 0x448]
push edx
call fcn.00434b50
add esp, 0x10
mov dword [ebp - 0x450], eax
lea eax, [ebp - 0x454]
push eax
lea ecx, [ebp - 0x444]
push ecx
lea edx, [ebp - 0x438]
push edx
movsx eax, word [ebp - 0x43c]
push eax
call fcn.00434b50
add esp, 0x10
mov dword [ebp - 0x440], eax
mov eax, dword [ebp - 0x450]
cdq
mov ecx, 7
idiv ecx
mov dword [ebp - 0x434], eax
mov eax, dword [ebp - 0x440]
cdq
mov ecx, 7
idiv ecx
mov dword [ebp - 0x44c], eax
mov edx, dword [ebp - 0x434]
cmp edx, dword [ebp - 0x44c]
je 0x4ae329
push 0
push 0x270f
push 0x1102600
call fcn.00475fb0
add esp, 0xc
push 1
call fcn.004f3670
add esp, 4
mov dword [0x577478], 0
cmp dword [0x5fdb24], 1
jne 0x4ae34d
xor eax, eax
jmp 0x4ae535
movsx eax, byte [0x658de0]
movsx ecx, byte [0x65ab60]
cmp eax, ecx
jne 0x4ae37b
cmp dword [0x5c6c1c], 0
jne 0x4ae37b
cmp dword [0x5fdb60], 0
jne 0x4ae37b
mov dword [0x5fdb3c], 1
movsx edx, word [0x60043c]
test edx, edx
je 0x4ae388
jmp 0x4ae3a0
push 2
push 0x64
push 0x278
push 0x164
push 0
call fcn.004d1100
add esp, 0x14
call fcn.004ddd50
cmp dword [0x5fdb24], 1
jne 0x4ae3b5
xor eax, eax
jmp 0x4ae535
cmp dword [0x5fd980], 1
jne 0x4ae3c0
jmp 0x4ae3a0
call fcn.004ddbf0
call fcn.004ca610
cmp dword [0x5fda38], 0x63
jne 0x4ae3d5
jmp 0x4ae3a0
movsx eax, byte [0x5f5338]
test eax, eax
je 0x4ae3e5
call fcn.004b2840
push 3
call fcn.004cab50
add esp, 4
push 2
call fcn.004f3670
add esp, 4
mov dword [0x577478], 1
call fcn.00483eb0
fld dword [ebp - 8]
fadd qword [0x54d1d0]
fcompp
fnstsw ax
test ah, 5
jp 0x4ae44d
push 0x5fd6d0
push 0x5fd6d1
push 0x5724a0
push str.MSG_Message_TooManyStudyHours
call fcn.00422b80
add esp, 0x10
push 0x5fd6d2
push 0x35c
push str.main_win
call fcn.00431ee0
add esp, 0xc
mov dword [0x572238], 1
push 2
call fcn.004b7af0
add esp, 4
push 2
call fcn.004f3670
add esp, 4
push 1
push 1
call fcn.004caf40
add esp, 8
push 0
call fcn.004ccb80
add esp, 4
cmp dword [0x5fdb24], 1
jne 0x4ae491
xor eax, eax
jmp 0x4ae535
call fcn.004f4570
push 0
push 0
call fcn.004caf40
add esp, 8
push 0x32
push 4
call fcn.004bd160
add esp, 8
mov dword [0x572238], 0
call fcn.00483eb0
fstp dword [0x5fda3c]
fld dword [0x5fda3c]
fstp dword [0x5fda40]
push 1
call fcn.004f3670
add esp, 4
call fcn.004f37e0
mov dword [0x577478], 0
call fcn.00484fa0
cmp dword [0x5fdb24], 1
jne 0x4ae4fa
xor eax, eax
jmp 0x4ae535
cmp dword [0x5fdb24], 1
jne 0x4ae507
xor eax, eax
jmp 0x4ae535
call fcn.004ae570
cmp dword [0x5fda38], 0
jne 0x4ae517
jmp 0x4ae4fa
cmp dword [0x5fda38], 0x63
jne 0x4ae525
jmp 0x4ae3a0
cmp dword [0x5fda38], 0
je 0x4ae533
jmp 0x4ae3d5
xor eax, eax
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.00532783
mov esp, ebp
pop ebp
ret