Function at 0x5a8ad0
Capabilities:
Check for time delay via gettickcount

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
push 0xffffffffffffffff
push 0x797bd1
mov eax, dword fs:[0]
push eax
sub esp, 0x188
mov eax, dword [0x867e6c]
xor eax, esp
mov dword [esp + 0x180], eax
push ebx
push esi
push edi
mov eax, dword [0x867e6c]
xor eax, esp
push eax
lea eax, [esp + 0x198]
mov dword fs:[0], eax
mov edi, ecx
mov dword [esp + 0x48], edi
call fcn.0054b080
mov esi, dword [sym.imp.kernel32.dll_LoadLibraryA]
push str.version.dll
call esi
push str.ddraw.dll
mov dword [0x88b5d8], eax
call esi
push str.dsound.dll
mov dword [0x88b5d0], eax
call esi
push str.GetLastInputInfo
push str.user32.dll
mov dword [0x88b5d4], eax
call dword [sym.imp.kernel32.dll_GetModuleHandleA]
push eax
call dword [sym.imp.kernel32.dll_GetProcAddress]
mov dword [0x88b5dc], eax
call fcn.004786c0
mov eax, dword [edi + 4]
xor ebx, ebx
mov dword [eax + 0x530], ebx
mov ecx, dword [edi + 4]
push 0x100
lea eax, [esp + 0x88]
mov dword [ecx + 0x120], ebx
mov edx, dword [edi + 4]
push eax
push ebx
mov byte [edx + 0x11e], 1
call dword [sym.imp.kernel32.dll_GetModuleFileNameA]
lea eax, [esp + 0x84]
mov dword [esp + 0x28], 0xf
mov dword [esp + 0x24], ebx
mov byte [esp + 0x14], bl
lea esi, [eax + 1]
mov cl, byte [eax]
inc eax
cmp cl, bl
jne 0x5a8bb2
sub eax, esi
push eax
lea ecx, [esp + 0x88]
push ecx
lea ecx, [esp + 0x18]
call fcn.004016e0
lea eax, [esp + 0x10]
mov dword [esp + 0x1a0], ebx
mov edx, dword [edi]
mov edx, dword [edx + 0x108]
push eax
lea ecx, [esp + 0x30]
push ecx
mov ecx, edi
call edx
push 0xffffffffffffffff
mov byte [esp + 0x1a4], 1
mov ecx, dword [edi + 4]
push ebx
add ecx, 0x3d8
push eax
call fcn.00401530
mov esi, 0x10
cmp dword [esp + 0x44], esi
jb 0x5a8c1c
mov eax, dword [esp + 0x30]
push eax
call fcn.006441c7
add esp, 4
mov dword [esp + 0x1a0], 0xffffffff
mov dword [esp + 0x44], 0xf
mov dword [esp + 0x40], ebx
mov byte [esp + 0x30], bl
cmp dword [esp + 0x28], esi
jb 0x5a8c4a
mov ecx, dword [esp + 0x14]
push ecx
call fcn.006441c7
add esp, 4
lea eax, [esp + 0x84]
mov dword [esp + 0x28], 0xf
mov dword [esp + 0x24], ebx
mov byte [esp + 0x14], bl
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
cmp cl, bl
jne 0x5a8c64
sub eax, edx
push eax
lea edx, [esp + 0x88]
push edx
lea ecx, [esp + 0x18]
call fcn.004016e0
lea eax, [esp + 0x10]
push eax
xor al, al
lea esi, [esp + 0x30]
mov dword [esp + 0x1a4], 2
call fcn.00439610
add esp, 4
or esi, 0xffffffff
push esi
mov byte [esp + 0x1a4], 3
mov ecx, dword [edi + 4]
push ebx
add ecx, 0xb0
push eax
call fcn.00401530
cmp dword [esp + 0x44], 0x10
jb 0x5a8ccd
mov ecx, dword [esp + 0x30]
push ecx
call fcn.006441c7
add esp, 4
mov dword [esp + 0x1a0], esi
cmp dword [esp + 0x28], 0x10
mov dword [esp + 0x44], 0xf
mov dword [esp + 0x40], ebx
mov byte [esp + 0x30], bl
jb 0x5a8cf8
mov edx, dword [esp + 0x14]
push edx
call fcn.006441c7
add esp, 4
mov eax, dword [edi + 4]
mov byte [eax + 0x3af], bl
mov ecx, dword [edi + 4]
mov byte [ecx + 0x3b0], 1
call dword [sym.imp.kernel32.dll_GetTickCount]
mov edx, dword [edi + 4]
mov dword [edx + 0x3a8], eax
mov eax, dword [edi + 4]
mov byte [eax + 0x39c], bl
mov ecx, dword [edi + 4]
push 7
add ecx, 0x5c
push str.Product
call fcn.004016e0
mov ecx, dword [edi + 4]
push 7
add ecx, 0x78
push str.SexyApp
call fcn.00403a80
fldz
mov ecx, dword [edi + 4]
mov byte [ecx + 0x39d], bl
mov edx, dword [edi + 4]
mov byte [edx + 0x39e], bl
mov eax, dword [edi + 4]
mov dword [eax + 0xe8], 0x280
mov ecx, dword [edi + 4]
mov dword [ecx + 0xec], 0x1e0
mov edx, dword [edi + 4]
mov dword [edx + 0xf0], 0x10
mov eax, dword [edi + 4]
mov byte [eax + 0x39f], 1
mov ecx, dword [edi + 4]
mov byte [ecx + 0x3a0], 1
mov edx, dword [edi + 4]
mov byte [edx + 0x3a1], bl
mov eax, dword [edi + 4]
mov dword [eax + 0xd8], esi
mov ecx, dword [edi + 4]
mov dword [ecx + 0xdc], esi
mov edx, dword [edi + 4]
mov dword [edx + 0xe0], esi
mov eax, dword [edi + 4]
mov dword [eax + 0xe4], esi
mov ecx, dword [edi + 4]
mov byte [ecx + 0x3ac], bl
mov edx, dword [edi + 4]
mov byte [edx + 0x3ad], 1
mov eax, dword [edi + 4]
mov byte [eax + 0x3ae], bl
mov ecx, dword [edi + 4]
mov dword [ecx + 0x5e4], ebx
mov edx, dword [edi + 4]
mov dword [edx + 0x3b4], ebx
mov eax, dword [edi + 4]
mov dword [eax + 0x5e8], ebx
mov edx, dword [edi + 4]
mov ecx, 0xa
mov dword [edx + 0x558], ecx
mov eax, dword [edi + 4]
mov dword [eax + 0x554], ebx
mov edx, dword [edi + 4]
mov dword [edx + 0x58c], ebx
mov eax, dword [edi + 4]
mov dword [eax + 0x588], ebx
mov edx, dword [edi + 4]
mov dword [edx + 0x590], ebx
mov eax, dword [edi + 4]
mov dword [eax + 0x594], ebx
mov edx, dword [edi + 4]
mov dword [edx + 0x598], ebx
mov eax, dword [edi + 4]
fst qword [eax + 0x560]
mov edx, dword [edi + 4]
fstp qword [edx + 0x568]
mov eax, dword [edi + 4]
mov byte [eax + 0x55e], 1
mov edx, dword [edi + 4]
mov byte [edx + 0x55c], bl
mov eax, dword [edi + 4]
mov byte [eax + 0x55d], bl
mov eax, dword [edi + 4]
mov dword [eax + 0x570], ebx
mov dword [eax + 0x574], ebx
fld qword [0x7a8008]
mov edx, dword [edi + 4]
fstp qword [edx + 0x5a0]
mov eax, dword [edi + 4]
mov dword [eax + 0x59c], ecx
fldz
mov ecx, dword [edi + 4]
mov byte [ecx + 0x5a8], bl
mov edx, dword [edi + 4]
mov dword [edx + 0x5ac], ebx
mov eax, dword [edi + 4]
mov byte [eax + 0x5b0], bl
mov ecx, dword [edi + 4]
mov byte [ecx + 0x5b1], bl
mov edx, dword [edi + 4]
mov dword [edx + 0x5d0], ebx
mov eax, dword [edi + 4]
mov dword [eax + 0x5cc], ebx
mov ecx, dword [edi + 4]
mov byte [ecx + 0x630], bl
mov edx, dword [edi + 4]
mov byte [edx + 0x631], bl
mov eax, dword [edi + 4]
mov byte [eax + 0x632], 1
mov ecx, dword [edi + 4]
mov byte [ecx + 0x3a5], bl
mov edx, dword [edi + 4]
mov byte [edx + 0x633], bl
mov eax, dword [edi + 4]
mov byte [eax + 0x634], bl
mov ecx, dword [edi + 4]
mov byte [ecx + 0x635], bl
mov edx, dword [edi + 4]
mov byte [edx + 0x67f], bl
mov eax, dword [edi + 4]
mov byte [eax + 0x680], bl
mov ecx, dword [edi + 4]
fstp dword [ecx + 0x684]
mov edx, dword [edi + 4]
mov byte [edx + 0x6c0], bl
mov eax, dword [edi + 4]
mov esi, dword [sym.imp.winmm.dll_timeGetTime]
mov byte [eax + 0x6c1], bl
mov ecx, dword [edi + 4]
mov byte [ecx + 0x67d], bl
mov edx, dword [edi + 4]
mov byte [edx + 0x67c], 1
mov eax, dword [edi + 4]
mov byte [eax + 0x67e], bl
mov ecx, dword [edi + 4]
mov byte [ecx + 0x6c2], bl
mov edx, dword [edi + 4]
mov dword [edx + 0x6cc], ebx
mov eax, dword [edi + 4]
mov dword [eax + 0x6d0], ebx
call esi
mov ecx, dword [edi + 4]
mov dword [ecx + 0x5b8], eax
mov dword [ecx + 0x5bc], ebx
call esi
mov ecx, dword [edi + 4]
mov dword [ecx + 0x5c0], eax
mov dword [ecx + 0x5c4], ebx
mov ecx, dword [edi + 4]
mov byte [ecx + 0x6c3], 1
mov edx, dword [edi + 4]
mov byte [edx + 0x3a2], bl
mov eax, dword [edi + 4]
mov byte [eax + 0x3a3], bl
mov ecx, dword [edi + 4]
mov byte [ecx + 0x636], 1
mov edx, dword [edi + 4]
mov byte [edx + 0x6c4], bl
mov eax, dword [edi + 4]
mov byte [eax + 0x6c5], bl
mov ecx, dword [edi + 4]
mov dword [ecx + 0x5d8], ebx
mov edx, dword [edi + 4]
mov byte [edx + 0x428], bl
fld qword [str.333333]
mov eax, dword [edi + 4]
mov byte [eax + 0x3a4], bl
mov ecx, dword [edi + 4]
mov byte [ecx + 0x6c6], 1
mov edx, dword [edi + 4]
mov byte [edx + 0x3b8], bl
mov eax, dword [edi + 4]
mov byte [eax + 0x11a], bl
mov ecx, dword [edi + 4]
mov byte [ecx + 0x11b], bl
mov edx, dword [edi + 4]
mov byte [edx + 0x6d6], bl
mov eax, dword [edi + 4]
mov byte [eax + 0x6d7], bl
mov ecx, dword [edi + 4]
mov byte [ecx + 0x6d8], 1
mov edx, dword [edi + 4]
mov dword [edx + 0x5c8], ebx
mov eax, dword [edi + 4]
mov byte [eax + 0x550], bl
mov ecx, dword [edi + 4]
mov byte [ecx + 0x11c], 1
mov edx, dword [edi + 4]
mov byte [edx + 0x11d], 1
mov eax, dword [edi + 4]
mov byte [eax + 0x6d5], bl
mov ecx, dword [edi + 4]
mov byte [ecx + 0x6c8], 1
mov edx, dword [edi + 4]
mov byte [edx + 0x6c9], bl
mov eax, dword [edi + 4]
mov byte [eax + 0x6ca], 1
mov ecx, dword [edi + 4]
fst qword [ecx + 0xf8]
mov edx, dword [edi + 4]
fstp qword [edx + 0x100]
mov eax, dword [edi + 4]
mov dword [eax + 0x468], ebx
mov ecx, dword [edi + 4]
mov dword [ecx + 0x46c], ebx
mov edx, dword [edi + 4]
mov byte [edx + 0x470], bl
mov eax, dword [edi + 4]
mov byte [eax + 0x471], 1
mov ecx, dword [edi + 4]
mov dword [ecx + 0x610], ebx
mov edx, dword [edi + 4]
mov dword [edx + 0x648], ebx
call dword [sym.imp.kernel32.dll_GetTickCount]
fldz
mov ecx, dword [edi + 4]
mov dword [ecx + 0x63c], eax
mov edx, dword [edi + 4]
mov dword [edx + 0x640], ebx
mov eax, dword [edi + 4]
mov dword [eax + 0x64c], ebx
mov ecx, dword [edi + 4]
mov dword [ecx + 0x644], ebx
mov edx, dword [edi + 4]
mov byte [edx + 0x650], bl
mov eax, dword [edi + 4]
mov dword [eax + 0x654], ebx
mov ecx, dword [edi + 4]
fst qword [ecx + 0x658]
mov edx, dword [edi + 4]
mov dword [edx + 0x660], ebx
mov eax, dword [edi + 4]
fstp qword [eax + 0x668]
mov ecx, dword [edi + 4]
fldz
mov dword [ecx + 0x670], ebx
mov edx, dword [edi + 4]
fstp dword [edx + 0x674]
mov eax, dword [edi + 4]
mov dword [eax + 0x638], ebx
mov ecx, dword [edi + 4]
mov dword [ecx + 0x678], ebx
mov edx, dword [edi + 4]
mov byte [edx + 0x6d4], bl
mov eax, dword [edi + 4]
mov dword [eax + 0x5ec], ebx
mov ecx, dword [edi + 4]
mov byte [ecx + 0x118], bl
mov edx, dword [edi + 4]
mov byte [edx + 0x119], bl
mov eax, dword [edi + 4]
mov dword [eax + 0x6dc], 0x64
mov ecx, dword [edi + 4]
mov byte [ecx + 0x6e0], bl
mov edx, dword [edi + 4]
mov byte [edx + 0x6e1], 1
mov eax, dword [edi + 4]
mov byte [eax + 0x6e2], bl
mov ecx, dword [edi + 4]
mov dword [ecx + 0x6e4], ebx
mov eax, dword [edi + 4]
mov dword [eax + 0x6e8], ebx
mov dword [eax + 0x6ec], ebx
mov eax, dword [edi + 4]
mov dword [eax + 0x6f0], ebx
mov dword [eax + 0x6f4], ebx
mov edx, dword [edi + 4]
mov byte [edx + 0x6f8], bl
mov eax, dword [edi + 4]
mov byte [eax + 0x6f9], 1
mov ecx, dword [edi + 4]
mov byte [ecx + 0x6fa], bl
mov edx, dword [edi + 4]
mov byte [edx + 0x6fb], bl
mov eax, dword [edi + 4]
mov byte [eax + 0x6fc], bl
mov ecx, dword [edi + 4]
mov dword [ecx + 0x700], 6
mov edx, dword [edi + 4]
mov dword [edx + 0x704], 0xe
mov eax, dword [edi + 4]
mov dword [eax + 0xcc], ebx
mov ecx, dword [edi + 4]
mov byte [ecx + 0x708], bl
mov edx, dword [edi + 4]
mov byte [edx + 0x709], 1
mov eax, dword [edi + 4]
mov byte [eax + 0x71c], bl
mov ecx, dword [edi + 4]
push 4
add ecx, 0x720
push ecx
mov ebx, 3
call fcn.004972f0
mov edx, dword [edi + 4]
push 4
add edx, 0x728
push edx
call fcn.004972f0
mov eax, dword [edi + 4]
push 0x10
add eax, 0x730
push eax
mov ebx, 0xa
call fcn.004972f0
mov ecx, dword [edi + 4]
mov esi, dword [sym.imp.user32.dll_GetSystemMetrics]
xor ebx, ebx
push ebx
mov byte [ecx + 0x6c7], bl
call esi
mov edx, dword [edi + 4]
push 1
mov dword [edx + 0x73c], eax
call esi
mov ecx, dword [edi + 4]
mov dword [ecx + 0x740], eax
mov edx, dword [edi + 4]
mov byte [edx + 0x744], bl
mov eax, 0x3f4
lea ebx, [ebx]
mov ecx, dword [edi + 4]
mov dword [eax + ecx], ebx
add eax, 4
cmp eax, 0x428
jl 0x5a92a0
xor eax, eax
mov edx, dword [edi + 4]
mov byte [eax + edx + 0x155], al
inc eax
cmp eax, 0x100
jl 0x5a92b2
mov eax, 0x100
mov cl, 0xff
jmp 0x5a92d0
mov edx, dword [edi + 4]
mov byte [eax + edx + 0x155], cl
inc eax
cmp eax, 0x200
jl 0x5a92d0
push 0xc
xor eax, eax
push str.Update_Check
lea ecx, [esp + 0x34]
mov dword [esp + 0x4c], 7
mov dword [esp + 0x48], ebx
mov word [esp + 0x38], ax
call fcn.00403a80
mov dword [esp + 0x1a0], 4
push 0x12
mov esi, 0xf
push str.UPDATE_CHECK_TITLE
lea ecx, [esp + 0x18]
mov dword [esp + 0x30], esi
mov dword [esp + 0x2c], ebx
mov byte [esp + 0x1c], bl
call fcn.004016e0
lea ecx, [esp + 0x10]
mov byte [esp + 0x1a0], 5
mov edx, dword [edi + 4]
push ecx
push edx
lea edi, [esp + 0x34]
call fcn.0046a300
cmp dword [esp + 0x28], 0x10
jb 0x5a935f
mov eax, dword [esp + 0x14]
push eax
call fcn.006441c7
add esp, 4
mov dword [esp + 0x1a0], 0xffffffff
cmp dword [esp + 0x44], 8
mov dword [esp + 0x28], esi
mov dword [esp + 0x24], ebx
mov byte [esp + 0x14], bl
jb 0x5a938a
mov ecx, dword [esp + 0x30]
push ecx
call fcn.006441c7
add esp, 4
push pe_nt_image_headers32
xor edx, edx
push str.Checking_if_there_are_any_updates_available_for_this_product_...
lea ecx, [esp + 0x34]
mov dword [esp + 0x4c], 7
mov dword [esp + 0x48], ebx
mov word [esp + 0x38], dx
call fcn.00403a80
mov dword [esp + 0x1a0], 6
push 0x11
push str.UPDATE_CHECK_BODY
lea ecx, [esp + 0x18]
mov dword [esp + 0x30], esi
mov dword [esp + 0x2c], ebx
mov byte [esp + 0x1c], bl
call fcn.004016e0
mov esi, dword [esp + 0x48]
lea eax, [esp + 0x10]
mov byte [esp + 0x1a0], 7
mov ecx, dword [esi + 4]
push eax
push ecx
lea edi, [esp + 0x34]
call fcn.0046a300
cmp dword [esp + 0x28], 0x10
jb 0x5a9406
mov edx, dword [esp + 0x14]
push edx
call fcn.006441c7
add esp, 4
mov edi, 0xf
mov dword [esp + 0x1a0], 0xffffffff
cmp dword [esp + 0x44], 8
mov dword [esp + 0x28], edi
mov dword [esp + 0x24], ebx
mov byte [esp + 0x14], bl
jb 0x5a9436
mov eax, dword [esp + 0x30]
push eax
call fcn.006441c7
add esp, 4
xor ecx, ecx
push 0xa
mov word [esp + 0x34], cx
push str.Up_to_Date
lea ecx, [esp + 0x34]
mov dword [esp + 0x4c], 7
mov dword [esp + 0x48], ebx
call fcn.00403a80
mov dword [esp + 0x1a0], 8
push 0x10
push str.UP_TO_DATE_TITLE
lea ecx, [esp + 0x18]
mov dword [esp + 0x30], edi
mov dword [esp + 0x2c], ebx
mov byte [esp + 0x1c], bl
call fcn.004016e0
lea edx, [esp + 0x10]
mov byte [esp + 0x1a0], 9
mov eax, dword [esi + 4]
push edx
push eax
lea edi, [esp + 0x34]
call fcn.0046a300
cmp dword [esp + 0x28], 0x10
jb 0x5a94ae
mov ecx, dword [esp + 0x14]
push ecx
call fcn.006441c7
add esp, 4
mov edi, 0xf
mov dword [esp + 0x1a0], 0xffffffff
cmp dword [esp + 0x44], 8
mov dword [esp + 0x28], edi
mov dword [esp + 0x24], ebx
mov byte [esp + 0x14], bl
jb 0x5a94de
mov edx, dword [esp + 0x30]
push edx
call fcn.006441c7
add esp, 4
push 0x3d
xor eax, eax
push str.There_are_no_updates_available_for_this_product_at_this_time.
lea ecx, [esp + 0x34]
mov dword [esp + 0x4c], 7
mov dword [esp + 0x48], ebx
mov word [esp + 0x38], ax
call fcn.00403a80
mov dword [esp + 0x1a0], 0xa
push edi
push str.UP_TO_DATE_BODY
lea ecx, [esp + 0x18]
mov dword [esp + 0x30], edi
mov dword [esp + 0x2c], ebx
mov byte [esp + 0x1c], bl
call fcn.004016e0
lea ecx, [esp + 0x10]
mov byte [esp + 0x1a0], 0xb
mov edx, dword [esi + 4]
push ecx
push edx
lea edi, [esp + 0x34]
call fcn.0046a300
cmp dword [esp + 0x28], 0x10
jb 0x5a9555
mov eax, dword [esp + 0x14]
push eax
call fcn.006441c7
add esp, 4
mov edi, 0xf
mov dword [esp + 0x1a0], 0xffffffff
cmp dword [esp + 0x44], 8
mov dword [esp + 0x28], edi
mov dword [esp + 0x24], ebx
mov byte [esp + 0x14], bl
jb 0x5a9585
mov ecx, dword [esp + 0x30]
push ecx
call fcn.006441c7
add esp, 4
push 0xb
xor edx, edx
push str.New_Version
lea ecx, [esp + 0x34]
mov dword [esp + 0x4c], 7
mov dword [esp + 0x48], ebx
mov word [esp + 0x38], dx
call fcn.00403a80
mov dword [esp + 0x1a0], 0xc
push 0x11
push str.NEW_VERSION_TITLE
lea ecx, [esp + 0x18]
mov dword [esp + 0x30], edi
mov dword [esp + 0x2c], ebx
mov byte [esp + 0x1c], bl
call fcn.004016e0
lea eax, [esp + 0x10]
mov byte [esp + 0x1a0], 0xd
mov ecx, dword [esi + 4]
push eax
push ecx
lea edi, [esp + 0x34]
call fcn.0046a300
cmp dword [esp + 0x28], 0x10
jb 0x5a95fd
mov edx, dword [esp + 0x14]
push edx
call fcn.006441c7
add esp, 4
mov edi, 0xf
mov dword [esp + 0x1a0], 0xffffffff
cmp dword [esp + 0x44], 8
mov dword [esp + 0x28], edi
mov dword [esp + 0x24], ebx
mov byte [esp + 0x14], bl
jb 0x5a962d
mov eax, dword [esp + 0x30]
push eax
call fcn.006441c7
add esp, 4
xor ecx, ecx
push 0x64
mov word [esp + 0x34], cx
push str.There_is_an_update_available_for_this_product.__Would_you_like_to_visit_the_web_site_to_download_it_
lea ecx, [esp + 0x34]
mov dword [esp + 0x4c], 7
mov dword [esp + 0x48], ebx
call fcn.00403a80
mov dword [esp + 0x1a0], 0xe
push 0x10
push str.NEW_VERSION_BODY
lea ecx, [esp + 0x18]
mov dword [esp + 0x30], edi
mov dword [esp + 0x2c], ebx
mov byte [esp + 0x1c], bl
call fcn.004016e0
lea edx, [esp + 0x10]
mov byte [esp + 0x1a0], 0xf
mov eax, dword [esi + 4]
push edx
push eax
lea edi, [esp + 0x34]
call fcn.0046a300
mov edi, 0x10
cmp dword [esp + 0x28], edi
jb 0x5a96a9
mov ecx, dword [esp + 0x14]
push ecx
call fcn.006441c7
add esp, 4
mov dword [esp + 0x1a0], 0xffffffff
cmp dword [esp + 0x44], 8
mov dword [esp + 0x28], 0xf
mov dword [esp + 0x24], ebx
mov byte [esp + 0x14], bl
jb 0x5a96d8
mov edx, dword [esp + 0x30]
push edx
call fcn.006441c7
add esp, 4
mov eax, dword [esi + 4]
push 0x56
mov dword [eax + 0x398], ebx
call dword [sym.imp.user32.dll_GetSystemMetrics]
test eax, eax
je 0x5a9702
mov ecx, dword [esi + 4]
mov byte [ecx + 0x3b1], 1
mov edx, dword [esi + 4]
mov byte [edx + 0x3b0], bl
jmp 0x5a970b
mov eax, dword [esi + 4]
mov byte [eax + 0x3b1], bl
mov eax, dword [esi + 4]
mov dword [eax + 0x82c], ebx
mov ecx, dword [esi + 4]
mov dword [0x88b55c], eax
mov byte [ecx + 0x738], 1
call fcn.0049e310
mov edx, dword [esi + 4]
mov dword [edx + 0x830], eax
mov eax, 0xf
mov dword [esp + 0x80], eax
mov dword [esp + 0x7c], ebx
mov byte [esp + 0x6c], bl
mov dword [esp + 0x1a0], edi
push 0xa
push str.compat.cfg
lea ecx, [esp + 0x34]
mov dword [esp + 0x4c], eax
mov dword [esp + 0x48], ebx
mov byte [esp + 0x38], bl
call fcn.004016e0
mov byte [esp + 0x1a0], 0x11
mov eax, dword [esi + 4]
mov ecx, dword [eax + 0x830]
mov edx, dword [ecx]
mov edx, dword [edx + 4]
lea eax, [esp + 0x68]
push eax
lea eax, [esp + 0x30]
push eax
call edx
mov ecx, dword [esi + 4]
mov dword [ecx + 0x834], eax
mov byte [esp + 0x1a0], 0x10
cmp dword [esp + 0x44], edi
jb 0x5a97ae
mov edx, dword [esp + 0x30]
push edx
call fcn.006441c7
add esp, 4
mov eax, dword [esi + 4]
cmp dword [eax + 0x834], ebx
jne 0x5a98a6
cmp dword [esp + 0x7c], ebx
je 0x5a9817
mov eax, dword [esp + 0x6c]
cmp dword [esp + 0x80], edi
jae 0x5a97d4
lea eax, [esp + 0x6c]
push eax
push str.Configuration_file_parse_error:__s
lea esi, [esp + 0x54]
call fcn.00439900
add esp, 8
mov ecx, dword [esp + 0x48]
mov byte [esp + 0x1a0], 0x12
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 0x38]
call eax
cmp dword [esp + 0x64], 0x10
jb 0x5a980e
mov ecx, dword [esp + 0x50]
push ecx
call fcn.006441c7
add esp, 4
mov esi, dword [esp + 0x48]
mov edi, 0x10
mov eax, dword [esi + 4]
mov dword [eax + 0x838], ebx
mov ecx, dword [esi + 4]
mov byte [ecx + 0x83c], bl
mov edx, dword [esi + 4]
mov dword [edx + 0x844], ebx
mov eax, dword [esi + 4]
mov dword [eax + 0x848], ebx
mov ecx, dword [esi + 4]
mov dword [ecx + 0x840], ebx
mov edx, dword [esi + 4]
mov byte [edx + 0x83d], bl
mov eax, dword [esi + 4]
mov byte [eax + 0x83e], bl
mov esi, dword [esi + 4]
or eax, 0xffffffff
or ecx, eax
mov dword [esi + 0x84c], eax
mov dword [esi + 0x850], ecx
cmp dword [esp + 0x80], edi
jb 0x5a9880
mov ecx, dword [esp + 0x6c]
push ecx
call fcn.006441c7
add esp, 4
mov al, 1
mov ecx, dword [esp + 0x198]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x180]
xor ecx, esp
call fcn.00643db8
mov esp, ebp
pop ebp
ret
mov edx, eax
mov ecx, dword [edx + 0x834]
mov eax, dword [ecx]
mov edx, dword [eax + 4]
push ebx
push ebx
call edx
jmp 0x5a9817