Function at 0x412118
Capabilities:
Check http status code
Get common file path
Get startup folder
Read .ini file
Set registry value

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x45f1a0
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x520
push esi
push edi
mov dword [ebp - 0x4f0], ecx
push 1
mov ecx, dword [ebp - 0x4f0]
call fcn.00453d7d
mov dword [ebp - 0x280], 2
mov dword [ebp - 0x128], 0xc8
mov dword [ebp - 0x11c], 1
lea ecx, [ebp - 0x27c]
call fcn.00402210
mov dword [ebp - 4], 0
lea ecx, [ebp - 0x124]
call fcn.00402210
mov byte [ebp - 4], 1
mov dword [ebp - 0x268], 1
lea ecx, [ebp - 0x264]
call fcn.00402210
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x120]
call fcn.00402210
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x14]
call fcn.00402210
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x10]
call fcn.00402210
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x24c]
call fcn.00402210
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x260]
call fcn.00402210
mov byte [ebp - 4], 7
mov al, byte [0x479718]
mov byte [ebp - 0x478], al
mov ecx, 0x7c
xor eax, eax
lea edi, [ebp - 0x477]
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
stosb byte es:[edi], al
push 0x1f4
lea ecx, [ebp - 0x478]
push ecx
push 0x13e
mov ecx, 0x479934
call fcn.0041c0a1
lea edx, [ebp - 0x478]
push edx
push 0x473310
lea eax, [ebp - 0x264]
push eax
call fcn.0044fdfe
add esp, 0xc
push 0x1f4
lea ecx, [ebp - 0x478]
push ecx
push 0x13f
mov ecx, 0x479934
call fcn.0041c0a1
lea edx, [ebp - 0x478]
push edx
push 0x473314
lea eax, [ebp - 0x120]
push eax
call fcn.0044fdfe
add esp, 0xc
push 0x1f4
lea ecx, [ebp - 0x478]
push ecx
push 0x140
mov ecx, 0x479934
call fcn.0041c0a1
lea edx, [ebp - 0x478]
push edx
push 0x473318
lea eax, [ebp - 0x14]
push eax
call fcn.0044fdfe
add esp, 0xc
push 0x1f4
lea ecx, [ebp - 0x478]
push ecx
push 0x13b
mov ecx, 0x479934
call fcn.0041c0a1
lea edx, [ebp - 0x478]
push edx
push 0x47331c
lea eax, [ebp - 0x10]
push eax
call fcn.0044fdfe
add esp, 0xc
push 0x1f4
lea ecx, [ebp - 0x478]
push ecx
push 0x13d
mov ecx, 0x479934
call fcn.0041c0a1
lea edx, [ebp - 0x478]
push edx
push 0x473320
lea eax, [ebp - 0x24c]
push eax
call fcn.0044fdfe
add esp, 0xc
push 0x1f4
lea ecx, [ebp - 0x478]
push ecx
push 0x13c
mov ecx, 0x479934
call fcn.0041c0a1
lea edx, [ebp - 0x478]
push edx
push 0x473324
lea eax, [ebp - 0x260]
push eax
call fcn.0044fdfe
add esp, 0xc
mov ecx, 0x479910
call fcn.00402270
push eax
mov ecx, dword [ebp - 0x280]
push ecx
push 0x473328
push 0x473338
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov dword [ebp - 0x280], eax
mov ecx, 0x479910
call fcn.00402270
push eax
mov edx, dword [ebp - 0x128]
push edx
push 0x473344
push 0x473354
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov dword [ebp - 0x128], eax
lea ecx, [ebp - 0x270]
call fcn.00402210
mov byte [ebp - 4], 8
push 0
push 5
lea eax, [ebp - 0x118]
push eax
push 0
call dword [sym.imp.SHELL32.dll_SHGetSpecialFolderPathA]
test eax, eax
je 0x4123cb
lea ecx, [ebp - 0x118]
push ecx
lea ecx, [ebp - 0x270]
call fcn.004552a9
mov edx, dword [ebp - 0x270]
push edx
push 0x473360
mov eax, dword [ebp - 0x4f0]
add eax, 0xc04
push eax
call fcn.0044fdfe
add esp, 0xc
mov ecx, dword [ebp - 0x4f0]
add ecx, 0xc04
call fcn.00402230
test eax, eax
je 0x412530
lea ecx, [ebp - 0x4a8]
call fcn.00402210
mov byte [ebp - 4], 9
push 0
push 5
lea ecx, [ebp - 0x118]
push ecx
push 0
call dword [sym.imp.SHELL32.dll_SHGetSpecialFolderPathA]
test eax, eax
je 0x41243c
lea edx, [ebp - 0x118]
push edx
lea ecx, [ebp - 0x4a8]
call fcn.004552a9
mov eax, dword [ebp - 0x4a8]
push eax
push 0x473370
mov ecx, dword [ebp - 0x4f0]
add ecx, 0xc04
push ecx
call fcn.0044fdfe
add esp, 0xc
mov dword [ebp - 0x494], 0x473384
lea edx, [ebp - 0x4a4]
push edx
push 0x20006
push 0
mov eax, dword [ebp - 0x494]
push eax
push SysReAllocString
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyExA]
mov dword [ebp - 0x498], eax
push 0
mov ecx, dword [ebp - 0x4f0]
add ecx, 0xc04
call fcn.004554dc
mov dword [ebp - 0x490], eax
mov ecx, dword [ebp - 0x490]
push ecx
call fcn.004431c0
add esp, 4
mov dword [ebp - 0x49c], eax
mov edx, dword [ebp - 0x49c]
push edx
mov eax, dword [ebp - 0x490]
push eax
push 1
push 0
push 0x4733ac
mov ecx, dword [ebp - 0x4a4]
push ecx
call dword [sym.imp.ADVAPI32.dll_RegSetValueExA]
mov dword [ebp - 0x4a0], eax
mov edx, dword [ebp - 0x4a4]
push edx
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov ecx, 0x479910
call fcn.00402270
push eax
push 0x4733b8
push 0x4733bc
push 0x4733cc
call dword [sym.imp.KERNEL32.dll_WritePrivateProfileStringA]
mov dword [ebp - 0x11c], 1
mov byte [ebp - 4], 8
lea ecx, [ebp - 0x4a8]
call fcn.00455120
jmp 0x412960
mov ecx, 0x479910
call fcn.00402270
push eax
push 0
push 0x4733d8
push 0x4733e8
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov dword [ebp - 0x11c], eax
mov dword [ebp - 0x4ac], 1
lea ecx, [ebp - 0x4b4]
call fcn.00402210
mov byte [ebp - 4], 0xa
mov eax, dword [ebp - 0x4f0]
add eax, 0xc04
push eax
lea ecx, [ebp - 0x4b4]
call fcn.00455259
lea ecx, [ebp - 0x4b4]
call fcn.00402880
sub eax, 4
push eax
lea ecx, [ebp - 0x4d8]
push ecx
lea ecx, [ebp - 0x4b4]
call fcn.0044fa23
mov dword [ebp - 0x4f4], eax
mov edx, dword [ebp - 0x4f4]
mov dword [ebp - 0x4f8], edx
mov byte [ebp - 4], 0xb
mov eax, dword [ebp - 0x4f8]
push eax
lea ecx, [ebp - 0x4b4]
call fcn.00455259
mov byte [ebp - 4], 0xa
lea ecx, [ebp - 0x4d8]
call fcn.00455120
lea ecx, [ebp - 0x4b4]
call fcn.00402880
mov dword [ebp - 0x4bc], eax
mov dword [ebp - 0x4b0], 1
jmp 0x412607
mov ecx, dword [ebp - 0x4b0]
add ecx, 1
mov dword [ebp - 0x4b0], ecx
cmp dword [ebp - 0x4b0], 6
jge 0x4126d6
push 1
lea edx, [ebp - 0x4dc]
push edx
lea ecx, [ebp - 0x4b4]
call fcn.0044f9a7
mov dword [ebp - 0x4fc], eax
mov eax, dword [ebp - 0x4fc]
mov ecx, dword [eax]
push ecx
push 0x4733f4
lea edx, [ebp - 0x4b8]
push edx
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0xc
lea ecx, [ebp - 0x4dc]
call fcn.00455120
movsx eax, byte [ebp - 0x4b8]
cmp eax, 0x30
jl 0x41266f
movsx ecx, byte [ebp - 0x4b8]
cmp ecx, 0x39
jle 0x41267b
mov dword [ebp - 0x4ac], 0
jmp 0x4126d6
mov edx, dword [ebp - 0x4bc]
sub edx, dword [ebp - 0x4b0]
push edx
lea eax, [ebp - 0x4e0]
push eax
lea ecx, [ebp - 0x4b4]
call fcn.0044fa23
mov dword [ebp - 0x500], eax
mov ecx, dword [ebp - 0x500]
mov dword [ebp - 0x504], ecx
mov byte [ebp - 4], 0xc
mov edx, dword [ebp - 0x504]
push edx
lea ecx, [ebp - 0x4b4]
call fcn.00455259
mov byte [ebp - 4], 0xa
lea ecx, [ebp - 0x4e0]
call fcn.00455120
jmp 0x4125f8
cmp dword [ebp - 0x4ac], 0
jne 0x412814
cmp dword [ebp - 0x11c], 0
je 0x412814
push 0x2e
mov ecx, dword [ebp - 0x4f0]
add ecx, 0xc04
call fcn.0044fa9b
mov dword [ebp - 0x4c8], eax
mov eax, dword [ebp - 0x4c8]
push eax
lea ecx, [ebp - 0x4c0]
push ecx
mov ecx, dword [ebp - 0x4f0]
add ecx, 0xc04
call fcn.0044fa23
mov byte [ebp - 4], 0xd
push 0x4733f8
lea ecx, [ebp - 0x4c0]
call fcn.00455488
lea ecx, [ebp - 0x4c4]
call fcn.00402210
mov byte [ebp - 4], 0xe
mov edx, dword [ebp - 0x11c]
push edx
push 0x473400
lea eax, [ebp - 0x4c4]
push eax
call fcn.0044fdfe
add esp, 0xc
lea ecx, [ebp - 0x4c0]
call fcn.00402880
mov esi, eax
lea ecx, [ebp - 0x4c4]
call fcn.00402880
sub esi, eax
push esi
lea ecx, [ebp - 0x4e4]
push ecx
lea ecx, [ebp - 0x4c0]
call fcn.0044fa23
mov dword [ebp - 0x508], eax
mov edx, dword [ebp - 0x508]
mov dword [ebp - 0x50c], edx
mov byte [ebp - 4], 0xf
mov eax, dword [ebp - 0x50c]
push eax
lea ecx, [ebp - 0x4c0]
call fcn.00455259
mov byte [ebp - 4], 0xe
lea ecx, [ebp - 0x4e4]
call fcn.00455120
mov ecx, dword [ebp - 0x11c]
push ecx
mov edx, dword [ebp - 0x4c0]
push edx
push 0x473404
mov eax, dword [ebp - 0x4f0]
add eax, 0xc04
push eax
call fcn.0044fdfe
add esp, 0x10
mov byte [ebp - 4], 0xd
lea ecx, [ebp - 0x4c4]
call fcn.00455120
mov byte [ebp - 4], 0xa
lea ecx, [ebp - 0x4c0]
call fcn.00455120
jmp 0x412951
cmp dword [ebp - 0x4ac], 0
je 0x412951
cmp dword [ebp - 0x11c], 0
je 0x412951
push 0x2e
mov ecx, dword [ebp - 0x4f0]
add ecx, 0xc04
call fcn.0044fa9b
mov dword [ebp - 0x4d4], eax
mov ecx, dword [ebp - 0x4d4]
sub ecx, 5
push ecx
lea edx, [ebp - 0x4cc]
push edx
mov ecx, dword [ebp - 0x4f0]
add ecx, 0xc04
call fcn.0044fa23
mov byte [ebp - 4], 0x10
push 0x473410
lea ecx, [ebp - 0x4cc]
call fcn.00455488
lea ecx, [ebp - 0x4d0]
call fcn.00402210
mov byte [ebp - 4], 0x11
mov eax, dword [ebp - 0x11c]
push eax
push 0x473418
lea ecx, [ebp - 0x4d0]
push ecx
call fcn.0044fdfe
add esp, 0xc
lea ecx, [ebp - 0x4cc]
call fcn.00402880
mov esi, eax
lea ecx, [ebp - 0x4d0]
call fcn.00402880
sub esi, eax
push esi
lea edx, [ebp - 0x4e8]
push edx
lea ecx, [ebp - 0x4cc]
call fcn.0044fa23
mov dword [ebp - 0x510], eax
mov eax, dword [ebp - 0x510]
mov dword [ebp - 0x514], eax
mov byte [ebp - 4], 0x12
mov ecx, dword [ebp - 0x514]
push ecx
lea ecx, [ebp - 0x4cc]
call fcn.00455259
mov byte [ebp - 4], 0x11
lea ecx, [ebp - 0x4e8]
call fcn.00455120
mov edx, dword [ebp - 0x11c]
push edx
mov eax, dword [ebp - 0x4cc]
push eax
push 0x47341c
mov ecx, dword [ebp - 0x4f0]
add ecx, 0xc04
push ecx
call fcn.0044fdfe
add esp, 0x10
mov byte [ebp - 4], 0x10
lea ecx, [ebp - 0x4d0]
call fcn.00455120
mov byte [ebp - 4], 0xa
lea ecx, [ebp - 0x4cc]
call fcn.00455120
mov byte [ebp - 4], 8
lea ecx, [ebp - 0x4b4]
call fcn.00455120
lea ecx, [ebp - 0x248]
call fcn.004076a0
lea ecx, [ebp - 0x484]
call fcn.00402500
mov byte [ebp - 4], 0x13
mov ecx, dword [ebp - 0x4f0]
call fcn.004028d0
mov dword [ebp - 0x48c], eax
mov edx, dword [ebp - 0x48c]
push edx
mov ecx, dword [ebp - 0x4f0]
add ecx, 0xb50
call fcn.00402700
mov eax, dword [ebp - 0x48c]
push eax
mov ecx, dword [ebp - 0x4f0]
call fcn.004028f0
mov ecx, dword [ebp - 0x280]
mov dword [ebp - 0x518], ecx
cmp dword [ebp - 0x518], 0
je 0x4129e9
cmp dword [ebp - 0x518], 1
je 0x412acd
cmp dword [ebp - 0x518], 2
je 0x412b9e
jmp 0x412c67
lea edx, [ebp - 0x264]
push edx
mov ecx, dword [ebp - 0x4f0]
add ecx, 0xc00
call fcn.00455259
mov eax, dword [ebp - 0x4f0]
mov dword [eax + 0x998], 0
push 5
mov ecx, dword [ebp - 0x4f0]
add ecx, 0x424
call fcn.004548a9
push 0
mov ecx, dword [ebp - 0x4f0]
add ecx, 0x370
call fcn.004548a9
push 0
mov ecx, dword [ebp - 0x4f0]
add ecx, 0x2f8
call fcn.004548a9
push 1
mov ecx, dword [ebp - 0x4f0]
add ecx, 0x424
call fcn.0041b970
push 0x473428
lea ecx, [ebp - 0x484]
call fcn.00402570
push 0
mov ecx, dword [ebp - 0x4f0]
add ecx, 0x67c
call fcn.004548a9
push 0
mov ecx, dword [ebp - 0x4f0]
add ecx, 0x514
call fcn.004548a9
push 5
mov ecx, dword [ebp - 0x4f0]
add ecx, 0x5c8
call fcn.004548a9
mov ecx, dword [ebp - 0x4f0]
cmp dword [ecx + 0xb80], 0
je 0x412ac8
push 1
mov ecx, dword [ebp - 0x4f0]
add ecx, 0xb64
call fcn.004548eb
jmp 0x412c67
lea edx, [ebp - 0x120]
push edx
mov ecx, dword [ebp - 0x4f0]
add ecx, 0xc00
call fcn.00455259
mov eax, dword [ebp - 0x4f0]
mov dword [eax + 0x998], 1
push 0
mov ecx, dword [ebp - 0x4f0]
add ecx, 0x424
call fcn.004548a9
push 0
mov ecx, dword [ebp - 0x4f0]
add ecx, 0x370
call fcn.004548a9
push 5
mov ecx, dword [ebp - 0x4f0]
add ecx, 0x2f8
call fcn.004548a9
push 0x473438
lea ecx, [ebp - 0x484]
call fcn.00402570
push 0
mov ecx, dword [ebp - 0x4f0]
add ecx, 0x67c
call fcn.004548a9
push 5
mov ecx, dword [ebp - 0x4f0]
add ecx, 0x514
call fcn.004548a9
push 0
mov ecx, dword [ebp - 0x4f0]
add ecx, 0x5c8
call fcn.004548a9
mov ecx, dword [ebp - 0x4f0]
cmp dword [ecx + 0xb80], 0
je 0x412b99
push 1
mov ecx, dword [ebp - 0x4f0]
add ecx, 0xb64
call fcn.004548eb
jmp 0x412c67
lea edx, [ebp - 0x14]
push edx
mov ecx, dword [ebp - 0x4f0]
add ecx, 0xc00
call fcn.00455259
mov eax, dword [ebp - 0x4f0]
mov dword [eax + 0x998], 0
push 0
mov ecx, dword [ebp - 0x4f0]
add ecx, 0x424
call fcn.004548a9
push 5
mov ecx, dword [ebp - 0x4f0]
add ecx, 0x370
call fcn.004548a9
push 0
mov ecx, dword [ebp - 0x4f0]
add ecx, 0x2f8
call fcn.004548a9
push 0x473448
lea ecx, [ebp - 0x484]
call fcn.00402570
push 5
mov ecx, dword [ebp - 0x4f0]
add ecx, 0x67c
call fcn.004548a9
push 0
mov ecx, dword [ebp - 0x4f0]
add ecx, 0x514
call fcn.004548a9
push 0
mov ecx, dword [ebp - 0x4f0]
add ecx, 0x5c8
call fcn.004548a9
mov ecx, dword [ebp - 0x4f0]
cmp dword [ecx + 0xb80], 0
je 0x412c67
push 0
mov ecx, dword [ebp - 0x4f0]
add ecx, 0xb64
call fcn.004548eb
mov edx, dword [ebp - 0x4f0]
mov dword [edx + 0xc3c], 1
mov eax, dword [ebp - 0x4f0]
mov dword [eax + 0xc2c], 0
mov ecx, dword [ebp - 0x4f0]
mov dword [ecx + 0xc30], 1
push 0x75
push 0x139
push 0x5d
push 0x121
lea ecx, [ebp - 0x248]
call fcn.0041b530
lea edx, [ebp - 0x484]
push edx
mov ecx, dword [ebp - 0x4f0]
add ecx, 0xb50
call fcn.00402760
mov dword [ebp - 0x130], eax
push 0xcc0020
push 0
push 0
mov eax, dword [ebp - 0x4f0]
add eax, 0xb50
push eax
lea ecx, [ebp - 0x248]
call fcn.004076d0
push eax
lea ecx, [ebp - 0x248]
call fcn.004076b0
push eax
mov ecx, dword [ebp - 0x244]
push ecx
mov edx, dword [ebp - 0x248]
push edx
mov ecx, dword [ebp - 0x4f0]
add ecx, 0xc4
call fcn.00402800
mov eax, dword [ebp - 0x130]
push eax
mov ecx, dword [ebp - 0x4f0]
add ecx, 0xb50
call fcn.00402760
lea ecx, [ebp - 0x484]
call fcn.00458680
mov ecx, dword [ebp - 0x128]
mov dword [ebp - 0x51c], ecx
cmp dword [ebp - 0x51c], 0x64
je 0x412d6c
cmp dword [ebp - 0x51c], 0xc8
je 0x412d86
cmp dword [ebp - 0x51c], 0x12c
je 0x412d9d
jmp 0x412db5
lea edx, [ebp - 0x24c]
push edx
mov ecx, dword [ebp - 0x4f0]
add ecx, 0xc08
call fcn.00455259
jmp 0x412db5
lea eax, [ebp - 0x10]
push eax
mov ecx, dword [ebp - 0x4f0]
add ecx, 0xc08
call fcn.00455259
jmp 0x412db5
lea ecx, [ebp - 0x260]
push ecx
mov ecx, dword [ebp - 0x4f0]
add ecx, 0xc08
call fcn.00455259
mov dword [ebp - 0x134], 0xf
mov ecx, 0x479910
call fcn.00402270
push eax
mov edx, dword [ebp - 0x134]
push edx
push 0x473458
push 0x473464
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov dword [ebp - 0x134], eax
mov eax, dword [ebp - 0x4f0]
mov ecx, dword [ebp - 0x134]
mov dword [eax + 0xc14], ecx
mov edx, dword [ebp - 0x4f0]
cmp dword [edx + 0xc14], 0
jle 0x412e3c
mov eax, dword [ebp - 0x4f0]
mov dword [eax + 0xc18], 1
mov ecx, dword [ebp - 0x4f0]
mov edx, dword [ecx + 0xc18]
push edx
push 0x3fd
mov ecx, dword [ebp - 0x4f0]
call fcn.004546e9
mov ecx, eax
call fcn.004548eb
mov eax, dword [ebp - 0x4f0]
mov ecx, dword [ebp - 0x4f0]
mov edx, dword [ecx + 0xc18]
mov dword [eax + 0x4c], edx
mov dword [ebp - 0x12c], 2
mov ecx, 0x479910
call fcn.00402270
push eax
mov eax, dword [ebp - 0x12c]
push eax
push 0x473470
push 0x473480
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov dword [ebp - 0x12c], eax
lea ecx, [ebp - 0x25c]
call fcn.00402500
mov byte [ebp - 4], 0x14
lea ecx, [ebp - 0x254]
call fcn.00402500
mov byte [ebp - 4], 0x15
mov ecx, dword [ebp - 0x12c]
mov dword [ebp - 0x520], ecx
cmp dword [ebp - 0x520], 0
je 0x412ed5
cmp dword [ebp - 0x520], 1
je 0x412fe7
cmp dword [ebp - 0x520], 2
je 0x4130e6
jmp 0x4131dd
lea edx, [ebp - 0x264]
push edx
mov ecx, dword [ebp - 0x4f0]
add ecx, 0xc0c
call fcn.00455259
mov eax, dword [ebp - 0x4f0]
mov dword [eax + 0x99c], 0
push 5
mov ecx, dword [ebp - 0x4f0]
add ecx, 0x49c
call fcn.004548a9
push 0
mov ecx, dword [ebp - 0x4f0]
add ecx, 0x3e8
call fcn.004548a9
push 0
mov ecx, dword [ebp - 0x4f0]
add ecx, 0x334
call fcn.004548a9
push 1
mov ecx, dword [ebp - 0x4f0]
add ecx, 0x49c
call fcn.0041b970
mov ecx, dword [ebp - 0x4f0]
mov dword [ecx + 0xb8], 0
push 5
mov ecx, dword [ebp - 0x4f0]
add ecx, 0x7c
call fcn.004548a9
push 1
mov ecx, dword [ebp - 0x4f0]
add ecx, 0x7c
call fcn.004548eb
push 0
mov ecx, dword [ebp - 0x4f0]
add ecx, 0x7c
call fcn.0041b970
push 0x47348c
lea ecx, [ebp - 0x254]
call fcn.00402570
push 0x47349c
lea ecx, [ebp - 0x25c]
call fcn.00402570
push 0
mov ecx, dword [ebp - 0x4f0]
add ecx, 0x6b8
call fcn.004548a9
push 0
mov ecx, dword [ebp - 0x4f0]
add ecx, 0x550
call fcn.004548a9
push 5
mov ecx, dword [ebp - 0x4f0]
add ecx, 0x604
call fcn.004548a9
jmp 0x4131dd
lea edx, [ebp - 0x120]
push edx
mov ecx, dword [ebp - 0x4f0]
add ecx, 0xc0c
call fcn.00455259
mov eax, dword [ebp - 0x4f0]
mov dword [eax + 0x99c], 1
push 0
mov ecx, dword [ebp - 0x4f0]
add ecx, 0x49c
call fcn.004548a9
push 0
mov ecx, dword [ebp - 0x4f0]
add ecx, 0x3e8
call fcn.004548a9
push 5
mov ecx, dword [ebp - 0x4f0]
add ecx, 0x334
call fcn.004548a9
mov ecx, dword [ebp - 0x4f0]
mov dword [ecx + 0xb8], 0
push 5
mov ecx, dword [ebp - 0x4f0]
add ecx, 0x7c
call fcn.004548a9
push 1
mov ecx, dword [ebp - 0x4f0]
add ecx, 0x7c
call fcn.004548eb
push 0
mov ecx, dword [ebp - 0x4f0]
add ecx, 0x7c
call fcn.0041b970
push 0x4734ac
lea ecx, [ebp - 0x254]
call fcn.00402570
push 0x4734bc
lea ecx, [ebp - 0x25c]
call fcn.00402570
push 0
mov ecx, dword [ebp - 0x4f0]
add ecx, 0x6b8
call fcn.004548a9
push 5
mov ecx, dword [ebp - 0x4f0]
add ecx, 0x550
call fcn.004548a9
push 0
mov ecx, dword [ebp - 0x4f0]
add ecx, 0x604
call fcn.004548a9
jmp 0x4131dd
lea edx, [ebp - 0x14]
push edx
mov ecx, dword [ebp - 0x4f0]
add ecx, 0xc0c
call fcn.00455259
mov eax, dword [ebp - 0x4f0]
mov dword [eax + 0x99c], 0
push 0
mov ecx, dword [ebp - 0x4f0]
add ecx, 0x49c
call fcn.004548a9
push 5
mov ecx, dword [ebp - 0x4f0]
add ecx, 0x3e8
call fcn.004548a9
push 0
mov ecx, dword [ebp - 0x4f0]
add ecx, 0x334
call fcn.004548a9
push 5
mov ecx, dword [ebp - 0x4f0]
add ecx, 0x7c
call fcn.004548a9
push 0
mov ecx, dword [ebp - 0x4f0]
add ecx, 0x7c
call fcn.004548eb
push 0
mov ecx, dword [ebp - 0x4f0]
add ecx, 0x7c
call fcn.0041b970
push 0x4734cc
lea ecx, [ebp - 0x254]
call fcn.00402570
mov ecx, dword [ebp - 0x4f0]
mov dword [ecx + 0xb8], 0
push 0x4734dc
lea ecx, [ebp - 0x25c]
call fcn.00402570
push 5
mov ecx, dword [ebp - 0x4f0]
add ecx, 0x6b8
call fcn.004548a9
push 0
mov ecx, dword [ebp - 0x4f0]
add ecx, 0x550
call fcn.004548a9
push 0
mov ecx, dword [ebp - 0x4f0]
add ecx, 0x604
call fcn.004548a9
mov edx, dword [ebp - 0x4f0]
mov dword [edx + 0xc44], 1
mov eax, dword [ebp - 0x4f0]
mov dword [eax + 0xc28], 0
mov ecx, dword [ebp - 0x4f0]
mov dword [ecx + 0xc38], 1
push 0x111
push 0x137
push 0xfd
push 0x11f
lea ecx, [ebp - 0x248]
call fcn.0041b530
lea edx, [ebp - 0x25c]
push edx
mov ecx, dword [ebp - 0x4f0]
add ecx, 0xb50
call fcn.00402760
mov dword [ebp - 0x130], eax
push 0xcc0020
push 0
push 0
mov eax, dword [ebp - 0x4f0]
add eax, 0xb50
push eax
lea ecx, [ebp - 0x248]
call fcn.004076d0
push eax
lea ecx, [ebp - 0x248]
call fcn.004076b0
push eax
mov ecx, dword [ebp - 0x244]
push ecx
mov edx, dword [ebp - 0x248]
push edx
mov ecx, dword [ebp - 0x4f0]
add ecx, 0xc4
call fcn.00402800
mov eax, dword [ebp - 0x130]
push eax
mov ecx, dword [ebp - 0x4f0]
add ecx, 0xb50
call fcn.00402760
lea ecx, [ebp - 0x25c]
call fcn.00458680
mov dword [ebp - 0x488], 2
mov ecx, 0x479910
call fcn.00402270
push eax
mov ecx, dword [ebp - 0x488]
push ecx
push 0x4734ec
push 0x4734fc
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov dword [ebp - 0x488], eax
lea ecx, [ebp - 0x278]
call fcn.00402500
mov byte [ebp - 4], 0x16
mov edx, dword [ebp - 0x488]
mov dword [ebp - 0x524], edx
cmp dword [ebp - 0x524], 0
je 0x41332e
cmp dword [ebp - 0x524], 1
je 0x4133f0
cmp dword [ebp - 0x524], 2
je 0x41349f
jmp 0x413546
lea eax, [ebp - 0x264]
push eax
mov ecx, dword [ebp - 0x4f0]
add ecx, 0xc10
call fcn.00455259
mov ecx, dword [ebp - 0x4f0]
mov dword [ecx + 0x994], 0
push 5
mov ecx, dword [ebp - 0x4f0]
add ecx, 0x460
call fcn.004548a9
push 0
mov ecx, dword [ebp - 0x4f0]
add ecx, 0x3ac
call fcn.004548a9
push 0
mov ecx, dword [ebp - 0x4f0]
add ecx, 0x2bc
call fcn.004548a9
push 1
mov ecx, dword [ebp - 0x4f0]
add ecx, 0x460
call fcn.0041b970
push 0x473508
lea ecx, [ebp - 0x278]
call fcn.00402570
push 0
mov ecx, dword [ebp - 0x4f0]
add ecx, 0x6f4
call fcn.004548a9
push 0
mov ecx, dword [ebp - 0x4f0]
add ecx, 0x58c
call fcn.004548a9
push 5
mov ecx, dword [ebp - 0x4f0]
add ecx, 0x640
call fcn.004548a9
jmp 0x413546
lea edx, [ebp - 0x120]
push edx
mov ecx, dword [ebp - 0x4f0]
add ecx, 0xc10
call fcn.00455259
mov eax, dword [ebp - 0x4f0]
mov dword [eax + 0x994], 1
push 0
mov ecx, dword [ebp - 0x4f0]
add ecx, 0x460
call fcn.004548a9
push 0
mov ecx, dword [ebp - 0x4f0]
add ecx, 0x3ac
call fcn.004548a9
push 5
mov ecx, dword [ebp - 0x4f0]
add ecx, 0x2bc
call fcn.004548a9
push 0x473518
lea ecx, [ebp - 0x278]
call fcn.00402570
push 0
mov ecx, dword [ebp - 0x4f0]
add ecx, 0x6f4
call fcn.004548a9
push 5
mov ecx, dword [ebp - 0x4f0]
add ecx, 0x58c
call fcn.004548a9
push 0
mov ecx, dword [ebp - 0x4f0]
add ecx, 0x640
call fcn.004548a9
jmp 0x413546
lea ecx, [ebp - 0x14]
push ecx
mov ecx, dword [ebp - 0x4f0]
add ecx, 0xc10
call fcn.00455259
mov edx, dword [ebp - 0x4f0]
mov dword [edx + 0x994], 0
push 0
mov ecx, dword [ebp - 0x4f0]
add ecx, 0x460
call fcn.004548a9
push 5
mov ecx, dword [ebp - 0x4f0]
add ecx, 0x3ac
call fcn.004548a9
push 0
mov ecx, dword [ebp - 0x4f0]
add ecx, 0x2bc
call fcn.004548a9
push 0x473528
lea ecx, [ebp - 0x278]
call fcn.00402570
push 5
mov ecx, dword [ebp - 0x4f0]
add ecx, 0x6f4
call fcn.004548a9
push 0
mov ecx, dword [ebp - 0x4f0]
add ecx, 0x58c
call fcn.004548a9
push 0
mov ecx, dword [ebp - 0x4f0]
add ecx, 0x640
call fcn.004548a9
mov eax, dword [ebp - 0x4f0]
mov dword [eax + 0xc24], 1
mov ecx, dword [ebp - 0x4f0]
mov dword [ecx + 0xc34], 1
mov edx, dword [ebp - 0x4f0]
mov dword [edx + 0xc40], 1
push 0xc5
push 0x137
push 0xad
push 0x11f
lea ecx, [ebp - 0x248]
call fcn.0041b530
lea eax, [ebp - 0x278]
push eax
mov ecx, dword [ebp - 0x4f0]
add ecx, 0xb50
call fcn.00402760
mov dword [ebp - 0x130], eax
push 0xcc0020
push 0
push 0
mov ecx, dword [ebp - 0x4f0]
add ecx, 0xb50
push ecx
lea ecx, [ebp - 0x248]
call fcn.004076d0
push eax
lea ecx, [ebp - 0x248]
call fcn.004076b0
push eax
mov edx, dword [ebp - 0x244]
push edx
mov eax, dword [ebp - 0x248]
push eax
mov ecx, dword [ebp - 0x4f0]
add ecx, 0xc4
call fcn.00402800
mov ecx, dword [ebp - 0x130]
push ecx
mov ecx, dword [ebp - 0x4f0]
add ecx, 0xb50
call fcn.00402760
lea ecx, [ebp - 0x278]
call fcn.00458680
mov edx, dword [ebp - 0x4f0]
cmp dword [edx + 0xb54], 0
je 0x413643
mov ecx, dword [ebp - 0x4f0]
add ecx, 0xb50
call fcn.00457e57
push 1
mov ecx, dword [ebp - 0x4f0]
call fcn.00402940
mov ecx, dword [ebp - 0x4f0]
call fcn.00415cad
mov ecx, 0x479910
call fcn.00402270
push eax
push 0x100
lea eax, [ebp - 0x238]
push eax
push 0x47971c
push 0x473538
push 0x473540
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
push ecx
mov ecx, esp
mov dword [ebp - 0x4ec], esp
lea edx, [ebp - 0x238]
push edx
call fcn.0045518e
mov dword [ebp - 0x528], eax
mov ecx, dword [ebp - 0x4f0]
add ecx, 0x918
call fcn.00406103
mov word [ebp - 0x52c], ax
mov eax, dword [ebp - 0x52c]
and eax, 0xffff
mov ecx, dword [ebp - 0x4f0]
mov dword [ecx + 0xc20], eax
mov ecx, dword [ebp - 0x4f0]
call fcn.00413dfe
push 0
mov ecx, dword [ebp - 0x4f0]
call fcn.00453d7d
mov ecx, 0x479910
call fcn.00402270
push eax
push 0
push 0x47354c
push 0x473558
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov dword [ebp - 0x47c], eax
mov ecx, 0x479910
call fcn.00402270
push eax
push 0
push 0x473560
push 0x47356c
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov dword [ebp - 0x26c], eax
cmp dword [ebp - 0x47c], 1
jne 0x413778
mov edx, dword [ebp - 0x4f0]
mov dword [edx + 0xba0], 0
mov eax, dword [ebp - 0x4f0]
mov ecx, dword [eax + 0xba0]
push ecx
mov ecx, dword [ebp - 0x4f0]
call fcn.00418b40
mov edx, dword [ebp - 0x26c]
push edx
mov ecx, dword [ebp - 0x4f0]
add ecx, 0xb64
call fcn.0041b970
mov ecx, 0x479910
call fcn.00402270
push eax
push 0
push 0x473578
push 0x47358c
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov dword [ebp - 0x284], eax
mov ecx, 0x479910
call fcn.00402270
push eax
push 0
push 0x473594
push 0x4735a4
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov dword [ebp - 0x138], eax
cmp dword [ebp - 0x284], 1
jne 0x4137f1
mov eax, dword [ebp - 0x138]
push eax
mov ecx, dword [ebp - 0x4f0]
add ecx, 0x4d8
call fcn.0041b970
mov ecx, dword [ebp - 0x4f0]
mov edx, dword [ebp - 0x138]
mov dword [ecx + 0xba4], edx
mov byte [ebp - 4], 0x15
lea ecx, [ebp - 0x278]
call fcn.00402550
mov byte [ebp - 4], 0x14
lea ecx, [ebp - 0x254]
call fcn.00402550
mov byte [ebp - 4], 0x13
lea ecx, [ebp - 0x25c]
call fcn.00402550
mov byte [ebp - 4], 8
lea ecx, [ebp - 0x484]
call fcn.00402550
mov byte [ebp - 4], 7
lea ecx, [ebp - 0x270]
call fcn.00455120
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x260]
call fcn.00455120
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x24c]
call fcn.00455120
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x10]
call fcn.00455120
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x14]
call fcn.00455120
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x120]
call fcn.00455120
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x264]
call fcn.00455120
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x124]
call fcn.00455120
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x27c]
call fcn.00455120
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop edi
pop esi
mov esp, ebp
pop ebp
ret