Function at 0x5eb368
Capabilities:
Read .ini file

Disassembly:
push ebp
mov ebp, esp
add esp, 0xfffff29c
mov eax, 0x69d2ab
xor edx, edx
push ebx
push esi
push edi
mov ebx, dword [ebp + 0xc]
mov esi, dword [ebp + 8]
mov dword [ebp - 0xe8], 0x6e4fec
mov dword [ebp - 0xe4], esp
mov dword [ebp - 0xec], eax
mov word [ebp - 0xe0], 0
mov dword [ebp - 0xd4], edx
mov ecx, dword fs:[0]
mov dword [ebp - 0xf0], ecx
lea eax, [ebp - 0xf0]
mov dword fs:[0], eax
mov edx, dword [ebp + 0x14]
push edx
mov ecx, dword [ebp + 0x10]
mov eax, dword [ecx + 8]
push eax
push 0x6dd004
push 0x6dcffc
lea edx, [ebp - 0x40c]
push edx
call fcn.006a0ad0
add esp, 0x14
mov word [ebp - 0xe0], 8
push 0xa
lea ecx, [ebp - 0xc20]
push ecx
mov eax, dword [ebp + 0x14]
push eax
call fcn.006a55f4
add esp, 0xc
lea edx, [ebp - 0xf8]
lea ecx, [ebp - 0x10]
push eax
push edx
push 0x6dd00a
push ecx
call fcn.0069a6ec
add esp, 0xc
push eax
inc dword [ebp - 0xd4]
mov eax, dword [ebp + 0x10]
push eax
lea edx, [ebp - 0x20]
push edx
call fcn.00408da0
add esp, 0xc
lea ecx, [ebp - 0x20]
push ecx
inc dword [ebp - 0xd4]
lea eax, [ebp - 0x30]
push eax
call fcn.00409058
add esp, 0xc
lea edx, [ebp - 0x30]
push edx
inc dword [ebp - 0xd4]
push ebx
call fcn.0069a2e0
add esp, 8
dec dword [ebp - 0xd4]
mov ecx, dword [ebp - 0x28]
test ecx, ecx
je 0x5eb515
mov eax, dword [ebp - 0x28]
mov edx, dword [eax - 0xc]
inc edx
test edx, edx
je 0x5eb4c7
mov ecx, dword [ebp - 0x28]
add ecx, 0xfffffff4
mov dword [ebp - 0xfc], ecx
mov eax, 0x6ff36c
mov edx, dword [ebp - 0xfc]
cmp eax, edx
je 0x5eb4be
mov ecx, 0x6ff36c
mov eax, dword [ebp - 0xfc]
cmp ecx, eax
je 0x5eb4b7
mov edx, dword [ebp - 0xfc]
push edx
call sub.KERNEL32.DLL_InterlockedDecrement
mov ecx, dword [ebp - 0xfc]
mov eax, dword [ecx]
inc eax
jmp 0x5eb4c3
mov eax, 1
jmp 0x5eb4c3
mov eax, 1
test eax, eax
jne 0x5eb515
mov edx, dword [ebp - 0x28]
add edx, 0xfffffff4
mov dword [ebp - 0x100], edx
mov ecx, dword [ebp - 0x28]
add ecx, 0xfffffff4
mov dword [ebp - 0x104], ecx
mov eax, dword [ebp - 0x104]
push eax
call fcn.0067ac7c
pop ecx
xor edx, edx
mov dword [ebp - 0x108], edx
lea eax, [ebp - 0x30]
mov ecx, dword [ebp - 0x108]
mov dword [ebp - 0x28], ecx
mov dword [ebp - 0x10c], eax
mov edx, dword [ebp - 0x10c]
mov ecx, dword [edx + 8]
mov dword [ebp - 0xc28], ecx
dec dword [ebp - 0xd4]
mov eax, dword [ebp - 0x18]
test eax, eax
je 0x5eb5d0
mov edx, dword [ebp - 0x18]
mov ecx, dword [edx - 0xc]
inc ecx
test ecx, ecx
je 0x5eb582
mov eax, dword [ebp - 0x18]
add eax, 0xfffffff4
mov dword [ebp - 0x110], eax
mov edx, 0x6ff36c
mov ecx, dword [ebp - 0x110]
cmp edx, ecx
je 0x5eb579
mov eax, 0x6ff36c
mov edx, dword [ebp - 0x110]
cmp eax, edx
je 0x5eb572
mov ecx, dword [ebp - 0x110]
push ecx
call sub.KERNEL32.DLL_InterlockedDecrement
mov eax, dword [ebp - 0x110]
mov edx, dword [eax]
inc edx
jmp 0x5eb57e
mov edx, 1
jmp 0x5eb57e
mov edx, 1
test edx, edx
jne 0x5eb5d0
mov eax, dword [ebp - 0x18]
add eax, 0xfffffff4
mov dword [ebp - 0x114], eax
mov ecx, dword [ebp - 0x18]
add ecx, 0xfffffff4
mov dword [ebp - 0x118], ecx
mov eax, dword [ebp - 0x118]
push eax
call fcn.0067ac7c
pop ecx
xor edx, edx
mov dword [ebp - 0x11c], edx
lea eax, [ebp - 0x20]
mov ecx, dword [ebp - 0x11c]
mov dword [ebp - 0x18], ecx
mov dword [ebp - 0x120], eax
mov edx, dword [ebp - 0x120]
mov ecx, dword [edx + 8]
mov dword [ebp - 0xc38], ecx
dec dword [ebp - 0xd4]
mov eax, dword [ebp - 8]
test eax, eax
je 0x5eb68b
mov edx, dword [ebp - 8]
mov ecx, dword [edx - 0xc]
inc ecx
test ecx, ecx
je 0x5eb63d
mov eax, dword [ebp - 8]
add eax, 0xfffffff4
mov dword [ebp - 0x124], eax
mov edx, 0x6ff36c
mov ecx, dword [ebp - 0x124]
cmp edx, ecx
je 0x5eb634
mov eax, 0x6ff36c
mov edx, dword [ebp - 0x124]
cmp eax, edx
je 0x5eb62d
mov ecx, dword [ebp - 0x124]
push ecx
call sub.KERNEL32.DLL_InterlockedDecrement
mov eax, dword [ebp - 0x124]
mov edx, dword [eax]
inc edx
jmp 0x5eb639
mov edx, 1
jmp 0x5eb639
mov edx, 1
test edx, edx
jne 0x5eb68b
mov eax, dword [ebp - 8]
add eax, 0xfffffff4
mov dword [ebp - 0x128], eax
mov ecx, dword [ebp - 8]
add ecx, 0xfffffff4
mov dword [ebp - 0x12c], ecx
mov eax, dword [ebp - 0x12c]
push eax
call fcn.0067ac7c
pop ecx
xor edx, edx
mov dword [ebp - 0x130], edx
lea eax, [ebp - 0x10]
mov ecx, dword [ebp - 0x130]
mov dword [ebp - 8], ecx
mov dword [ebp - 0x134], eax
mov edx, dword [ebp - 0x134]
mov ecx, dword [edx + 8]
mov dword [ebp - 0xc48], ecx
mov eax, dword [esi + 0x30]
lea edx, [ebp - 0xc0c]
push eax
push 0x800
push edx
push 0x6dd015
lea ecx, [ebp - 0x40c]
push 0x6dd00c
push ecx
call sub.KERNEL32.DLL_GetPrivateProfileStringA
lea eax, [ebp - 0xc0c]
push eax
lea edx, [ebx + 0x10]
push edx
call fcn.0069a464
add esp, 8
mov ecx, dword [esi + 0x30]
lea eax, [ebp - 0xc0c]
lea edx, [ebp - 0x40c]
push ecx
push 0x800
push eax
push 0x6dd021
push 0x6dd016
push edx
call sub.KERNEL32.DLL_GetPrivateProfileStringA
lea ecx, [ebp - 0xc0c]
push ecx
lea eax, [ebx + 0x20]
push eax
call fcn.0069a464
add esp, 8
mov edx, dword [esi + 0x30]
lea ecx, [ebp - 0xc0c]
lea eax, [ebp - 0x40c]
push edx
push 0x800
push ecx
push 0x6dd02a
push 0x6dd022
push eax
call sub.KERNEL32.DLL_GetPrivateProfileStringA
lea edx, [ebp - 0xc0c]
push edx
call fcn.006a4124
pop ecx
lea ecx, [ebp - 0xc0c]
push ecx
lea eax, [ebx + 0x30]
push eax
call fcn.0069a464
add esp, 8
mov edx, dword [esi + 0x30]
lea ecx, [ebp - 0xc0c]
lea eax, [ebp - 0x40c]
push edx
push 0x800
push ecx
push 0x6dd038
push 0x6dd02b
push eax
call sub.KERNEL32.DLL_GetPrivateProfileStringA
lea edx, [ebp - 0xc0c]
push edx
call fcn.006a4124
pop ecx
lea ecx, [ebp - 0xc0c]
push ecx
lea eax, [ebx + 0x40]
push eax
call fcn.0069a464
add esp, 8
mov edx, dword [esi + 0x30]
lea ecx, [ebp - 0xc0c]
lea eax, [ebp - 0x40c]
push edx
push 0x800
push ecx
push 0x6dd040
push 0x6dd039
push eax
call sub.KERNEL32.DLL_GetPrivateProfileStringA
push 0x6dd045
lea edx, [ebp - 0xc0c]
push edx
call fcn.0069cfd8
add esp, 8
test eax, eax
je 0x5eb80f
push 0x6dd04a
lea ecx, [ebp - 0xc0c]
push ecx
call fcn.0069cfd8
add esp, 8
test eax, eax
je 0x5eb80f
push 0x6dd04e
lea eax, [ebp - 0xc0c]
push eax
call fcn.0069cfd8
add esp, 8
test eax, eax
je 0x5eb80f
push 0x6dd050
lea edx, [ebp - 0xc0c]
push edx
call fcn.0069cfd8
add esp, 8
test eax, eax
jne 0x5eb815
mov byte [ebx + 0x50], 0
jmp 0x5eb819
mov byte [ebx + 0x50], 1
mov ecx, dword [esi + 0x30]
lea eax, [ebp - 0xc0c]
push ecx
push 0x800
push eax
push 0x6dd05e
lea edx, [ebp - 0x40c]
push 0x6dd053
push edx
call sub.KERNEL32.DLL_GetPrivateProfileStringA
push 0x6dd064
lea ecx, [ebp - 0xc0c]
push ecx
call fcn.0069cfd8
add esp, 8
test eax, eax
je 0x5eb89f
push 0x6dd069
lea eax, [ebp - 0xc0c]
push eax
call fcn.0069cfd8
add esp, 8
test eax, eax
je 0x5eb89f
push 0x6dd06d
lea edx, [ebp - 0xc0c]
push edx
call fcn.0069cfd8
add esp, 8
test eax, eax
je 0x5eb89f
push 0x6dd06f
lea ecx, [ebp - 0xc0c]
push ecx
call fcn.0069cfd8
add esp, 8
test eax, eax
jne 0x5eb8a5
mov byte [ebx + 0x51], 1
jmp 0x5eb8a9
mov byte [ebx + 0x51], 0
mov eax, dword [esi + 0x30]
lea edx, [ebp - 0xc0c]
push eax
push 0x800
push edx
push 0x6dd07b
lea ecx, [ebp - 0x40c]
push 0x6dd072
push ecx
call sub.KERNEL32.DLL_GetPrivateProfileStringA
push 0x6dd081
lea eax, [ebp - 0xc0c]
push eax
call fcn.0069cfd8
add esp, 8
test eax, eax
je 0x5eb92f
push 0x6dd086
lea edx, [ebp - 0xc0c]
push edx
call fcn.0069cfd8
add esp, 8
test eax, eax
je 0x5eb92f
push 0x6dd08a
lea ecx, [ebp - 0xc0c]
push ecx
call fcn.0069cfd8
add esp, 8
test eax, eax
je 0x5eb92f
push 0x6dd08c
lea eax, [ebp - 0xc0c]
push eax
call fcn.0069cfd8
add esp, 8
test eax, eax
jne 0x5eb935
mov byte [ebx + 0x52], 1
jmp 0x5eb939
mov byte [ebx + 0x52], 0
mov edx, dword [esi + 0x30]
lea ecx, [ebp - 0xc0c]
push edx
push 0x800
push ecx
push 0x6dd09a
lea eax, [ebp - 0x40c]
push 0x6dd08f
push eax
call sub.KERNEL32.DLL_GetPrivateProfileStringA
push 0x6dd0a0
lea edx, [ebp - 0xc0c]
push edx
call fcn.0069cfd8
add esp, 8
test eax, eax
je 0x5eb9bf
push 0x6dd0a5
lea ecx, [ebp - 0xc0c]
push ecx
call fcn.0069cfd8
add esp, 8
test eax, eax
je 0x5eb9bf
push 0x6dd0a9
lea eax, [ebp - 0xc0c]
push eax
call fcn.0069cfd8
add esp, 8
test eax, eax
je 0x5eb9bf
push 0x6dd0ab
lea edx, [ebp - 0xc0c]
push edx
call fcn.0069cfd8
add esp, 8
test eax, eax
jne 0x5eb9c5
mov byte [ebx + 0x53], 1
jmp 0x5eb9c9
mov byte [ebx + 0x53], 0
mov ecx, dword [esi + 0x30]
lea eax, [ebp - 0xc0c]
push ecx
push 0x800
push eax
push 0x6dd0bf
lea edx, [ebp - 0x40c]
push 0x6dd0ae
push edx
call sub.KERNEL32.DLL_GetPrivateProfileStringA
push 0x6dd0c5
lea ecx, [ebp - 0xc0c]
push ecx
call fcn.0069cfd8
add esp, 8
test eax, eax
je 0x5eba4f
push 0x6dd0ca
lea eax, [ebp - 0xc0c]
push eax
call fcn.0069cfd8
add esp, 8
test eax, eax
je 0x5eba4f
push 0x6dd0ce
lea edx, [ebp - 0xc0c]
push edx
call fcn.0069cfd8
add esp, 8
test eax, eax
je 0x5eba4f
push 0x6dd0d0
lea ecx, [ebp - 0xc0c]
push ecx
call fcn.0069cfd8
add esp, 8
test eax, eax
jne 0x5eba55
mov byte [ebx + 0x54], 1
jmp 0x5eba59
mov byte [ebx + 0x54], 0
mov eax, dword [esi + 0x30]
lea edx, [ebp - 0xc0c]
push eax
push 0x800
push edx
push str.FALSE
lea ecx, [ebp - 0x40c]
push 0x6dd0d3
push ecx
call sub.KERNEL32.DLL_GetPrivateProfileStringA
push 0x6dd0e8
lea eax, [ebp - 0xc0c]
push eax
call fcn.0069cfd8
add esp, 8
test eax, eax
je 0x5ebadf
push 0x6dd0ed
lea edx, [ebp - 0xc0c]
push edx
call fcn.0069cfd8
add esp, 8
test eax, eax
je 0x5ebadf
push 0x6dd0f1
lea ecx, [ebp - 0xc0c]
push ecx
call fcn.0069cfd8
add esp, 8
test eax, eax
je 0x5ebadf
push 0x6dd0f3
lea eax, [ebp - 0xc0c]
push eax
call fcn.0069cfd8
add esp, 8
test eax, eax
jne 0x5ebae5
mov byte [ebx + 0x55], 1
jmp 0x5ebae9
mov byte [ebx + 0x55], 0
mov byte [ebx + 0x56], 0
mov dword [ebx + 0x80], 0
mov dword [ebx + 0x84], 0
mov dword [ebx + 0x88], 0
mov dword [ebx + 0x8c], 0
mov edx, dword [esi + 0x30]
lea ecx, [ebp - 0xc0c]
push edx
push 0x800
push ecx
push 0x6dd100
lea eax, [ebp - 0x40c]
push 0x6dd0f6
push eax
call sub.KERNEL32.DLL_GetPrivateProfileStringA
mov dl, byte [ebp - 0xc0c]
test dl, dl
je 0x5ebdc8
mov word [ebp - 0xe0], 0x38
xor ecx, ecx
mov dword [ebp - 0x4c], ecx
xor eax, eax
mov dword [ebp - 0x48], eax
xor edx, edx
mov dword [ebp - 0x38], edx
mov dword [ebp - 0x140], 0x40
mov dword [ebp - 0x144], 1
mov ecx, dword [ebp - 0x144]
mov eax, dword [ebp - 0x140]
cmp ecx, eax
jbe 0x5ebb8d
lea edx, [ebp - 0x144]
jmp 0x5ebb93
lea edx, [ebp - 0x140]
mov eax, dword [edx]
lea ecx, [ebp - 0x50]
mov dword [ebp - 0x50], eax
lea eax, [ebp - 0x14c]
inc dword [ebp - 0xd4]
lea edx, [ebp - 0xc0c]
mov word [ebp - 0xe0], 0x50
push ecx
lea ecx, [ebp - 0x60]
mov word [ebp - 0xe0], 0x5c
push eax
push edx
push ecx
call fcn.0069a6ec
add esp, 0xc
inc dword [ebp - 0xd4]
lea eax, [ebp - 0x60]
push eax
call fcn.004466c0
add esp, 8
dec dword [ebp - 0xd4]
mov edx, dword [ebp - 0x58]
test edx, edx
je 0x5ebc9b
mov ecx, dword [ebp - 0x58]
mov eax, dword [ecx - 0xc]
inc eax
test eax, eax
je 0x5ebc4d
mov edx, dword [ebp - 0x58]
add edx, 0xfffffff4
mov dword [ebp - 0x150], edx
mov ecx, 0x6ff36c
mov eax, dword [ebp - 0x150]
cmp ecx, eax
je 0x5ebc44
mov edx, 0x6ff36c
mov ecx, dword [ebp - 0x150]
cmp edx, ecx
je 0x5ebc3d
mov eax, dword [ebp - 0x150]
push eax
call sub.KERNEL32.DLL_InterlockedDecrement
mov edx, dword [ebp - 0x150]
mov ecx, dword [edx]
inc ecx
jmp 0x5ebc49
mov ecx, 1
jmp 0x5ebc49
mov ecx, 1
test ecx, ecx
jne 0x5ebc9b
mov eax, dword [ebp - 0x58]
add eax, 0xfffffff4
mov dword [ebp - 0x154], eax
mov edx, dword [ebp - 0x58]
add edx, 0xfffffff4
mov dword [ebp - 0x158], edx
mov eax, dword [ebp - 0x158]
push eax
call fcn.0067ac7c
pop ecx
xor edx, edx
mov dword [ebp - 0x15c], edx
lea eax, [ebp - 0x60]
mov ecx, dword [ebp - 0x15c]
mov dword [ebp - 0x58], ecx
mov dword [ebp - 0x160], eax
mov edx, dword [ebp - 0x160]
mov ecx, dword [edx + 8]
mov dword [ebp - 0xc58], ecx
mov word [ebp - 0xe0], 0x50
mov eax, dword [ebp - 0x48]
mov edx, dword [ebp - 0x4c]
sub eax, edx
test eax, eax
jns 0x5ebcb3
add eax, 0xf
sar eax, 4
cmp eax, 3
jb 0x5ebd8f
push 0x6dd101
mov ecx, dword [ebp - 0x4c]
mov eax, dword [ecx + 8]
push eax
call fcn.0069cfd8
add esp, 8
test eax, eax
je 0x5ebd1f
push 0x6dd106
mov edx, dword [ebp - 0x4c]
mov ecx, dword [edx + 8]
push ecx
call fcn.0069cfd8
add esp, 8
test eax, eax
je 0x5ebd1f
push 0x6dd10a
mov eax, dword [ebp - 0x4c]
mov edx, dword [eax + 8]
push edx
call fcn.0069cfd8
add esp, 8
test eax, eax
je 0x5ebd1f
push 0x6dd10c
mov ecx, dword [ebp - 0x4c]
mov eax, dword [ecx + 8]
push eax
call fcn.0069cfd8
add esp, 8
test eax, eax
jne 0x5ebd23
mov byte [ebx + 0x56], 1
lea edx, [ebp - 0x13c]
push edx
push 0x6dd10f
mov ecx, dword [ebp - 0x4c]
mov eax, dword [ecx + 0x18]
push eax
call fcn.006a0b4c
add esp, 0xc
dec eax
jne 0x5ebd59
mov edx, dword [ebp - 0x13c]
mov dword [ebx + 0x88], edx
mov edx, dword [ebp - 0x138]
mov dword [ebx + 0x8c], edx
lea ecx, [ebp - 0x13c]
push ecx
push 0x6dd115
mov eax, dword [ebp - 0x4c]
mov edx, dword [eax + 0x28]
push edx
call fcn.006a0b4c
add esp, 0xc
dec eax
jne 0x5ebd8f
mov ecx, dword [ebp - 0x13c]
mov dword [ebx + 0x80], ecx
mov ecx, dword [ebp - 0x138]
mov dword [ebx + 0x84], ecx
dec dword [ebp - 0xd4]
mov eax, dword [ebp - 0x48]
push eax
mov edx, dword [ebp - 0x4c]
push edx
lea ecx, [ebp - 0x50]
push ecx
call fcn.0040445c
add esp, 0xc
mov eax, dword [ebp - 0x4c]
mov dword [ebp - 0x164], eax
mov edx, dword [ebp - 0x164]
push edx
call fcn.0067ac7c
pop ecx
mov word [ebp - 0xe0], 0
mov dword [ebp - 0x168], 0xffffffff
mov ecx, dword [esi + 0x30]
lea eax, [ebp - 0xc0c]
push ecx
push 0x800
push eax
push 0x6dd122
lea edx, [ebp - 0x40c]
push 0x6dd11b
push edx
call sub.KERNEL32.DLL_GetPrivateProfileStringA
lea ecx, [ebp - 0x168]
lea eax, [ebp - 0xc0c]
push ecx
push 0x6dd124
push eax
call fcn.006a0b4c
add esp, 0xc
mov edx, dword [ebp - 0x168]
test edx, edx
jge 0x5ebe25
xor ecx, ecx
mov dword [ebp - 0x168], ecx
mov eax, dword [ebp - 0x168]
lea ecx, [ebp - 0xc0c]
mov dword [ebx + 0x90], eax
lea eax, [ebp - 0x40c]
mov dword [ebp - 0x16c], 0xffffffff
mov edx, dword [esi + 0x30]
push edx
push 0x800
push ecx
push 0x6dd13b
push 0x6dd128
push eax
call sub.KERNEL32.DLL_GetPrivateProfileStringA
lea edx, [ebp - 0x16c]
lea ecx, [ebp - 0xc0c]
push edx
push 0x6dd13e
push ecx
call fcn.006a0b4c
add esp, 0xc
mov eax, dword [ebp - 0x16c]
cmp eax, 0x3e7
jle 0x5ebe93
mov dword [ebp - 0x16c], 0x3e7
mov edx, dword [ebp - 0x16c]
test edx, edx
jg 0x5ebea7
mov dword [ebp - 0x16c], 0xffffffff
mov ecx, dword [ebp - 0x16c]
xor eax, eax
mov dword [ebx + 0x58], ecx
mov dword [ebp - 0x16c], eax
mov edx, dword [esi + 0x30]
lea ecx, [ebp - 0xc0c]
push edx
push 0x800
push ecx
push 0x6dd14e
lea eax, [ebp - 0x40c]
push 0x6dd141
push eax
call sub.KERNEL32.DLL_GetPrivateProfileStringA
lea edx, [ebp - 0x16c]
lea ecx, [ebp - 0xc0c]
push edx
push 0x6dd150
push ecx
call fcn.006a0b4c
add esp, 0xc
mov eax, dword [ebp - 0x16c]
cmp eax, 0x989680
jle 0x5ebf10
mov dword [ebp - 0x16c], 0x989680
mov edx, dword [ebp - 0x16c]
test edx, edx
jge 0x5ebf22
xor ecx, ecx
mov dword [ebp - 0x16c], ecx
mov eax, dword [ebp - 0x16c]
xor edx, edx
mov dword [ebx + 0x5c], eax
mov dword [ebp - 0x16c], edx
mov ecx, dword [esi + 0x30]
lea eax, [ebp - 0xc0c]
push ecx
push 0x800
push eax
push 0x6dd162
lea edx, [ebp - 0x40c]
push 0x6dd153
push edx
call sub.KERNEL32.DLL_GetPrivateProfileStringA
lea ecx, [ebp - 0x16c]
lea eax, [ebp - 0xc0c]
push ecx
push 0x6dd164
push eax
call fcn.006a0b4c
add esp, 0xc
mov edx, dword [ebp - 0x16c]
cmp edx, 0x989680
jle 0x5ebf8c
mov dword [ebp - 0x16c], 0x989680
mov ecx, dword [ebp - 0x16c]
test ecx, ecx
jge 0x5ebf9e
xor eax, eax
mov dword [ebp - 0x16c], eax
mov edx, dword [ebp - 0x16c]
xor ecx, ecx
mov dword [ebx + 0x60], edx
mov dword [ebp - 0x16c], ecx
mov eax, dword [esi + 0x30]
lea edx, [ebp - 0xc0c]
push eax
push 0x800
push edx
push 0x6dd16f
lea ecx, [ebp - 0x40c]
push 0x6dd167
push ecx
call sub.KERNEL32.DLL_GetPrivateProfileStringA
lea eax, [ebp - 0x16c]
lea edx, [ebp - 0xc0c]
push eax
push 0x6dd171
push edx
call fcn.006a0b4c
add esp, 0xc
mov ecx, dword [ebp - 0x16c]
cmp ecx, 0xf423f
jle 0x5ec008
mov dword [ebp - 0x16c], 0xf423f
mov eax, dword [ebp - 0x16c]
test eax, eax
jge 0x5ec01a
xor edx, edx
mov dword [ebp - 0x16c], edx
mov ecx, dword [ebp - 0x16c]
xor eax, eax
mov dword [ebx + 0x68], ecx
mov dword [ebp - 0x16c], eax
mov edx, dword [esi + 0x30]
lea ecx, [ebp - 0xc0c]
push edx
push 0x800
push ecx
push 0x6dd183
lea eax, [ebp - 0x40c]
push 0x6dd174
push eax
call sub.KERNEL32.DLL_GetPrivateProfileStringA
lea edx, [ebp - 0x16c]
lea ecx, [ebp - 0xc0c]
push edx
push 0x6dd185
push ecx
call fcn.006a0b4c
add esp, 0xc
mov eax, dword [ebp - 0x16c]
cmp eax, 0xf423f
jle 0x5ec083
mov dword [ebp - 0x16c], 0xf423f
mov edx, dword [ebp - 0x16c]
test edx, edx
jge 0x5ec095
xor ecx, ecx
mov dword [ebp - 0x16c], ecx
mov eax, dword [ebp - 0x16c]
lea ecx, [ebp - 0xc0c]
mov dword [ebx + 0x6c], eax
lea eax, [ebp - 0x40c]
mov dword [ebp - 0x16c], 0xffffffff
mov edx, dword [esi + 0x30]
push edx
push 0x800
push ecx
push 0x6dd193
push 0x6dd188
push eax
call sub.KERNEL32.DLL_GetPrivateProfileStringA
lea edx, [ebp - 0x16c]
lea ecx, [ebp - 0xc0c]
push edx
push 0x6dd196
push ecx
call fcn.006a0b4c
add esp, 0xc
mov eax, dword [ebp - 0x16c]
cmp eax, 0x1869f
jle 0x5ec100
mov dword [ebp - 0x16c], 0x1869f
mov edx, dword [ebp - 0x16c]
test edx, edx
jge 0x5ec114
mov dword [ebp - 0x16c], 0xffffffff
mov ecx, dword [ebp - 0x16c]
mov eax, 1
mov dword [ebx + 0x64], ecx
xor edx, edx
mov byte [ebx + 0x96], 0
mov dword [ebx + 0x74], eax
mov dword [ebx + 0x70], eax
mov dword [ebx + 0x78], edx
lea eax, [ebp - 0xc0c]
mov ecx, dword [esi + 0x30]
lea edx, [ebp - 0x40c]
push ecx
push 0x800
push eax
push 0x6dd1a0
push 0x6dd199
push edx
call sub.KERNEL32.DLL_GetPrivateProfileStringA
mov cl, byte [ebp - 0xc0c]
test cl, cl
je 0x5ec44d
mov word [ebp - 0xe0], 0x80
xor eax, eax
mov dword [ebp - 0x7c], eax
xor edx, edx
mov dword [ebp - 0x78], edx
xor ecx, ecx
mov dword [ebp - 0x68], ecx
mov dword [ebp - 0x174], 0x40
mov dword [ebp - 0x178], 1
mov eax, dword [ebp - 0x178]
mov edx, dword [ebp - 0x174]
cmp eax, edx
jbe 0x5ec1ac
lea ecx, [ebp - 0x178]
jmp 0x5ec1b2
lea ecx, [ebp - 0x174]
mov eax, dword [ecx]
lea edx, [ebp - 0x80]
mov dword [ebp - 0x80], eax
lea eax, [ebp - 0x180]
inc dword [ebp - 0xd4]
lea ecx, [ebp - 0x90]
mov word [ebp - 0xe0], 0x98
push edx
lea edx, [ebp - 0xc0c]
mov word [ebp - 0xe0], 0xa4
push eax
push edx
push ecx
call fcn.0069a6ec
add esp, 0xc
inc dword [ebp - 0xd4]
lea eax, [ebp - 0x90]
push eax
call fcn.004466c0
add esp, 8
dec dword [ebp - 0xd4]
mov edx, dword [ebp - 0x88]
test edx, edx
je 0x5ec2d5
mov ecx, dword [ebp - 0x88]
mov eax, dword [ecx - 0xc]
inc eax
test eax, eax
je 0x5ec27b
mov edx, dword [ebp - 0x88]
add edx, 0xfffffff4
mov dword [ebp - 0x184], edx
mov ecx, 0x6ff36c
mov eax, dword [ebp - 0x184]
cmp ecx, eax
je 0x5ec272
mov edx, 0x6ff36c
mov ecx, dword [ebp - 0x184]
cmp edx, ecx
je 0x5ec26b
mov eax, dword [ebp - 0x184]
push eax
call sub.KERNEL32.DLL_InterlockedDecrement
mov edx, dword [ebp - 0x184]
mov ecx, dword [edx]
inc ecx
jmp 0x5ec277
mov ecx, 1
jmp 0x5ec277
mov ecx, 1
test ecx, ecx
jne 0x5ec2d5
mov eax, dword [ebp - 0x88]
add eax, 0xfffffff4
mov dword [ebp - 0x188], eax
mov edx, dword [ebp - 0x88]
add edx, 0xfffffff4
mov dword [ebp - 0x18c], edx
mov eax, dword [ebp - 0x18c]
push eax
call fcn.0067ac7c
pop ecx
xor edx, edx
mov dword [ebp - 0x190], edx
lea eax, [ebp - 0x90]
mov ecx, dword [ebp - 0x190]
mov dword [ebp - 0x88], ecx
mov dword [ebp - 0x194], eax
mov edx, dword [ebp - 0x194]
mov ecx, dword [edx + 8]
mov dword [ebp - 0xc68], ecx
mov word [ebp - 0xe0], 0x98
mov eax, dword [ebp - 0x78]
mov edx, dword [ebp - 0x7c]
sub eax, edx
test eax, eax
jns 0x5ec2ed
add eax, 0xf
sar eax, 4
cmp eax, 4
jb 0x5ec414
push 0x6dd1a1
mov ecx, dword [ebp - 0x7c]
mov eax, dword [ecx + 8]
push eax
call fcn.0069cfd8
add esp, 8
test eax, eax
jne 0x5ec31d
mov byte [ebx + 0x96], 1
jmp 0x5ec39f
push 0x6dd1b1
mov edx, dword [ebp - 0x7c]
mov ecx, dword [edx + 8]
push ecx
call fcn.0069cfd8
add esp, 8
test eax, eax
jne 0x5ec33e
mov byte [ebx + 0x96], 2
jmp 0x5ec39f
push 0x6dd1c1
mov eax, dword [ebp - 0x7c]
mov edx, dword [eax + 8]
push edx
call fcn.0069cfd8
add esp, 8
test eax, eax
jne 0x5ec35f
mov byte [ebx + 0x96], 4
jmp 0x5ec39f
push 0x6dd1ce
mov ecx, dword [ebp - 0x7c]
mov eax, dword [ecx + 8]
push eax
call fcn.0069cfd8
add esp, 8
test eax, eax
jne 0x5ec380
mov byte [ebx + 0x96], 3
jmp 0x5ec39f
push 0x6dd1db
mov edx, dword [ebp - 0x7c]
mov ecx, dword [edx + 8]
push ecx
call fcn.0069cfd8
add esp, 8
test eax, eax
jne 0x5ec39f
mov byte [ebx + 0x96], 0
lea eax, [ebp - 0x16c]
push eax
push 0x6dd1e0
mov edx, dword [ebp - 0x7c]
mov ecx, dword [edx + 0x18]
push ecx
call fcn.006a0b4c
add esp, 0xc
dec eax
jne 0x5ec3c6
mov eax, dword [ebp - 0x16c]
mov dword [ebx + 0x70], eax
lea edx, [ebp - 0x16c]
push edx
push 0x6dd1e3
mov ecx, dword [ebp - 0x7c]
mov eax, dword [ecx + 0x28]
push eax
call fcn.006a0b4c
add esp, 0xc
dec eax
jne 0x5ec3ed
mov edx, dword [ebp - 0x16c]
mov dword [ebx + 0x74], edx
lea ecx, [ebp - 0x170]
push ecx
push 0x6dd1e6
mov eax, dword [ebp - 0x7c]
mov edx, dword [eax + 0x38]
push edx
call fcn.006a0b4c
add esp, 0xc
dec eax
jne 0x5ec414
mov ecx, dword [ebp - 0x170]
mov dword [ebx + 0x78], ecx
dec dword [ebp - 0xd4]
mov eax, dword [ebp - 0x78]
push eax
mov edx, dword [ebp - 0x7c]
push edx
lea ecx, [ebp - 0x80]
push ecx
call fcn.0040445c
add esp, 0xc
mov eax, dword [ebp - 0x7c]
mov dword [ebp - 0x198], eax
mov edx, dword [ebp - 0x198]
push edx
call fcn.0067ac7c
pop ecx
mov word [ebp - 0xe0], 0
mov ecx, dword [esi + 0x30]
lea eax, [ebp - 0xc0c]
push ecx
push 0x800
push eax
push 0x6dd1f5
lea edx, [ebp - 0x40c]
push 0x6dd1e9
push edx
call sub.KERNEL32.DLL_GetPrivateProfileStringA
push 0x6dd1f6
lea ecx, [ebp - 0xc0c]
push ecx
call fcn.0069cfd8
add esp, 8
test eax, eax
jne 0x5ec494
mov byte [ebx + 0x94], 1
jmp 0x5ec4fe
push 0x6dd1fd
lea eax, [ebp - 0xc0c]
push eax
call fcn.0069cfd8
add esp, 8
test eax, eax
jne 0x5ec4b5
mov byte [ebx + 0x94], 3
jmp 0x5ec4fe
push 0x6dd204
lea edx, [ebp - 0xc0c]
push edx
call fcn.0069cfd8
add esp, 8
test eax, eax
jne 0x5ec4d6
mov byte [ebx + 0x94], 2
jmp 0x5ec4fe
push 0x6dd20a
lea ecx, [ebp - 0xc0c]
push ecx
call fcn.0069cfd8
add esp, 8
test eax, eax
jne 0x5ec4f7
mov byte [ebx + 0x94], 4
jmp 0x5ec4fe
mov byte [ebx + 0x94], 0
mov eax, dword [esi + 0x30]
lea edx, [ebp - 0xc0c]
push eax
push 0x800
push edx
push 0x6dd220
lea ecx, [ebp - 0x40c]
push 0x6dd213
push ecx
call sub.KERNEL32.DLL_GetPrivateProfileStringA
push 0x6dd231
lea eax, [ebp - 0xc0c]
push eax
call fcn.0069cfd8
add esp, 8
test eax, eax
jne 0x5ec545
mov byte [ebx + 0x95], 1
jmp 0x5ec56d
push 0x6dd23f
lea edx, [ebp - 0xc0c]
push edx
call fcn.0069cfd8
add esp, 8
test eax, eax
jne 0x5ec566
mov byte [ebx + 0x95], 2
jmp 0x5ec56d
mov byte [ebx + 0x95], 0
mov ecx, dword [ebx + 0xc0]
lea edx, [ebx + 0xb8]
mov dword [ebp - 0x19c], ecx
mov eax, dword [ebx + 0xbc]
mov dword [ebp - 0x1a0], eax
mov dword [ebp - 0x1a4], edx
mov ecx, dword [ebp - 0x1a0]
push ecx
mov eax, dword [ebp - 0x1a4]
mov edx, dword [eax + 8]
push edx
mov ecx, dword [ebp - 0x19c]
push ecx
call fcn.004057f0
add esp, 0xc
mov dword [ebp - 0x1a8], eax
mov eax, dword [ebp - 0x1a4]
mov edx, dword [eax + 8]
mov dword [ebp - 0x1ac], edx
mov ecx, dword [ebp - 0x19c]
mov eax, dword [ebp - 0x1a0]
sub ecx, eax
test ecx, ecx
jns 0x5ec5db
add ecx, 0xf
sar ecx, 4
mov edx, dword [ebp - 0x1a4]
shl ecx, 4
sub dword [edx + 8], ecx
mov ecx, dword [ebp - 0x1ac]
push ecx
mov eax, dword [ebp - 0x1a8]
push eax
mov edx, dword [ebp - 0x1a4]
push edx
call fcn.0040445c
mov dword [ebp - 0x16c], 1
add esp, 0xc
mov ecx, dword [ebp - 0x16c]
push ecx
push 0x6dd252
push 0x6dd24d
lea eax, [ebp - 0xc8c]
push eax
call fcn.006a0ad0
add esp, 0x10
mov edx, dword [esi + 0x30]
lea ecx, [ebp - 0xc0c]
lea eax, [ebp - 0xc8c]
push edx
push 0x800
push ecx
push 0x6dd25b
push eax
lea edx, [ebp - 0x40c]
push edx
call sub.KERNEL32.DLL_GetPrivateProfileStringA
mov cl, byte [ebp - 0xc0c]
test cl, cl
je 0x5ec9d8
movsx eax, byte [ebp - 0xc0c]
push eax
call fcn.006a41c0
pop ecx
xor eax, eax
mov word [ebp - 0xe0], 0xc8
mov dword [ebp - 0x98], eax
lea edx, [ebp - 0xa0]
mov eax, 0x6ff378
mov dword [ebp - 0x98], eax
mov eax, 0x6ff36c
mov ecx, dword [edx + 8]
cmp eax, 0x6ff36c
mov dword [ebp - 0xc94], ecx
je 0x5ec6b6
push 0x6ff36c
call sub.KERNEL32.DLL_InterlockedIncrement
inc dword [ebp - 0xd4]
lea edx, [ebp - 0xc0c]
mov word [ebp - 0xe0], 0xe0
push edx
call fcn.0069ce0c
pop ecx
cmp eax, 2
jbe 0x5ec90b
movsx ecx, byte [ebp - 0xc0c]
cmp ecx, 0x41
je 0x5ec6f7
movsx eax, byte [ebp - 0xc0c]
cmp eax, 0x44
jne 0x5ec90b
movsx edx, byte [ebp - 0xc0b]
cmp edx, 0x7c
jne 0x5ec90b
push 0x6dd25c
lea ecx, [ebp - 0xa0]
push ecx
call fcn.0069a464
add esp, 8
movsx eax, byte [ebp - 0xc0c]
cmp eax, 0x44
jne 0x5ec73b
push 0x6dd25f
lea edx, [ebp - 0xa0]
push edx
call fcn.0069a464
add esp, 8
mov ecx, dword [ebp - 0x98]
mov edi, dword [ecx - 4]
lea eax, [ebp - 0xc0a]
push eax
call fcn.0069ce0c
pop ecx
push eax
push 0
push eax
lea edx, [ebp - 0xc0a]
push edx
push 0
push edi
lea ecx, [ebp - 0xa0]
push ecx
call fcn.0069ad68
add esp, 0x1c
lea edi, [ebx + 0xb8]
mov eax, dword [edi + 8]
mov edx, dword [edi + 0x18]
cmp eax, edx
je 0x5ec8f7
mov ecx, dword [edi + 8]
mov dword [ebp - 0x1b0], ecx
mov eax, dword [ebp - 0x1b0]
mov dword [ebp - 0xa4], eax
test eax, eax
je 0x5ec8f1
mov word [ebp - 0xe0], 0xf8
xor edx, edx
mov dword [ebp - 0x1b4], edx
mov ecx, dword [ebp - 0xa4]
mov eax, dword [ebp - 0x1b4]
mov dword [ecx + 8], eax
mov edx, dword [ebp - 0x98]
mov ecx, dword [edx - 0xc]
inc ecx
test ecx, ecx
jle 0x5ec839
mov eax, dword [ebp - 0x98]
mov dword [ebp - 0x1b8], eax
mov edx, dword [ebp - 0xa4]
mov ecx, dword [ebp - 0x1b8]
mov dword [edx + 8], ecx
mov eax, dword [ebp - 0xa4]
mov dword [ebp - 0x1bc], eax
mov edx, dword [ebp - 0x1bc]
mov ecx, dword [edx + 8]
mov dword [ebp - 0xca4], ecx
mov eax, dword [ebp - 0xa4]
mov edx, dword [eax + 8]
add edx, 0xfffffff4
mov dword [ebp - 0x1c0], edx
mov ecx, 0x6ff36c
mov eax, dword [ebp - 0x1c0]
cmp ecx, eax
je 0x5ec8e8
mov edx, dword [ebp - 0x1c0]
push edx
call sub.KERNEL32.DLL_InterlockedIncrement
jmp 0x5ec8e8
mov ecx, dword [ebp - 0x98]
mov eax, dword [ecx - 4]
mov dword [ebp - 0x1c4], eax
mov edx, dword [ebp - 0x1c4]
push edx
mov ecx, dword [ebp - 0x1c4]
push ecx
mov eax, dword [ebp - 0xa4]
push eax
call fcn.0069a874
add esp, 0xc
mov dword [ebp - 0x1cc], eax
mov edx, dword [ebp - 0x1cc]
add edx, 0xc
mov dword [ebp - 0x1c8], edx
mov ecx, dword [ebp - 0xa4]
mov eax, dword [ebp - 0x1c8]
mov dword [ecx + 8], eax
mov edx, dword [ebp - 0xa4]
mov dword [ebp - 0x1d0], edx
mov ecx, dword [ebp - 0x1d0]
mov eax, dword [ecx + 8]
mov dword [ebp - 0xcb4], eax
mov edx, dword [ebp - 0x1c4]
mov dword [ebp - 0x1d4], edx
mov ecx, dword [ebp - 0x98]
mov dword [ebp - 0x1d8], ecx
mov eax, dword [ebp - 0xa4]
mov edx, dword [eax + 8]
mov dword [ebp - 0x1dc], edx
mov ecx, dword [ebp - 0x1d4]
push ecx
mov eax, dword [ebp - 0x1d8]
push eax
mov edx, dword [ebp - 0x1dc]
push edx
call fcn.0069cc60
add esp, 0xc
mov word [ebp - 0xe0], 0xec
add dword [edi + 8], 0x10
jmp 0x5ec90b
lea ecx, [ebp - 0xa0]
push ecx
mov eax, dword [edi + 8]
push eax
push edi
call fcn.004069b4
add esp, 0xc
inc dword [ebp - 0x16c]
dec dword [ebp - 0xd4]
mov edx, dword [ebp - 0x98]
test edx, edx
je 0x5ec9c1
mov ecx, dword [ebp - 0x98]
mov eax, dword [ecx - 0xc]
inc eax
test eax, eax
je 0x5ec967
mov edi, dword [ebp - 0x98]
add edi, 0xfffffff4
cmp edi, 0x6ff36c
je 0x5ec95e
cmp edi, 0x6ff36c
je 0x5ec957
push edi
call sub.KERNEL32.DLL_InterlockedDecrement
mov eax, dword [edi]
inc eax
jmp 0x5ec963
mov eax, 1
jmp 0x5ec963
mov eax, 1
test eax, eax
jne 0x5ec9c1
mov edx, dword [ebp - 0x98]
add edx, 0xfffffff4
mov dword [ebp - 0x1e0], edx
mov ecx, dword [ebp - 0x98]
add ecx, 0xfffffff4
mov dword [ebp - 0x1e4], ecx
mov eax, dword [ebp - 0x1e4]
push eax
call fcn.0067ac7c
pop ecx
xor edx, edx
mov dword [ebp - 0x1e8], edx
lea eax, [ebp - 0xa0]
mov ecx, dword [ebp - 0x1e8]
mov dword [ebp - 0x98], ecx
mov dword [ebp - 0x1ec], eax
mov edx, dword [ebp - 0x1ec]
mov ecx, dword [edx + 8]
mov dword [ebp - 0xcc4], ecx
mov word [ebp - 0xe0], 0xe0
mov word [ebp - 0xe0], 0
jmp 0x5ec611
mov eax, dword [ebx + 0x100]
lea ecx, [ebx + 0xf8]
mov dword [ebp - 0x1f0], eax
mov edx, dword [ebx + 0xfc]
mov dword [ebp - 0x1f4], edx
mov dword [ebp - 0x1f8], ecx
mov eax, dword [ebp - 0x1f4]
push eax
mov edx, dword [ebp - 0x1f8]
mov ecx, dword [edx + 8]
push ecx
mov eax, dword [ebp - 0x1f0]
push eax
call fcn.004057f0
add esp, 0xc
mov dword [ebp - 0x1fc], eax
mov edx, dword [ebp - 0x1f8]
mov ecx, dword [edx + 8]
mov dword [ebp - 0x200], ecx
mov eax, dword [ebp - 0x1f0]
mov edx, dword [ebp - 0x1f4]
sub eax, edx
test eax, eax
jns 0x5eca46
add eax, 0xf
sar eax, 4
mov ecx, dword [ebp - 0x1f8]
shl eax, 4
sub dword [ecx + 8], eax
mov eax, dword [ebp - 0x200]
push eax
mov edx, dword [ebp - 0x1fc]
push edx
mov ecx, dword [ebp - 0x1f8]
push ecx
call fcn.0040445c
mov dword [ebp - 0x16c], 1
add esp, 0xc
mov eax, dword [ebp - 0x16c]
push eax
push 0x6dd267
push 0x6dd262
lea edx, [ebp - 0xce8]
push edx
call fcn.006a0ad0
add esp, 0x10
mov ecx, dword [esi + 0x30]
lea eax, [ebp - 0xc0c]
lea edx, [ebp - 0xce8]
push ecx
push 0x800
push eax
push 0x6dd26c
push edx
lea ecx, [ebp - 0x40c]
push ecx
call sub.KERNEL32.DLL_GetPrivateProfileStringA
mov al, byte [ebp - 0xc0c]
test al, al
je 0x5ecda3
jmp 0x5ecae9
lea edx, [ebp - 0xc0c]
push edx
call fcn.0069ce0c
pop ecx
mov byte [ebp + eax - 0xc0d], 0
mov cl, byte [ebp - 0xc0c]
test cl, cl
je 0x5ecb0d
lea eax, [ebp - 0xc0c]
push eax
call fcn.0069ce0c
pop ecx
movsx edx, byte [ebp + eax - 0xc0d]
cmp edx, 0x20
je 0x5ecad4
mov word [ebp - 0xe0], 0x11c
lea ecx, [ebp - 0x20c]
push ecx
lea eax, [ebp - 0xc0c]
push eax
lea edx, [ebp - 0xb4]
push edx
call fcn.0069a6ec
inc dword [ebp - 0xd4]
lea edi, [ebx + 0xf8]
mov dword [ebp - 0x204], eax
add esp, 0xc
mov eax, dword [edi + 8]
mov edx, dword [edi + 0x18]
cmp eax, edx
je 0x5eccd4
mov ecx, dword [edi + 8]
mov dword [ebp - 0x210], ecx
mov eax, dword [ebp - 0x210]
mov dword [ebp - 0xb8], eax
test eax, eax
je 0x5eccce
mov word [ebp - 0xe0], 0x128
xor edx, edx
mov dword [ebp - 0x214], edx
mov ecx, dword [ebp - 0xb8]
mov eax, dword [ebp - 0x214]
mov dword [ecx + 8], eax
mov edx, dword [ebp - 0x204]
mov ecx, dword [edx + 8]
mov eax, dword [ecx - 0xc]
inc eax
test eax, eax
jle 0x5ecc10
mov edx, dword [ebp - 0x204]
mov ecx, dword [edx + 8]
mov dword [ebp - 0x218], ecx
mov eax, dword [ebp - 0xb8]
mov edx, dword [ebp - 0x218]
mov dword [eax + 8], edx
mov ecx, dword [ebp - 0xb8]
mov dword [ebp - 0x21c], ecx
mov eax, dword [ebp - 0x21c]
mov edx, dword [eax + 8]
mov dword [ebp - 0xcf0], edx
mov ecx, dword [ebp - 0xb8]
mov eax, dword [ecx + 8]
add eax, 0xfffffff4
mov dword [ebp - 0x220], eax
mov edx, 0x6ff36c
mov ecx, dword [ebp - 0x220]
cmp edx, ecx
je 0x5eccc5
mov eax, dword [ebp - 0x220]
push eax
call sub.KERNEL32.DLL_InterlockedIncrement
jmp 0x5eccc5
mov edx, dword [ebp - 0x204]
mov ecx, dword [edx + 8]
mov eax, dword [ecx - 4]
mov dword [ebp - 0x224], eax
mov edx, dword [ebp - 0x224]
push edx
mov ecx, dword [ebp - 0x224]
push ecx
mov eax, dword [ebp - 0xb8]
push eax
call fcn.0069a874
add esp, 0xc
mov dword [ebp - 0x22c], eax
mov edx, dword [ebp - 0x22c]
add edx, 0xc
mov dword [ebp - 0x228], edx
mov ecx, dword [ebp - 0xb8]
mov eax, dword [ebp - 0x228]
mov dword [ecx + 8], eax
mov edx, dword [ebp - 0xb8]
mov dword [ebp - 0x230], edx
mov ecx, dword [ebp - 0x230]
mov eax, dword [ecx + 8]
mov dword [ebp - 0xd00], eax
mov edx, dword [ebp - 0x224]
mov dword [ebp - 0x234], edx
mov ecx, dword [ebp - 0x204]
mov eax, dword [ecx + 8]
mov dword [ebp - 0x238], eax
mov edx, dword [ebp - 0xb8]
mov ecx, dword [edx + 8]
mov dword [ebp - 0x23c], ecx
mov eax, dword [ebp - 0x234]
push eax
mov edx, dword [ebp - 0x238]
push edx
mov ecx, dword [ebp - 0x23c]
push ecx
call fcn.0069cc60
add esp, 0xc
mov word [ebp - 0xe0], 0x11c
add dword [edi + 8], 0x10
jmp 0x5ecce8
mov eax, dword [ebp - 0x204]
push eax
mov edx, dword [edi + 8]
push edx
push edi
call fcn.004069b4
add esp, 0xc
dec dword [ebp - 0xd4]
mov ecx, dword [ebp - 0xac]
test ecx, ecx
je 0x5ecd98
mov eax, dword [ebp - 0xac]
mov edx, dword [eax - 0xc]
inc edx
test edx, edx
je 0x5ecd3e
mov edi, dword [ebp - 0xac]
add edi, 0xfffffff4
cmp edi, 0x6ff36c
je 0x5ecd35
cmp edi, 0x6ff36c
je 0x5ecd2e
push edi
call sub.KERNEL32.DLL_InterlockedDecrement
mov eax, dword [edi]
inc eax
jmp 0x5ecd3a
mov eax, 1
jmp 0x5ecd3a
mov eax, 1
test eax, eax
jne 0x5ecd98
mov edx, dword [ebp - 0xac]
add edx, 0xfffffff4
mov dword [ebp - 0x240], edx
mov ecx, dword [ebp - 0xac]
add ecx, 0xfffffff4
mov dword [ebp - 0x244], ecx
mov eax, dword [ebp - 0x244]
push eax
call fcn.0067ac7c
pop ecx
xor edx, edx
mov dword [ebp - 0x248], edx
lea eax, [ebp - 0xb4]
mov ecx, dword [ebp - 0x248]
mov dword [ebp - 0xac], ecx
mov dword [ebp - 0x24c], eax
mov edx, dword [ebp - 0x24c]
mov ecx, dword [edx + 8]
mov dword [ebp - 0xd10], ecx
inc dword [ebp - 0x16c]
jmp 0x5eca7c
mov eax, dword [ebx + 0xa0]
lea ecx, [ebx + 0x98]
mov dword [ebp - 0x250], eax
mov edx, dword [ebx + 0x9c]
mov dword [ebp - 0x254], edx
mov dword [ebp - 0x258], ecx
mov eax, dword [ebp - 0x254]
push eax
mov edx, dword [ebp - 0x258]
mov ecx, dword [edx + 8]
push ecx
mov eax, dword [ebp - 0x250]
push eax
call fcn.004057f0
add esp, 0xc
mov dword [ebp - 0x25c], eax
mov edx, dword [ebp - 0x258]
mov ecx, dword [edx + 8]
mov dword [ebp - 0x260], ecx
mov eax, dword [ebp - 0x250]
mov edx, dword [ebp - 0x254]
sub eax, edx
test eax, eax
jns 0x5ece11
add eax, 0xf
sar eax, 4
mov ecx, dword [ebp - 0x258]
shl eax, 4
sub dword [ecx + 8], eax
mov eax, dword [ebp - 0x260]
push eax
mov edx, dword [ebp - 0x25c]
push edx
mov ecx, dword [ebp - 0x258]
push ecx
call fcn.0040445c
mov dword [ebp - 0x16c], 1
add esp, 0xc
mov eax, dword [ebp - 0x16c]
push eax
push 0x6dd272
push 0x6dd26d
lea edx, [ebp - 0xd34]
push edx
call fcn.006a0ad0
add esp, 0x10
mov ecx, dword [esi + 0x30]
lea eax, [ebp - 0xc0c]
lea edx, [ebp - 0xd34]
push ecx
push 0x800
push eax
push 0x6dd279
push edx
lea ecx, [ebp - 0x40c]
push ecx
call sub.KERNEL32.DLL_GetPrivateProfileStringA
mov al, byte [ebp - 0xc0c]
test al, al
je 0x5ed133
mov word [ebp - 0xe0], 0x14c
lea edx, [ebp - 0x26c]
push edx
lea ecx, [ebp - 0xc0c]
push ecx
lea eax, [ebp - 0xc8]
push eax
call fcn.0069a6ec
inc dword [ebp - 0xd4]
lea edi, [ebx + 0x98]
mov dword [ebp - 0x264], eax
add esp, 0xc
mov eax, dword [edi + 8]
mov edx, dword [edi + 0x18]
cmp eax, edx
je 0x5ed064
mov ecx, dword [edi + 8]
mov dword [ebp - 0x270], ecx
mov eax, dword [ebp - 0x270]
mov dword [ebp - 0xcc], eax
test eax, eax
je 0x5ed05e
mov word [ebp - 0xe0], 0x158
xor edx, edx
mov dword [ebp - 0x274], edx
mov ecx, dword [ebp - 0xcc]
mov eax, dword [ebp - 0x274]
mov dword [ecx + 8], eax
mov edx, dword [ebp - 0x264]
mov ecx, dword [edx + 8]
mov eax, dword [ecx - 0xc]
inc eax
test eax, eax
jle 0x5ecfa0
mov edx, dword [ebp - 0x264]
mov ecx, dword [edx + 8]
mov dword [ebp - 0x278], ecx
mov eax, dword [ebp - 0xcc]
mov edx, dword [ebp - 0x278]
mov dword [eax + 8], edx
mov ecx, dword [ebp - 0xcc]
mov dword [ebp - 0x27c], ecx
mov eax, dword [ebp - 0x27c]
mov edx, dword [eax + 8]
mov dword [ebp - 0xd3c], edx
mov ecx, dword [ebp - 0xcc]
mov eax, dword [ecx + 8]
add eax, 0xfffffff4
mov dword [ebp - 0x280], eax
mov edx, 0x6ff36c
mov ecx, dword [ebp - 0x280]
cmp edx, ecx
je 0x5ed055
mov eax, dword [ebp - 0x280]
push eax
call sub.KERNEL32.DLL_InterlockedIncrement
jmp 0x5ed055
mov edx, dword [ebp - 0x264]
mov ecx, dword [edx + 8]
mov eax, dword [ecx - 4]
mov dword [ebp - 0x284], eax
mov edx, dword [ebp - 0x284]
push edx
mov ecx, dword [ebp - 0x284]
push ecx
mov eax, dword [ebp - 0xcc]
push eax
call fcn.0069a874
add esp, 0xc
mov dword [ebp - 0x28c], eax
mov edx, dword [ebp - 0x28c]
add edx, 0xc
mov dword [ebp - 0x288], edx
mov ecx, dword [ebp - 0xcc]
mov eax, dword [ebp - 0x288]
mov dword [ecx + 8], eax
mov edx, dword [ebp - 0xcc]
mov dword [ebp - 0x290], edx
mov ecx, dword [ebp - 0x290]
mov eax, dword [ecx + 8]
mov dword [ebp - 0xd4c], eax
mov edx, dword [ebp - 0x284]
mov dword [ebp - 0x294], edx
mov ecx, dword [ebp - 0x264]
mov eax, dword [ecx + 8]
mov dword [ebp - 0x298], eax
mov edx, dword [ebp - 0xcc]
mov ecx, dword [edx + 8]
mov dword [ebp - 0x29c], ecx
mov eax, dword [ebp - 0x294]
push eax
mov edx, dword [ebp - 0x298]
push edx
mov ecx, dword [ebp - 0x29c]
push ecx
call fcn.0069cc60
add esp, 0xc
mov word [ebp - 0xe0], 0x14c
add dword [edi + 8], 0x10
jmp 0x5ed078
mov eax, dword [ebp - 0x264]
push eax
mov edx, dword [edi + 8]
push edx
push edi
call fcn.004069b4
add esp, 0xc
dec dword [ebp - 0xd4]
mov ecx, dword [ebp - 0xc0]
test ecx, ecx
je 0x5ed128
mov eax, dword [ebp - 0xc0]
mov edx, dword [eax - 0xc]
inc edx
test edx, edx
je 0x5ed0ce
mov edi, dword [ebp - 0xc0]
add edi, 0xfffffff4
cmp edi, 0x6ff36c
je 0x5ed0c5
cmp edi, 0x6ff36c
je 0x5ed0be
push edi
call sub.KERNEL32.DLL_InterlockedDecrement
mov eax, dword [edi]
inc eax
jmp 0x5ed0ca
mov eax, 1
jmp 0x5ed0ca
mov eax, 1
test eax, eax
jne 0x5ed128
mov edx, dword [ebp - 0xc0]
add edx, 0xfffffff4
mov dword [ebp - 0x2a0], edx
mov ecx, dword [ebp - 0xc0]
add ecx, 0xfffffff4
mov dword [ebp - 0x2a4], ecx
mov eax, dword [ebp - 0x2a4]
push eax
call fcn.0067ac7c
pop ecx
xor edx, edx
mov dword [ebp - 0x2a8], edx
lea eax, [ebp - 0xc8]
mov ecx, dword [ebp - 0x2a8]
mov dword [ebp - 0xc0], ecx
mov dword [ebp - 0x2ac], eax
mov edx, dword [ebp - 0x2ac]
mov ecx, dword [edx + 8]
mov dword [ebp - 0xd5c], ecx
inc dword [ebp - 0x16c]
jmp 0x5ece47
mov eax, dword [ebp + 0x10]
add ebx, 0xd8
mov edx, dword [eax + 8]
push edx
mov ecx, dword [ebp + 0x14]
push ecx
push ebx
push esi
call fcn.005e34ac
add esp, 0x10
mov eax, dword [ebp - 0xf0]
mov dword fs:[0], eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret