Function at 0x427a40
Capabilities:
Create process on windows
Read .ini file

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x4a0b6e
mov eax, dword fs:[0]
push eax
sub esp, 0x7a4
mov eax, dword [0x4c506c]
xor eax, ebp
mov dword [ebp - 0x10], eax
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
push 0x104
push 0
lea eax, [ebp - 0x218]
push eax
call fcn.00477ee0
add esp, 0xc
mov ecx, dword [ebp + 8]
push ecx
lea edx, [ebp - 0x780]
push edx
call fcn.00406450
add esp, 8
mov dword [ebp - 0x490], eax
mov eax, dword [ebp - 0x490]
mov dword [ebp - 0x48c], eax
mov dword [ebp - 4], 0
push str.version.ini
mov ecx, dword [ebp - 0x48c]
push ecx
lea edx, [ebp - 0x3c4]
push edx
call fcn.0040fc70
add esp, 0xc
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x780]
call fcn.00404630
lea ecx, [ebp - 0x3c4]
call fcn.00404610
push eax
push 0x104
lea eax, [ebp - 0x218]
push eax
push 0x4b9d3f
push str.version
push str.VersionInfo
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
mov byte [ebp - 0x449], 0
push 0xc
lea ecx, [ebp - 0x334]
call fcn.004053a0
lea ecx, [ebp - 0x334]
call fcn.00406550
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x394]
call fcn.00405750
mov byte [ebp - 4], 4
push 0xc
lea ecx, [ebp - 0x328]
call fcn.004053a0
lea ecx, [ebp - 0x328]
call fcn.00406550
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x218]
push ecx
lea ecx, [ebp - 0x768]
call fcn.004046a0
mov dword [ebp - 0x488], eax
mov edx, dword [ebp - 0x488]
mov dword [ebp - 0x484], edx
mov byte [ebp - 4], 6
lea eax, [ebp - 0x394]
push eax
lea ecx, [ebp - 0x334]
push ecx
mov edx, dword [ebp - 0x484]
push edx
mov eax, dword [ebp + 0x10]
push eax
mov ecx, dword [ebp + 0xc]
push ecx
call fcn.0042b580
add esp, 0x14
mov byte [ebp - 0x44a], al
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x768]
call fcn.00404630
movzx edx, byte [ebp - 0x44a]
test edx, edx
je 0x42870a
lea ecx, [ebp - 0x334]
call fcn.00421300
movzx eax, al
test eax, eax
jne 0x42870a
call fcn.00421970
cmp eax, 1
jg 0x427c01
push str.query_need_to_fix__begin_to_fix
push 1
push 0x4bc604
push 0x15e
push 0x4bc610
call fcn.00421d50
add esp, 0x14
push 0x4bc640
lea ecx, [ebp - 0x690]
call fcn.004046a0
mov byte [ebp - 4], 7
push 0x4bc648
lea ecx, [ebp - 0x678]
call fcn.004046a0
mov byte [ebp - 4], 8
push str.GetNewFix
lea ecx, [ebp - 0x630]
call fcn.004046a0
mov byte [ebp - 4], 9
push str.FixQuery
lea ecx, [ebp - 0x600]
call fcn.004046a0
mov byte [ebp - 4], 0xa
lea ecx, [ebp - 0x328]
push ecx
lea edx, [ebp - 0x690]
push edx
lea eax, [ebp - 0x678]
push eax
lea ecx, [ebp - 0x630]
push ecx
lea edx, [ebp - 0x600]
push edx
mov eax, dword [ebp + 0x10]
push eax
call fcn.0042df80
add esp, 0x18
mov byte [ebp - 4], 9
lea ecx, [ebp - 0x600]
call fcn.00404630
mov byte [ebp - 4], 8
lea ecx, [ebp - 0x630]
call fcn.00404630
mov byte [ebp - 4], 7
lea ecx, [ebp - 0x678]
call fcn.00404630
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x690]
call fcn.00404630
push 0x104
push 0
lea ecx, [ebp - 0x114]
push ecx
call fcn.00477ee0
add esp, 0xc
push 0x4bc664
mov edx, dword [ebp + 8]
push edx
lea eax, [ebp - 0x3dc]
push eax
call fcn.004068e0
add esp, 0xc
mov byte [ebp - 4], 0xb
push 0x104
lea ecx, [ebp - 0x114]
push ecx
lea ecx, [ebp - 0x3dc]
call fcn.00404610
push eax
call dword [sym.imp.KERNEL32.dll_GetLongPathNameA]
call dword [sym.imp.KERNEL32.dll_GetCurrentProcessId]
mov dword [ebp - 0x480], eax
push 0x104
push 0
lea edx, [ebp - 0x31c]
push edx
call fcn.00477ee0
add esp, 0xc
mov eax, dword [ebp - 0x480]
push eax
push str.fixpack_ld
lea ecx, [ebp - 0x31c]
push ecx
call fcn.0042a790
add esp, 0xc
lea edx, [ebp - 0x114]
push edx
lea ecx, [ebp - 0x7b0]
call fcn.004046a0
mov dword [ebp - 0x47c], eax
mov eax, dword [ebp - 0x47c]
mov dword [ebp - 0x478], eax
mov byte [ebp - 4], 0xc
lea ecx, [ebp - 0x31c]
push ecx
mov edx, dword [ebp - 0x478]
push edx
lea eax, [ebp - 0x37c]
push eax
call fcn.0040fc70
add esp, 0xc
mov byte [ebp - 4], 0xe
lea ecx, [ebp - 0x7b0]
call fcn.00404630
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x498], esp
lea edx, [ebp - 0x37c]
push edx
call fcn.00407850
call fcn.00426d30
add esp, 0x18
mov dword [ebp - 0x474], eax
mov eax, dword [ebp - 0x474]
mov dword [ebp - 0x470], eax
cmp dword [ebp - 0x470], 0
je 0x4286ea
push str.FixHexin.zip
lea ecx, [ebp - 0x37c]
push ecx
lea edx, [ebp - 0x34c]
push edx
call fcn.004068e0
add esp, 0xc
mov byte [ebp - 4], 0xf
lea eax, [ebp - 0x34c]
push eax
lea ecx, [ebp - 0x334]
push ecx
call fcn.00427390
add esp, 8
movzx edx, al
test edx, edx
jne 0x427f33
call fcn.00421970
cmp eax, 3
jg 0x427e64
lea ecx, [ebp - 0x34c]
call fcn.00404610
push eax
push 0
lea ecx, [ebp - 0x334]
call fcn.004064b0
mov ecx, eax
call fcn.00404610
push eax
push str.download_fix_package_file_failed__download_url_s__localpath_s
push 3
push 0x4bc6d0
push 0x171
push 0x4bc6dc
call fcn.00421d50
add esp, 0x1c
push 0x4bc70c
lea ecx, [ebp - 0x708]
call fcn.004046a0
mov byte [ebp - 4], 0x10
push 0x4bc714
lea ecx, [ebp - 0x6f0]
call fcn.004046a0
mov byte [ebp - 4], 0x11
push 0x4bc718
lea ecx, [ebp - 0x6d8]
call fcn.004046a0
mov byte [ebp - 4], 0x12
push str.FixDownLoad
lea ecx, [ebp - 0x6a8]
call fcn.004046a0
mov byte [ebp - 4], 0x13
lea eax, [ebp - 0x328]
push eax
lea ecx, [ebp - 0x708]
push ecx
lea edx, [ebp - 0x6f0]
push edx
lea eax, [ebp - 0x6d8]
push eax
lea ecx, [ebp - 0x6a8]
push ecx
mov edx, dword [ebp + 0x10]
push edx
call fcn.0042df80
add esp, 0x18
mov byte [ebp - 4], 0x12
lea ecx, [ebp - 0x6a8]
call fcn.00404630
mov byte [ebp - 4], 0x11
lea ecx, [ebp - 0x6d8]
call fcn.00404630
mov byte [ebp - 4], 0x10
lea ecx, [ebp - 0x6f0]
call fcn.00404630
mov byte [ebp - 4], 0xf
lea ecx, [ebp - 0x708]
call fcn.00404630
mov byte [ebp - 4], 0xe
lea ecx, [ebp - 0x34c]
call fcn.00404630
jmp 0x4286db
call fcn.00421970
cmp eax, 1
jg 0x427f7c
lea ecx, [ebp - 0x34c]
call fcn.00404610
push eax
push 0
lea ecx, [ebp - 0x334]
call fcn.004064b0
mov ecx, eax
call fcn.00404610
push eax
push str.download_fix_package_file_success__download_url_s__localpath_s
push 1
push 0x4bc72c
push 0x176
push 0x4bc77c
call fcn.00421d50
add esp, 0x1c
lea eax, [ebp - 0x114]
push eax
lea ecx, [ebp - 0x3ac]
call fcn.004046a0
mov byte [ebp - 4], 0x14
lea ecx, [ebp - 0x37c]
push ecx
lea edx, [ebp - 0x34c]
push edx
call fcn.0042ee00
add esp, 8
test eax, eax
je 0x4280b6
call fcn.00421970
cmp eax, 3
jg 0x427fd8
push str.unZip_fix_file_failed_
push 3
push 0x4bc7c4
push 0x17b
push 0x4bc7d0
call fcn.00421d50
add esp, 0x14
push 0x4bc800
lea ecx, [ebp - 0x4f8]
call fcn.004046a0
mov byte [ebp - 4], 0x15
push 0x4bc808
lea ecx, [ebp - 0x4e0]
call fcn.004046a0
mov byte [ebp - 4], 0x16
push 0x4bc80c
lea ecx, [ebp - 0x4c8]
call fcn.004046a0
mov byte [ebp - 4], 0x17
push str.FixUnZip
lea ecx, [ebp - 0x4b0]
call fcn.004046a0
mov byte [ebp - 4], 0x18
lea eax, [ebp - 0x328]
push eax
lea ecx, [ebp - 0x4f8]
push ecx
lea edx, [ebp - 0x4e0]
push edx
lea eax, [ebp - 0x4c8]
push eax
lea ecx, [ebp - 0x4b0]
push ecx
mov edx, dword [ebp + 0x10]
push edx
call fcn.0042df80
add esp, 0x18
mov byte [ebp - 4], 0x17
lea ecx, [ebp - 0x4b0]
call fcn.00404630
mov byte [ebp - 4], 0x16
lea ecx, [ebp - 0x4c8]
call fcn.00404630
mov byte [ebp - 4], 0x15
lea ecx, [ebp - 0x4e0]
call fcn.00404630
mov byte [ebp - 4], 0x14
lea ecx, [ebp - 0x4f8]
call fcn.00404630
mov byte [ebp - 4], 0xf
lea ecx, [ebp - 0x3ac]
call fcn.00404630
mov byte [ebp - 4], 0xe
lea ecx, [ebp - 0x34c]
call fcn.00404630
jmp 0x4286db
lea ecx, [ebp - 0x364]
call fcn.00405750
mov byte [ebp - 4], 0x19
push 0x4bc820
lea eax, [ebp - 0x37c]
push eax
lea ecx, [ebp - 0x798]
push ecx
call fcn.004068e0
add esp, 0xc
mov dword [ebp - 0x46c], eax
mov edx, dword [ebp - 0x46c]
mov dword [ebp - 0x468], edx
mov byte [ebp - 4], 0x1a
lea eax, [ebp - 0x364]
push eax
mov ecx, dword [ebp - 0x468]
push ecx
call fcn.00427530
add esp, 8
mov byte [ebp - 4], 0x19
lea ecx, [ebp - 0x798]
call fcn.00404630
lea ecx, [ebp - 0x364]
call fcn.004056c0
movzx edx, al
test edx, edx
je 0x428246
call fcn.00421970
cmp eax, 3
jg 0x428159
push str.fix_package_file_illegal_
push 3
push 0x4bc840
push 0x184
push 0x4bc84c
call fcn.00421d50
add esp, 0x14
push 0x4bc87c
lea ecx, [ebp - 0x558]
call fcn.004046a0
mov byte [ebp - 4], 0x1b
push 0x4bc884
lea ecx, [ebp - 0x540]
call fcn.004046a0
mov byte [ebp - 4], 0x1c
push 0x4bc888
lea ecx, [ebp - 0x528]
call fcn.004046a0
mov byte [ebp - 4], 0x1d
push str.FindFixLaunch
lea ecx, [ebp - 0x510]
call fcn.004046a0
mov byte [ebp - 4], 0x1e
lea eax, [ebp - 0x328]
push eax
lea ecx, [ebp - 0x558]
push ecx
lea edx, [ebp - 0x540]
push edx
lea eax, [ebp - 0x528]
push eax
lea ecx, [ebp - 0x510]
push ecx
mov edx, dword [ebp + 0x10]
push edx
call fcn.0042df80
add esp, 0x18
mov byte [ebp - 4], 0x1d
lea ecx, [ebp - 0x510]
call fcn.00404630
mov byte [ebp - 4], 0x1c
lea ecx, [ebp - 0x528]
call fcn.00404630
mov byte [ebp - 4], 0x1b
lea ecx, [ebp - 0x540]
call fcn.00404630
mov byte [ebp - 4], 0x19
lea ecx, [ebp - 0x558]
call fcn.00404630
mov byte [ebp - 4], 0x14
lea ecx, [ebp - 0x364]
call fcn.00404630
mov byte [ebp - 4], 0xf
lea ecx, [ebp - 0x3ac]
call fcn.00404630
mov byte [ebp - 4], 0xe
lea ecx, [ebp - 0x34c]
call fcn.00404630
jmp 0x4286db
lea ecx, [ebp - 0x394]
call fcn.004056c0
movzx eax, al
test eax, eax
je 0x428264
mov dword [ebp - 0x450], 0x4bc8a8
jmp 0x428275
lea ecx, [ebp - 0x394]
call fcn.00404610
mov dword [ebp - 0x450], eax
push 0x30
push 0x4bc8a0
mov ecx, dword [ebp - 0x450]
push ecx
push 0
call dword [sym.imp.USER32.dll_MessageBoxA]
push 0x4b9d42
lea ecx, [ebp - 0x588]
call fcn.004046a0
mov byte [ebp - 4], 0x1f
push 0x4b9cd8
lea ecx, [ebp - 0x570]
call fcn.004046a0
mov byte [ebp - 4], 0x20
lea edx, [ebp - 0x588]
push edx
lea eax, [ebp - 0x570]
push eax
mov ecx, dword [ebp + 8]
push ecx
call fcn.004277a0
add esp, 0xc
mov byte [ebp - 4], 0x1f
lea ecx, [ebp - 0x570]
call fcn.00404630
mov byte [ebp - 4], 0x19
lea ecx, [ebp - 0x588]
call fcn.00404630
push 0x1f4
call dword [sym.imp.KERNEL32.dll_Sleep]
push 0x4bc8cc
lea ecx, [ebp - 0x750]
call fcn.004046a0
mov dword [ebp - 0x464], eax
mov edx, dword [ebp - 0x464]
mov dword [ebp - 0x454], edx
mov byte [ebp - 4], 0x21
push 0x4bc8d0
lea ecx, [ebp - 0x738]
call fcn.004046a0
mov dword [ebp - 0x460], eax
mov eax, dword [ebp - 0x460]
mov dword [ebp - 0x45c], eax
mov byte [ebp - 4], 0x22
mov ecx, dword [ebp + 8]
push ecx
mov edx, dword [ebp - 0x45c]
push edx
lea eax, [ebp - 0x720]
push eax
call fcn.00425600
add esp, 0xc
mov dword [ebp - 0x494], eax
mov ecx, dword [ebp - 0x494]
mov dword [ebp - 0x458], ecx
mov byte [ebp - 4], 0x23
mov edx, dword [ebp - 0x454]
push edx
mov eax, dword [ebp - 0x458]
push eax
lea ecx, [ebp - 0x3f4]
push ecx
call fcn.0042a750
add esp, 0xc
mov byte [ebp - 4], 0x25
lea ecx, [ebp - 0x720]
call fcn.00404630
mov byte [ebp - 4], 0x26
lea ecx, [ebp - 0x738]
call fcn.00404630
mov byte [ebp - 4], 0x27
lea ecx, [ebp - 0x750]
call fcn.00404630
push 0x3c
push 0
lea edx, [ebp - 0x448]
push edx
call fcn.00477ee0
add esp, 0xc
mov dword [ebp - 0x448], 0x3c
lea ecx, [ebp - 0x364]
call fcn.00404610
mov dword [ebp - 0x438], eax
lea ecx, [ebp - 0x3f4]
call fcn.00404610
mov dword [ebp - 0x434], eax
mov dword [ebp - 0x444], 0x40
mov dword [ebp - 0x42c], 0
lea eax, [ebp - 0x448]
push eax
call dword [sym.imp.SHELL32.dll_ShellExecuteExA]
test eax, eax
je 0x4285a8
cmp dword [ebp - 0x410], 0
je 0x4285a8
push 0x4bc8d4
lea ecx, [ebp - 0x5e8]
call fcn.004046a0
mov byte [ebp - 4], 0x28
push 0x4bc8dc
lea ecx, [ebp - 0x5d0]
call fcn.004046a0
mov byte [ebp - 4], 0x29
push str.Success
lea ecx, [ebp - 0x5b8]
call fcn.004046a0
mov byte [ebp - 4], 0x2a
push 0x4bc8e8
lea ecx, [ebp - 0x5a0]
call fcn.004046a0
mov byte [ebp - 4], 0x2b
lea ecx, [ebp - 0x328]
push ecx
lea edx, [ebp - 0x5e8]
push edx
lea eax, [ebp - 0x5d0]
push eax
lea ecx, [ebp - 0x5b8]
push ecx
lea edx, [ebp - 0x5a0]
push edx
mov eax, dword [ebp + 0x10]
push eax
call fcn.0042df80
add esp, 0x18
mov byte [ebp - 4], 0x2a
lea ecx, [ebp - 0x5a0]
call fcn.00404630
mov byte [ebp - 4], 0x29
lea ecx, [ebp - 0x5b8]
call fcn.00404630
mov byte [ebp - 4], 0x28
lea ecx, [ebp - 0x5d0]
call fcn.00404630
mov byte [ebp - 4], 0x27
lea ecx, [ebp - 0x5e8]
call fcn.00404630
call fcn.00421970
cmp eax, 1
jg 0x428520
lea ecx, [ebp - 0x364]
call fcn.00404610
push eax
push str.execute__s_success
push 1
push 0x4bc908
push 0x197
push 0x4bc914
call fcn.00421d50
add esp, 0x18
push 0xffffffffffffffff
mov ecx, dword [ebp - 0x410]
push ecx
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov byte [ebp - 0x449], 1
call fcn.00421970
cmp eax, 1
jg 0x42855e
push str.fix_successed__begin_to_relaunch
push 1
push 0x4bc968
push 0x19a
push 0x4bc974
call fcn.00421d50
add esp, 0x14
push 0x4b9cd8
mov edx, dword [ebp + 8]
push edx
lea eax, [ebp - 0x40c]
push eax
call fcn.004068e0
add esp, 0xc
push 5
push 0
push 0x4b9d43
lea ecx, [ebp - 0x40c]
call fcn.00404610
push eax
push 0x4bc9a4
push 0
call dword [sym.imp.SHELL32.dll_ShellExecuteA]
lea ecx, [ebp - 0x40c]
call fcn.00404630
jmp 0x428697
push str.9997
lea ecx, [ebp - 0x660]
call fcn.004046a0
mov byte [ebp - 4], 0x2c
push 0x4bc9b4
lea ecx, [ebp - 0x648]
call fcn.004046a0
mov byte [ebp - 4], 0x2d
push str.Failed
lea ecx, [ebp - 0x6c0]
call fcn.004046a0
mov byte [ebp - 4], 0x2e
push str.ExecuteFix
lea ecx, [ebp - 0x618]
call fcn.004046a0
mov byte [ebp - 4], 0x2f
lea ecx, [ebp - 0x328]
push ecx
lea edx, [ebp - 0x660]
push edx
lea eax, [ebp - 0x648]
push eax
lea ecx, [ebp - 0x6c0]
push ecx
lea edx, [ebp - 0x618]
push edx
mov eax, dword [ebp + 0x10]
push eax
call fcn.0042df80
add esp, 0x18
mov byte [ebp - 4], 0x2e
lea ecx, [ebp - 0x618]
call fcn.00404630
mov byte [ebp - 4], 0x2d
lea ecx, [ebp - 0x6c0]
call fcn.00404630
mov byte [ebp - 4], 0x2c
lea ecx, [ebp - 0x648]
call fcn.00404630
mov byte [ebp - 4], 0x27
lea ecx, [ebp - 0x660]
call fcn.00404630
call fcn.00421970
cmp eax, 3
jg 0x428697
lea ecx, [ebp - 0x364]
call fcn.00404610
push eax
push str.fix_failed__execute__s_error
push 3
push 0x4bc9ec
push 0x1a3
push 0x4bc9f8
call fcn.00421d50
add esp, 0x18
mov byte [ebp - 4], 0x19
lea ecx, [ebp - 0x3f4]
call fcn.00404630
mov byte [ebp - 4], 0x14
lea ecx, [ebp - 0x364]
call fcn.00404630
mov byte [ebp - 4], 0xf
lea ecx, [ebp - 0x3ac]
call fcn.00404630
mov byte [ebp - 4], 0xe
lea ecx, [ebp - 0x34c]
call fcn.00404630
xor ecx, ecx
jne 0x427ddb
lea edx, [ebp - 0x37c]
push edx
call fcn.00426fb0
add esp, 4
mov byte [ebp - 4], 0xb
lea ecx, [ebp - 0x37c]
call fcn.00404630
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x3dc]
call fcn.00404630
jmp 0x428732
call fcn.00421970
cmp eax, 1
jg 0x428732
push str.query_no_need_to_fix
push 1
push str.CheckFix
push 0x1ad
push 0x4bca4c
call fcn.00421d50
add esp, 0x14
mov al, byte [ebp - 0x449]
mov byte [ebp - 0x44b], al
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x328]
call fcn.00406530
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x394]
call fcn.00404630
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x334]
call fcn.00406530
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x3c4]
call fcn.00404630
mov al, byte [ebp - 0x44b]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.00475c6f
mov esp, ebp
pop ebp
ret