Function at 0x40d9a0
Capabilities:
Contain obfuscated stackstrings
Delete file
Parse pe header

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x5375e6
mov eax, dword fs:[0]
push eax
sub esp, 0xb84
mov eax, dword [0x5be1ec]
xor eax, ebp
mov dword [ebp - 0x10], eax
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x544], ecx
mov dword [ebp - 4], 1
lea eax, [ebp - 0xa10]
push eax
lea ecx, [ebp + 8]
call fcn.00410a70
mov ecx, eax
call fcn.0040c970
mov dword [ebp - 0x600], eax
mov ecx, dword [ebp - 0x600]
mov dword [ebp - 0x5fc], ecx
mov byte [ebp - 4], 2
push 0x5a3638
mov edx, dword [ebp - 0x5fc]
push edx
call fcn.00408c80
add esp, 8
mov byte [ebp - 0x54b], al
mov byte [ebp - 4], 1
lea ecx, [ebp - 0xa10]
call fcn.00406e80
movzx eax, byte [ebp - 0x54b]
test eax, eax
je 0x40e155
cmp dword [ebp + 0x10], 1
jne 0x40e155
lea ecx, [ebp + 8]
call fcn.00410a70
mov dword [ebp - 0x560], eax
mov ecx, dword [ebp - 0x560]
mov edx, dword [ecx]
mov ecx, dword [ebp - 0x560]
mov eax, dword [edx + 4]
call eax
movzx ecx, al
test ecx, ecx
jne 0x40dc4b
mov edx, dword [ebp - 0x544]
movzx eax, byte [edx + 0x2f0]
test eax, eax
jne 0x40dc4b
mov ecx, dword [ebp - 0x544]
mov byte [ecx + 0x2f0], 1
push 8
lea ecx, [ebp - 0x40]
call fcn.0040a660
lea ecx, [ebp - 0x40]
call fcn.00410f20
mov byte [ebp - 4], 3
push 0x5a3640
lea ecx, [ebp - 0x968]
call fcn.00406fc0
mov byte [ebp - 4], 4
mov edx, dword [ebp - 0x544]
add edx, 0xe0
push edx
lea eax, [ebp - 0x968]
push eax
lea ecx, [ebp - 0x40]
call fcn.00410e40
mov ecx, eax
call fcn.00411340
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x968]
call fcn.00406e80
push 0x5a3644
lea ecx, [ebp - 0x728]
call fcn.00406fc0
mov byte [ebp - 4], 5
push 0x5a364c
lea ecx, [ebp - 0x728]
push ecx
lea ecx, [ebp - 0x40]
call fcn.00410e40
mov ecx, eax
call fcn.00411320
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x728]
call fcn.00406e80
lea edx, [ebp - 0x360]
push edx
mov ecx, dword [ebp - 0x544]
call fcn.004102b0
mov byte [ebp - 4], 6
push 8
lea ecx, [ebp - 0x60]
call fcn.0040a660
lea eax, [ebp - 0x40]
push eax
lea ecx, [ebp - 0xa28]
push ecx
call fcn.00445620
add esp, 8
mov dword [ebp - 0x5f4], eax
mov edx, dword [ebp - 0x5f4]
mov dword [ebp - 0x5f0], edx
mov byte [ebp - 4], 7
mov eax, dword [ebp - 0x5f0]
push eax
lea ecx, [ebp - 0x360]
push ecx
lea edx, [ebp - 0x60]
push edx
call fcn.00449f90
add esp, 0xc
mov byte [ebp - 4], 9
lea ecx, [ebp - 0xa28]
call fcn.00406e80
push 0x5a3650
lea ecx, [ebp - 0x770]
call fcn.00406fc0
mov byte [ebp - 4], 0xa
lea eax, [ebp - 0x770]
push eax
lea ecx, [ebp - 0x60]
call fcn.00410a70
mov ecx, eax
call fcn.0040c950
mov byte [ebp - 4], 9
lea ecx, [ebp - 0x770]
call fcn.00406e80
sub esp, 8
mov ecx, esp
mov dword [ebp - 0x6ac], esp
lea edx, [ebp - 0x60]
push edx
call fcn.00410ad0
mov dword [ebp - 0x6b0], eax
mov ecx, dword [ebp - 0x544]
add ecx, 0x1f8
call fcn.00449b60
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x60]
call fcn.00406d60
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x360]
call fcn.00406e80
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x40]
call fcn.00410110
mov byte [ebp - 4], 0
lea ecx, [ebp + 8]
call fcn.00406d60
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp + 0x14]
call fcn.00406d60
jmp 0x4100ef
lea ecx, [ebp + 8]
call fcn.00410a70
mov dword [ebp - 0x564], eax
mov eax, dword [ebp - 0x564]
mov edx, dword [eax]
mov ecx, dword [ebp - 0x564]
mov eax, dword [edx + 4]
call eax
movzx ecx, al
test ecx, ecx
jne 0x40dd1a
lea ecx, [ebp - 0x420]
call fcn.00406480
mov byte [ebp - 4], 0xb
push 0x5a3658
lea ecx, [ebp - 0x420]
call fcn.00411320
push 0x5a3664
lea ecx, [ebp - 0x980]
call fcn.00406fc0
mov byte [ebp - 4], 0xc
lea edx, [ebp - 0x980]
push edx
lea eax, [ebp - 0xa40]
push eax
lea ecx, [ebp + 0x14]
call fcn.00410a70
mov ecx, eax
call fcn.0040c890
mov dword [ebp - 0x5ec], eax
mov ecx, dword [ebp - 0x5ec]
push ecx
lea ecx, [ebp - 0x408]
call fcn.00406ec0
lea ecx, [ebp - 0xa40]
call fcn.00406e80
mov byte [ebp - 4], 0xb
lea ecx, [ebp - 0x980]
call fcn.00406e80
lea edx, [ebp - 0x420]
push edx
mov ecx, dword [ebp - 0x544]
call fcn.00410270
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x420]
call fcn.004064b0
push 0x5a366c
lea ecx, [ebp - 0x998]
call fcn.00406fc0
mov byte [ebp - 4], 0xd
lea eax, [ebp - 0x998]
push eax
lea ecx, [ebp - 0x250]
push ecx
lea ecx, [ebp + 0x14]
call fcn.00410a70
mov ecx, eax
call fcn.0040c890
mov byte [ebp - 4], 0xf
lea ecx, [ebp - 0x998]
call fcn.00406e80
lea edx, [ebp - 0x250]
push edx
lea eax, [ebp - 0xa58]
push eax
call fcn.0044df40
add esp, 8
mov dword [ebp - 0x5e8], eax
mov ecx, dword [ebp - 0x5e8]
push ecx
lea ecx, [ebp - 0x250]
call fcn.00406ec0
lea ecx, [ebp - 0xa58]
call fcn.00406e80
push 0x38
lea ecx, [ebp - 0x238]
call fcn.0040a660
push 0
push 0x400
push 0
lea ecx, [ebp - 0x238]
call fcn.00411090
mov byte [ebp - 4], 0x10
lea ecx, [ebp - 0x250]
call fcn.00406e10
push eax
lea ecx, [ebp - 0x238]
call fcn.00411020
lea ecx, [ebp - 0x238]
call fcn.00411000
movzx edx, al
test edx, edx
je 0x40de90
push 0x5a3674
lea ecx, [ebp - 0x9b0]
call fcn.00406fc0
mov byte [ebp - 4], 0x11
lea eax, [ebp - 0x9b0]
push eax
call fcn.004dc410
add esp, 4
mov dword [ebp - 0x5e4], eax
mov byte [ebp - 4], 0x10
lea ecx, [ebp - 0x9b0]
call fcn.00406e80
push str.parse_the_welcome_info_error_
lea ecx, [ebp - 0x9c8]
call fcn.00406fc0
mov byte [ebp - 4], 0x12
lea ecx, [ebp - 0x9c8]
push ecx
mov ecx, dword [ebp - 0x5e4]
call fcn.0040cc30
mov byte [ebp - 4], 0x10
lea ecx, [ebp - 0x9c8]
call fcn.00406e80
mov byte [ebp - 4], 0xf
lea ecx, [ebp - 0x238]
call fcn.00411040
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x250]
call fcn.00406e80
mov byte [ebp - 4], 0
lea ecx, [ebp + 8]
call fcn.00406d60
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp + 0x14]
call fcn.00406d60
jmp 0x4100ef
mov byte [ebp - 0x545], 1
push 0x5a36a0
lea ecx, [ebp - 0x238]
call fcn.004111c0
movzx edx, al
test edx, edx
je 0x40deef
push 0x5a36a8
lea ecx, [ebp - 0x238]
call fcn.00415dc0
mov ecx, eax
call fcn.00411290
movzx eax, al
test eax, eax
je 0x40deef
push str.debug
lea ecx, [ebp - 0x238]
call fcn.00415dc0
mov ecx, eax
call fcn.00411200
mov ecx, dword [ebp - 0x544]
mov byte [ecx + 0x1f0], al
push 0x5a36b8
lea ecx, [ebp - 0x238]
call fcn.004111c0
movzx edx, al
test edx, edx
je 0x40df47
push 0x5a36c4
lea ecx, [ebp - 0x238]
call fcn.00415dc0
mov ecx, eax
call fcn.00411260
movzx eax, al
test eax, eax
je 0x40df47
push str.loglevel
lea ecx, [ebp - 0x238]
call fcn.00415dc0
mov ecx, eax
call fcn.004109b0
mov ecx, dword [ebp - 0x544]
mov dword [ecx + 0x1f4], eax
push str.gameInfos
lea ecx, [ebp - 0x238]
call fcn.00415dc0
push eax
mov ecx, dword [ebp - 0x544]
add ecx, 0x1d8
call fcn.004202f0
mov byte [ebp - 0x545], al
push 0x5a36e8
lea ecx, [ebp - 0x238]
call fcn.00415dc0
push eax
mov ecx, dword [ebp - 0x544]
add ecx, 0x1d8
call fcn.00420200
mov byte [ebp - 0x545], al
push 8
lea ecx, [ebp - 0x38]
call fcn.0040a660
mov edx, dword [ebp - 0x544]
add edx, 0x170
push edx
mov eax, dword [ebp - 0x544]
add eax, 0x128
push eax
lea ecx, [ebp - 0x38]
push ecx
mov ecx, dword [ebp - 0x544]
add ecx, 0x1d8
call fcn.00420530
mov byte [ebp - 4], 0x13
mov ecx, dword [ebp - 0x544]
add ecx, 0x170
call fcn.00406e00
movzx edx, al
test edx, edx
jne 0x40dffe
lea ecx, [ebp - 0x38]
call fcn.00410f50
movzx eax, al
test eax, eax
jne 0x40e087
mov ecx, dword [ebp - 0x544]
add ecx, 0x170
push ecx
mov edx, dword [ebp - 0x544]
add edx, 0x158
push edx
mov eax, dword [ebp - 0x544]
add eax, 0x128
push eax
mov ecx, dword [ebp - 0x544]
add ecx, 0x1d8
call fcn.004203e0
mov ecx, dword [ebp - 0x544]
add ecx, 0x170
push ecx
mov edx, dword [ebp - 0x544]
add edx, 0x128
push edx
lea eax, [ebp - 0x680]
push eax
mov ecx, dword [ebp - 0x544]
add ecx, 0x1d8
call fcn.00420530
mov dword [ebp - 0x5e0], eax
mov ecx, dword [ebp - 0x5e0]
push ecx
lea ecx, [ebp - 0x38]
call fcn.00410fc0
lea ecx, [ebp - 0x680]
call fcn.00410f80
lea ecx, [ebp - 0x38]
call fcn.00410f50
movzx edx, al
test edx, edx
je 0x40e0b5
lea ecx, [ebp - 0x38]
call fcn.00410a70
add eax, 0x30
push eax
mov ecx, dword [ebp - 0x544]
add ecx, 0x1a0
call fcn.00411340
jmp 0x40e0bc
mov byte [ebp - 0x545], 0
lea ecx, [ebp - 0x390]
call fcn.00406480
mov byte [ebp - 4], 0x14
movzx eax, byte [ebp - 0x545]
test eax, eax
je 0x40e0fa
push str.welcomeok
lea ecx, [ebp - 0x390]
call fcn.00411320
lea ecx, [ebp - 0x390]
push ecx
mov ecx, dword [ebp - 0x544]
call fcn.00410270
jmp 0x40e11c
push str.welcomefail
lea ecx, [ebp - 0x390]
call fcn.00411320
lea edx, [ebp - 0x390]
push edx
mov ecx, dword [ebp - 0x544]
call fcn.00410270
mov byte [ebp - 4], 0x13
lea ecx, [ebp - 0x390]
call fcn.004064b0
mov byte [ebp - 4], 0x10
lea ecx, [ebp - 0x38]
call fcn.00410f80
mov byte [ebp - 4], 0xf
lea ecx, [ebp - 0x238]
call fcn.00411040
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x250]
call fcn.00406e80
lea eax, [ebp - 0xa70]
push eax
lea ecx, [ebp + 8]
call fcn.00410a70
mov ecx, eax
call fcn.0040c970
mov dword [ebp - 0x5dc], eax
mov ecx, dword [ebp - 0x5dc]
mov dword [ebp - 0x5d8], ecx
mov byte [ebp - 4], 0x15
push 0x5a3710
mov edx, dword [ebp - 0x5d8]
push edx
call fcn.00408c80
add esp, 8
mov byte [ebp - 0x54a], al
mov byte [ebp - 4], 1
lea ecx, [ebp - 0xa70]
call fcn.00406e80
movzx eax, byte [ebp - 0x54a]
test eax, eax
je 0x40f3f2
cmp dword [ebp + 0x10], 0
jne 0x40e1f4
push 0
lea ecx, [ebp - 0x648]
call fcn.00410bb0
lea ecx, [ebp - 0x648]
push ecx
mov ecx, dword [ebp - 0x544]
add ecx, 0x1d0
call fcn.00410a90
lea ecx, [ebp - 0x648]
call fcn.00406d60
jmp 0x40f3f2
cmp dword [ebp + 0x10], 1
jne 0x40f3f2
mov edx, 1
test edx, edx
je 0x40f3f2
lea ecx, [ebp + 8]
call fcn.00410a70
mov dword [ebp - 0x568], eax
mov eax, dword [ebp - 0x568]
mov edx, dword [eax]
mov ecx, dword [ebp - 0x568]
mov eax, dword [edx + 4]
call eax
movzx ecx, al
test ecx, ecx
je 0x40f3ed
push 0x5a3720
lea ecx, [ebp - 0x9e0]
call fcn.00406fc0
mov byte [ebp - 4], 0x16
lea edx, [ebp - 0x9e0]
push edx
lea eax, [ebp - 0xc0]
push eax
lea ecx, [ebp + 0x14]
call fcn.00410a70
mov ecx, eax
call fcn.0040c890
mov byte [ebp - 4], 0x18
lea ecx, [ebp - 0x9e0]
call fcn.00406e80
push 0x38
lea ecx, [ebp - 0x288]
call fcn.0040a660
push 0
push 0x400
push 0
lea ecx, [ebp - 0x288]
call fcn.00411090
mov byte [ebp - 4], 0x19
lea ecx, [ebp - 0xc0]
call fcn.00406e10
push eax
lea ecx, [ebp - 0x288]
call fcn.00411020
push 0x5a3728
lea ecx, [ebp - 0x288]
call fcn.00415dc0
mov ecx, eax
call fcn.004109b0
cmp eax, 2
jne 0x40e385
lea ecx, [ebp - 0x3c0]
call fcn.00406480
mov byte [ebp - 4], 0x1a
push 0x5a3730
lea ecx, [ebp - 0x3c0]
call fcn.00411320
push 0x5a3748
lea ecx, [ebp - 0x3a8]
call fcn.00411320
lea ecx, [ebp - 0x3c0]
push ecx
mov ecx, dword [ebp - 0x544]
call fcn.00410270
push 0
lea ecx, [ebp - 0x620]
call fcn.00410bb0
lea edx, [ebp - 0x620]
push edx
mov ecx, dword [ebp - 0x544]
add ecx, 0x1d0
call fcn.00410a90
lea ecx, [ebp - 0x620]
call fcn.00406d60
mov byte [ebp - 4], 0x19
lea ecx, [ebp - 0x3c0]
call fcn.004064b0
mov byte [ebp - 4], 0x18
lea ecx, [ebp - 0x288]
call fcn.00411040
mov byte [ebp - 4], 1
lea ecx, [ebp - 0xc0]
call fcn.00406e80
jmp 0x40f3f2
push 0x5a3770
push 0x5a3768
lea ecx, [ebp - 0x288]
call fcn.00415dc0
mov ecx, eax
call fcn.00415dc0
mov ecx, eax
call fcn.00411180
push eax
lea ecx, [ebp - 0x90]
call fcn.00406fc0
mov byte [ebp - 4], 0x1b
push str.hash
push str.Patch
lea ecx, [ebp - 0x288]
call fcn.00415dc0
mov ecx, eax
call fcn.00415dc0
mov ecx, eax
call fcn.00411180
push eax
lea ecx, [ebp - 0x78]
call fcn.00406fc0
mov byte [ebp - 4], 0x1c
push 0x4ba65a
lea eax, [ebp - 0x6b4]
push eax
lea ecx, [ebp - 0x78]
call fcn.004074c0
mov ecx, dword [eax]
push ecx
lea edx, [ebp - 0x6b8]
push edx
lea ecx, [ebp - 0x78]
call fcn.00407490
mov eax, dword [eax]
push eax
lea ecx, [ebp - 0x6bc]
push ecx
lea ecx, [ebp - 0x78]
call fcn.004074c0
mov edx, dword [eax]
push edx
lea eax, [ebp - 0x6c0]
push eax
call fcn.00415e50
add esp, 0x14
lea ecx, [ebp - 0x90]
push ecx
lea edx, [ebp - 0x58]
push edx
call fcn.00427bf0
add esp, 8
mov byte [ebp - 4], 0x1d
lea ecx, [ebp - 0x158]
call fcn.00406480
mov byte [ebp - 4], 0x1e
push str.DownloadPatchBegin
lea ecx, [ebp - 0x158]
call fcn.00411320
lea eax, [ebp - 0x58]
push eax
push 0x5a3798
lea ecx, [ebp - 0xa88]
push ecx
call fcn.00415ed0
add esp, 0xc
mov dword [ebp - 0x5d4], eax
mov edx, dword [ebp - 0x5d4]
push edx
lea ecx, [ebp - 0x140]
call fcn.00406ec0
lea ecx, [ebp - 0xa88]
call fcn.00406e80
lea eax, [ebp - 0x158]
push eax
mov ecx, dword [ebp - 0x544]
call fcn.00410270
lea ecx, [ebp - 0xf0]
push ecx
mov ecx, dword [ebp - 0x544]
call fcn.00410360
mov byte [ebp - 4], 0x1f
push 8
lea ecx, [ebp - 0x18]
call fcn.0040a660
lea edx, [ebp - 0x90]
push edx
lea eax, [ebp - 0xf0]
push eax
lea ecx, [ebp - 0x18]
push ecx
call fcn.00449f90
add esp, 0xc
mov byte [ebp - 4], 0x20
lea edx, [ebp - 0x688]
push edx
call fcn.00415f90
add esp, 4
mov dword [ebp - 0x5d0], eax
mov eax, dword [ebp - 0x5d0]
push eax
lea ecx, [ebp + 0x14]
call fcn.00410a90
lea ecx, [ebp - 0x688]
call fcn.00406d60
lea ecx, [ebp + 0x14]
push ecx
mov ecx, dword [ebp - 0x544]
add ecx, 0x1d0
call fcn.00410b20
lea ecx, [ebp - 0x18]
call fcn.00410a70
mov dword [ebp - 0x56c], eax
sub esp, 8
mov ecx, esp
mov dword [ebp - 0x6c4], esp
lea edx, [ebp + 0x14]
push edx
call fcn.00410b60
mov dword [ebp - 0x6c8], eax
mov eax, dword [ebp - 0x56c]
mov edx, dword [eax]
mov ecx, dword [ebp - 0x56c]
mov eax, dword [edx]
call eax
lea ecx, [ebp - 0x18]
call fcn.00410a70
mov dword [ebp - 0x55c], eax
mov ecx, dword [ebp - 0x55c]
mov edx, dword [ecx]
mov ecx, dword [ebp - 0x55c]
mov eax, dword [edx + 4]
call eax
movzx ecx, al
test ecx, ecx
jne 0x40e844
push 0x5a37b0
lea ecx, [ebp - 0x9f8]
call fcn.00406fc0
mov byte [ebp - 4], 0x21
lea edx, [ebp - 0x9f8]
push edx
lea eax, [ebp - 0xaa0]
push eax
lea ecx, [ebp + 0x14]
call fcn.00410a70
mov ecx, eax
call fcn.0040c890
mov dword [ebp - 0x5cc], eax
mov ecx, dword [ebp - 0x5cc]
mov dword [ebp - 0x5c8], ecx
mov byte [ebp - 4], 0x22
push 0x5a37a8
mov edx, dword [ebp - 0x5c8]
push edx
call fcn.00408c80
add esp, 8
mov byte [ebp - 0x549], al
mov byte [ebp - 4], 0x21
lea ecx, [ebp - 0xaa0]
call fcn.00406e80
mov byte [ebp - 4], 0x20
lea ecx, [ebp - 0x9f8]
call fcn.00406e80
movzx eax, byte [ebp - 0x549]
test eax, eax
je 0x40e709
push 0x5a37bc
lea ecx, [ebp - 0x860]
call fcn.00406fc0
mov byte [ebp - 4], 0x23
lea ecx, [ebp - 0x90]
push ecx
lea edx, [ebp - 0x860]
push edx
lea eax, [ebp - 0x690]
push eax
call fcn.00449f90
add esp, 0xc
mov dword [ebp - 0x5c4], eax
mov ecx, dword [ebp - 0x5c4]
push ecx
lea ecx, [ebp - 0x18]
call fcn.00410a90
lea ecx, [ebp - 0x690]
call fcn.00406d60
mov byte [ebp - 4], 0x20
lea ecx, [ebp - 0x860]
call fcn.00406e80
lea edx, [ebp - 0x698]
push edx
call fcn.00415f90
add esp, 4
mov dword [ebp - 0x5c0], eax
mov eax, dword [ebp - 0x5c0]
push eax
lea ecx, [ebp + 0x14]
call fcn.00410a90
lea ecx, [ebp - 0x698]
call fcn.00406d60
lea ecx, [ebp + 0x14]
push ecx
mov ecx, dword [ebp - 0x544]
add ecx, 0x1d0
call fcn.00410b20
lea ecx, [ebp - 0x18]
call fcn.00410a70
mov dword [ebp - 0x570], eax
sub esp, 8
mov ecx, esp
mov dword [ebp - 0x64c], esp
lea edx, [ebp + 0x14]
push edx
call fcn.00410b60
mov dword [ebp - 0x650], eax
mov eax, dword [ebp - 0x570]
mov edx, dword [eax]
mov ecx, dword [ebp - 0x570]
mov eax, dword [edx]
call eax
lea ecx, [ebp - 0x18]
call fcn.00410a70
mov dword [ebp - 0x574], eax
mov ecx, dword [ebp - 0x574]
mov edx, dword [ecx]
mov ecx, dword [ebp - 0x574]
mov eax, dword [edx + 4]
call eax
movzx ecx, al
test ecx, ecx
jne 0x40e844
lea ecx, [ebp - 0x450]
call fcn.00406480
mov byte [ebp - 4], 0x24
push 0x5a37d0
lea ecx, [ebp - 0x450]
call fcn.00411320
push 0x5a37e8
lea ecx, [ebp - 0x438]
call fcn.00411320
lea edx, [ebp - 0x450]
push edx
mov ecx, dword [ebp - 0x544]
call fcn.00410270
push 0
lea ecx, [ebp - 0x628]
call fcn.00410bb0
lea eax, [ebp - 0x628]
push eax
mov ecx, dword [ebp - 0x544]
add ecx, 0x1d0
call fcn.00410a90
lea ecx, [ebp - 0x628]
call fcn.00406d60
mov byte [ebp - 4], 0x20
lea ecx, [ebp - 0x450]
call fcn.004064b0
mov byte [ebp - 4], 0x1f
lea ecx, [ebp - 0x18]
call fcn.00406d60
mov byte [ebp - 4], 0x1e
lea ecx, [ebp - 0xf0]
call fcn.00406e80
mov byte [ebp - 4], 0x1d
lea ecx, [ebp - 0x158]
call fcn.004064b0
mov byte [ebp - 4], 0x1c
lea ecx, [ebp - 0x58]
call fcn.00406e80
mov byte [ebp - 4], 0x1b
lea ecx, [ebp - 0x78]
call fcn.00406e80
mov byte [ebp - 4], 0x19
lea ecx, [ebp - 0x90]
call fcn.00406e80
mov byte [ebp - 4], 0x18
lea ecx, [ebp - 0x288]
call fcn.00411040
mov byte [ebp - 4], 1
lea ecx, [ebp - 0xc0]
call fcn.00406e80
mov byte [ebp - 4], 0
lea ecx, [ebp + 8]
call fcn.00406d60
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp + 0x14]
call fcn.00406d60
jmp 0x4100ef
lea ecx, [ebp - 0x58]
push ecx
lea edx, [ebp - 0xa8]
push edx
call fcn.0044e730
add esp, 8
mov byte [ebp - 4], 0x25
push 0x4ba65a
lea eax, [ebp - 0x654]
push eax
lea ecx, [ebp - 0xa8]
call fcn.004074c0
mov ecx, dword [eax]
push ecx
lea edx, [ebp - 0x678]
push edx
lea ecx, [ebp - 0xa8]
call fcn.00407490
mov eax, dword [eax]
push eax
lea ecx, [ebp - 0x658]
push ecx
lea ecx, [ebp - 0xa8]
call fcn.004074c0
mov edx, dword [eax]
push edx
lea eax, [ebp - 0x65c]
push eax
call fcn.00415e50
add esp, 0x14
lea ecx, [ebp - 0x78]
push ecx
lea edx, [ebp - 0xa8]
push edx
call fcn.00415c30
add esp, 8
movzx eax, al
test eax, eax
je 0x40e9ea
lea ecx, [ebp - 0x540]
call fcn.00406480
mov byte [ebp - 4], 0x26
push str.DownloadPatchBadError
lea ecx, [ebp - 0x540]
call fcn.00411320
push 0x5a381c
lea ecx, [ebp - 0x528]
call fcn.00411320
lea ecx, [ebp - 0x540]
push ecx
mov ecx, dword [ebp - 0x544]
call fcn.00410270
push 0
lea ecx, [ebp - 0x630]
call fcn.00410bb0
lea edx, [ebp - 0x630]
push edx
mov ecx, dword [ebp - 0x544]
add ecx, 0x1d0
call fcn.00410a90
lea ecx, [ebp - 0x630]
call fcn.00406d60
mov byte [ebp - 4], 0x25
lea ecx, [ebp - 0x540]
call fcn.004064b0
mov byte [ebp - 4], 0x20
lea ecx, [ebp - 0xa8]
call fcn.00406e80
mov byte [ebp - 4], 0x1f
lea ecx, [ebp - 0x18]
call fcn.00406d60
mov byte [ebp - 4], 0x1e
lea ecx, [ebp - 0xf0]
call fcn.00406e80
mov byte [ebp - 4], 0x1d
lea ecx, [ebp - 0x158]
call fcn.004064b0
mov byte [ebp - 4], 0x1c
lea ecx, [ebp - 0x58]
call fcn.00406e80
mov byte [ebp - 4], 0x1b
lea ecx, [ebp - 0x78]
call fcn.00406e80
mov byte [ebp - 4], 0x19
lea ecx, [ebp - 0x90]
call fcn.00406e80
mov byte [ebp - 4], 0x18
lea ecx, [ebp - 0x288]
call fcn.00411040
mov byte [ebp - 4], 1
lea ecx, [ebp - 0xc0]
call fcn.00406e80
mov byte [ebp - 4], 0
lea ecx, [ebp + 8]
call fcn.00406d60
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp + 0x14]
call fcn.00406d60
jmp 0x4100ef
push str.ShellUpdate_
lea ecx, [ebp - 0x878]
call fcn.00406fc0
mov byte [ebp - 4], 0x27
lea eax, [ebp - 0x878]
push eax
lea ecx, [ebp - 0x58]
push ecx
call fcn.0044ebb0
add esp, 8
mov byte [ebp - 0x548], al
mov byte [ebp - 4], 0x25
lea ecx, [ebp - 0x878]
call fcn.00406e80
push 0x5a384c
lea ecx, [ebp - 0x158]
call fcn.00411320
lea edx, [ebp - 0x58]
push edx
push 0x5a385c
lea eax, [ebp - 0xab8]
push eax
call fcn.00415ed0
add esp, 0xc
mov dword [ebp - 0x5f8], eax
mov ecx, dword [ebp - 0x5f8]
push ecx
lea ecx, [ebp - 0x140]
call fcn.00406ec0
lea ecx, [ebp - 0xab8]
call fcn.00406e80
lea edx, [ebp - 0x158]
push edx
mov ecx, dword [ebp - 0x544]
call fcn.00410270
push 8
lea ecx, [ebp - 0x20]
call fcn.0040a660
lea ecx, [ebp - 0x20]
call fcn.00410f20
mov byte [ebp - 4], 0x28
lea ecx, [ebp - 0x20]
call fcn.00410cf0
push 0x5a3870
lea ecx, [ebp - 0x890]
call fcn.00406fc0
mov byte [ebp - 4], 0x29
lea eax, [ebp - 0x58]
push eax
lea ecx, [ebp - 0x890]
push ecx
lea ecx, [ebp - 0x20]
call fcn.00410e40
mov ecx, eax
call fcn.00411340
mov byte [ebp - 4], 0x28
lea ecx, [ebp - 0x890]
call fcn.00406e80
push 0x5a3878
lea ecx, [ebp - 0x8a8]
call fcn.00406fc0
mov byte [ebp - 4], 0x2a
push 0x5a3880
lea edx, [ebp - 0x8a8]
push edx
lea ecx, [ebp - 0x20]
call fcn.00410e40
mov ecx, eax
call fcn.00411320
mov byte [ebp - 4], 0x28
lea ecx, [ebp - 0x8a8]
call fcn.00406e80
lea eax, [ebp - 0x20]
push eax
lea ecx, [ebp - 0x1a0]
push ecx
call fcn.00445620
add esp, 8
mov byte [ebp - 4], 0x2b
push 0x5a3884
lea ecx, [ebp - 0x938]
call fcn.00406fc0
mov byte [ebp - 4], 0x2c
lea edx, [ebp - 0x1a0]
push edx
lea eax, [ebp - 0x938]
push eax
lea ecx, [ebp - 0x6a0]
push ecx
call fcn.00449f90
add esp, 0xc
mov dword [ebp - 0x5bc], eax
mov edx, dword [ebp - 0x5bc]
push edx
lea ecx, [ebp - 0x18]
call fcn.00410a90
lea ecx, [ebp - 0x6a0]
call fcn.00406d60
mov byte [ebp - 4], 0x2b
lea ecx, [ebp - 0x938]
call fcn.00406e80
lea ecx, [ebp + 0x14]
call fcn.00410a70
mov ecx, eax
call fcn.0040c930
lea ecx, [ebp - 0x18]
call fcn.00410a70
mov dword [ebp - 0x578], eax
sub esp, 8
mov ecx, esp
mov dword [ebp - 0x660], esp
lea eax, [ebp + 0x14]
push eax
call fcn.00410b60
mov dword [ebp - 0x664], eax
mov ecx, dword [ebp - 0x578]
mov edx, dword [ecx]
mov ecx, dword [ebp - 0x578]
mov eax, dword [edx]
call eax
lea ecx, [ebp - 0x18]
call fcn.00410a70
mov dword [ebp - 0x57c], eax
mov ecx, dword [ebp - 0x57c]
mov edx, dword [ecx]
mov ecx, dword [ebp - 0x57c]
mov eax, dword [edx + 4]
call eax
movzx ecx, al
test ecx, ecx
je 0x40eea7
push 0x5a3466
lea ecx, [ebp - 0x8f0]
call fcn.00406fc0
mov byte [ebp - 4], 0x2d
push 0x5a3894
lea ecx, [ebp - 0x8d8]
call fcn.00406fc0
mov byte [ebp - 4], 0x2e
push str..Version.json
lea ecx, [ebp - 0x8c0]
call fcn.00406fc0
mov byte [ebp - 4], 0x2f
lea edx, [ebp - 0x8f0]
push edx
lea eax, [ebp - 0x8d8]
push eax
lea ecx, [ebp - 0x8c0]
push ecx
lea edx, [ebp - 0x2a0]
push edx
call fcn.00445770
add esp, 0x10
mov byte [ebp - 4], 0x31
lea ecx, [ebp - 0x8c0]
call fcn.00406e80
mov byte [ebp - 4], 0x32
lea ecx, [ebp - 0x8d8]
call fcn.00406e80
mov byte [ebp - 4], 0x33
lea ecx, [ebp - 0x8f0]
call fcn.00406e80
lea eax, [ebp - 0x2a0]
push eax
mov ecx, dword [ebp - 0x544]
add ecx, 0x188
call fcn.00411340
push 0x5a38ac
lea ecx, [ebp - 0x920]
call fcn.00406fc0
mov byte [ebp - 4], 0x34
push 0x5a38b4
lea ecx, [ebp - 0x908]
call fcn.00406fc0
mov byte [ebp - 4], 0x35
lea ecx, [ebp - 0x2a0]
push ecx
lea edx, [ebp - 0x920]
push edx
mov eax, dword [ebp - 0x544]
add eax, 0x128
push eax
lea ecx, [ebp - 0x908]
push ecx
call fcn.00445a70
add esp, 0x10
mov byte [ebp - 4], 0x34
lea ecx, [ebp - 0x908]
call fcn.00406e80
mov byte [ebp - 4], 0x33
lea ecx, [ebp - 0x920]
call fcn.00406e80
lea ecx, [ebp - 0x318]
call fcn.00406480
mov byte [ebp - 4], 0x36
movzx edx, byte [ebp - 0x548]
test edx, edx
je 0x40ee52
lea ecx, [ebp - 0x58]
call fcn.00406e10
push eax
call dword [sym.imp.KERNEL32.dll_DeleteFileA]
push str.BootShellUpdate
lea ecx, [ebp - 0x318]
call fcn.00411320
push 0x5a38d4
lea ecx, [ebp - 0x300]
call fcn.00411320
lea eax, [ebp - 0x318]
push eax
mov ecx, dword [ebp - 0x544]
call fcn.00410270
mov byte [ebp - 4], 0x33
lea ecx, [ebp - 0x318]
call fcn.004064b0
mov byte [ebp - 4], 0x2b
lea ecx, [ebp - 0x2a0]
call fcn.00406e80
mov byte [ebp - 4], 0x28
lea ecx, [ebp - 0x1a0]
call fcn.00406e80
mov byte [ebp - 4], 0x25
lea ecx, [ebp - 0x20]
call fcn.00410110
mov byte [ebp - 4], 0x20
lea ecx, [ebp - 0xa8]
call fcn.00406e80
mov byte [ebp - 4], 0x1f
lea ecx, [ebp - 0x18]
call fcn.00406d60
mov byte [ebp - 4], 0x1e
lea ecx, [ebp - 0xf0]
call fcn.00406e80
mov byte [ebp - 4], 0x1d
lea ecx, [ebp - 0x158]
call fcn.004064b0
mov byte [ebp - 4], 0x1c
lea ecx, [ebp - 0x58]
call fcn.00406e80
mov byte [ebp - 4], 0x1b
lea ecx, [ebp - 0x78]
call fcn.00406e80
mov byte [ebp - 4], 0x19
lea ecx, [ebp - 0x90]
call fcn.00406e80
mov byte [ebp - 4], 0x18
lea ecx, [ebp - 0x288]
call fcn.00411040
mov byte [ebp - 4], 1
lea ecx, [ebp - 0xc0]
call fcn.00406e80
mov byte [ebp - 4], 0
lea ecx, [ebp + 8]
call fcn.00406d60
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp + 0x14]
call fcn.00406d60
jmp 0x4100ef
push 0x5a38e4
lea ecx, [ebp - 0x318]
call fcn.00411320
push 0x5a38f4
lea ecx, [ebp - 0x300]
call fcn.00411320
lea ecx, [ebp - 0x318]
push ecx
mov ecx, dword [ebp - 0x544]
call fcn.00410270
mov byte [ebp - 4], 0x33
lea ecx, [ebp - 0x318]
call fcn.004064b0
mov byte [ebp - 4], 0x2b
lea ecx, [ebp - 0x2a0]
call fcn.00406e80
jmp 0x40efb3
lea ecx, [ebp - 0x3f0]
call fcn.00406480
mov byte [ebp - 4], 0x37
push 0x5a3900
lea ecx, [ebp - 0x3f0]
call fcn.00411320
push 0x5a3910
lea ecx, [ebp - 0x3d8]
call fcn.00411320
lea edx, [ebp - 0x3f0]
push edx
mov ecx, dword [ebp - 0x544]
call fcn.00410270
lea ecx, [ebp - 0x58]
call fcn.00406e10
push eax
call dword [sym.imp.KERNEL32.dll_DeleteFileA]
mov byte [ebp - 4], 0x2b
lea ecx, [ebp - 0x3f0]
call fcn.004064b0
mov byte [ebp - 4], 0x28
lea ecx, [ebp - 0x1a0]
call fcn.00406e80
mov byte [ebp - 4], 0x25
lea ecx, [ebp - 0x20]
call fcn.00410110
mov byte [ebp - 4], 0x20
lea ecx, [ebp - 0xa8]
call fcn.00406e80
mov byte [ebp - 4], 0x1f
lea ecx, [ebp - 0x18]
call fcn.00406d60
mov byte [ebp - 4], 0x1e
lea ecx, [ebp - 0xf0]
call fcn.00406e80
mov byte [ebp - 4], 0x1d
lea ecx, [ebp - 0x158]
call fcn.004064b0
mov byte [ebp - 4], 0x1c
lea ecx, [ebp - 0x58]
call fcn.00406e80
mov byte [ebp - 4], 0x1b
lea ecx, [ebp - 0x78]
call fcn.00406e80
mov byte [ebp - 4], 0x19
lea ecx, [ebp - 0x90]
call fcn.00406e80
mov byte [ebp - 4], 0x18
lea ecx, [ebp - 0x288]
call fcn.00411040
mov byte [ebp - 4], 1
lea ecx, [ebp - 0xc0]
call fcn.00406e80
jmp 0x40f3f2
lea ecx, [ebp - 0x58]
call fcn.00406e10
push eax
call dword [sym.imp.KERNEL32.dll_DeleteFileA]
mov eax, dword [ebp - 0x544]
add eax, 0x1a0
push eax
mov ecx, dword [ebp - 0x544]
add ecx, 0x188
push ecx
call fcn.00415c30
add esp, 8
movzx edx, al
test edx, edx
je 0x40f21d
lea ecx, [ebp - 0x20]
call fcn.00410cf0
push 0x5a391c
lea ecx, [ebp - 0x6e0]
call fcn.00406fc0
mov byte [ebp - 4], 0x38
mov eax, dword [ebp - 0x544]
add eax, 0x170
push eax
lea ecx, [ebp - 0xad0]
push ecx
call fcn.0044ddc0
add esp, 8
mov dword [ebp - 0x5b8], eax
mov edx, dword [ebp - 0x5b8]
mov dword [ebp - 0x5b4], edx
mov byte [ebp - 4], 0x39
mov eax, dword [ebp - 0x5b4]
push eax
lea ecx, [ebp - 0x6e0]
push ecx
lea ecx, [ebp - 0x20]
call fcn.00410e40
mov ecx, eax
call fcn.00406ec0
mov byte [ebp - 4], 0x38
lea ecx, [ebp - 0xad0]
call fcn.00406e80
mov byte [ebp - 4], 0x2b
lea ecx, [ebp - 0x6e0]
call fcn.00406e80
push 0x5a3928
lea ecx, [ebp - 0x6f8]
call fcn.00406fc0
mov byte [ebp - 4], 0x3a
mov edx, dword [ebp - 0x544]
add edx, 0x188
push edx
lea eax, [ebp - 0x6f8]
push eax
lea ecx, [ebp - 0x20]
call fcn.00410e40
mov ecx, eax
call fcn.00411340
mov byte [ebp - 4], 0x2b
lea ecx, [ebp - 0x6f8]
call fcn.00406e80
lea ecx, [ebp - 0x20]
push ecx
mov edx, dword [ebp - 0x544]
add edx, 0xf8
push edx
lea eax, [ebp - 0x348]
push eax
call fcn.00427eb0
add esp, 0xc
mov byte [ebp - 4], 0x3b
push 0x5a3934
lea ecx, [ebp - 0x710]
call fcn.00406fc0
mov byte [ebp - 4], 0x3c
lea ecx, [ebp - 0x348]
push ecx
lea edx, [ebp - 0x710]
push edx
lea eax, [ebp - 0x6a8]
push eax
call fcn.00449f90
add esp, 0xc
mov dword [ebp - 0x5b0], eax
mov ecx, dword [ebp - 0x5b0]
push ecx
lea ecx, [ebp + 8]
call fcn.00410a90
lea ecx, [ebp - 0x6a8]
call fcn.00406d60
mov byte [ebp - 4], 0x3b
lea ecx, [ebp - 0x710]
call fcn.00406e80
lea ecx, [ebp - 0x480]
call fcn.00406480
mov byte [ebp - 4], 0x3d
push 0x5a3940
lea ecx, [ebp - 0x480]
call fcn.00411320
push 0x5a3954
lea ecx, [ebp - 0x468]
call fcn.00411320
lea edx, [ebp - 0x480]
push edx
mov ecx, dword [ebp - 0x544]
call fcn.00410270
push 0
lea ecx, [ebp - 0x638]
call fcn.00410bb0
lea eax, [ebp - 0x638]
push eax
mov ecx, dword [ebp - 0x544]
add ecx, 0x1d0
call fcn.00410a90
lea ecx, [ebp - 0x638]
call fcn.00406d60
lea ecx, [ebp + 0x14]
call fcn.00410a70
mov ecx, eax
call fcn.0040c930
lea ecx, [ebp + 8]
call fcn.00410a70
mov dword [ebp - 0x580], eax
sub esp, 8
mov ecx, esp
mov dword [ebp - 0x668], esp
lea edx, [ebp + 0x14]
push edx
call fcn.00410b60
mov dword [ebp - 0x66c], eax
mov eax, dword [ebp - 0x580]
mov edx, dword [eax]
mov ecx, dword [ebp - 0x580]
mov eax, dword [edx]
call eax
mov byte [ebp - 4], 0x3b
lea ecx, [ebp - 0x480]
call fcn.004064b0
mov byte [ebp - 4], 0x2b
lea ecx, [ebp - 0x348]
call fcn.00406e80
jmp 0x40f354
lea ecx, [ebp - 0x2e8]
call fcn.00406480
mov byte [ebp - 4], 0x3e
push str.UpdateVersionOk
lea ecx, [ebp - 0x2e8]
call fcn.00411320
push 0x5a397c
lea ecx, [ebp - 0x2d0]
call fcn.00411320
lea ecx, [ebp - 0x2e8]
push ecx
mov ecx, dword [ebp - 0x544]
call fcn.00410270
push str.UpdateVersionTo
lea ecx, [ebp - 0x2e8]
call fcn.00411320
mov edx, dword [ebp - 0x544]
add edx, 0x188
push edx
lea ecx, [ebp - 0x2d0]
call fcn.00411340
lea eax, [ebp - 0x2e8]
push eax
mov ecx, dword [ebp - 0x544]
call fcn.00410270
mov byte [ebp - 4], 0x2b
lea ecx, [ebp - 0x2e8]
call fcn.004064b0
mov byte [ebp - 4], 0x28
lea ecx, [ebp - 0x1a0]
call fcn.00406e80
mov byte [ebp - 4], 0x25
lea ecx, [ebp - 0x20]
call fcn.00410110
mov byte [ebp - 4], 0x20
lea ecx, [ebp - 0xa8]
call fcn.00406e80
mov byte [ebp - 4], 0x1f
lea ecx, [ebp - 0x18]
call fcn.00406d60
mov byte [ebp - 4], 0x1e
lea ecx, [ebp - 0xf0]
call fcn.00406e80
mov byte [ebp - 4], 0x1d
lea ecx, [ebp - 0x158]
call fcn.004064b0
mov byte [ebp - 4], 0x1c
lea ecx, [ebp - 0x58]
call fcn.00406e80
mov byte [ebp - 4], 0x1b
lea ecx, [ebp - 0x78]
call fcn.00406e80
mov byte [ebp - 4], 0x19
lea ecx, [ebp - 0x90]
call fcn.00406e80
mov byte [ebp - 4], 0x18
lea ecx, [ebp - 0x288]
call fcn.00411040
mov byte [ebp - 4], 1
lea ecx, [ebp - 0xc0]
call fcn.00406e80
jmp 0x40f3f2
mov byte [ebp - 4], 0x28
lea ecx, [ebp - 0x1a0]
call fcn.00406e80
mov byte [ebp - 4], 0x25
lea ecx, [ebp - 0x20]
call fcn.00410110
mov byte [ebp - 4], 0x20
lea ecx, [ebp - 0xa8]
call fcn.00406e80
mov byte [ebp - 4], 0x1f
lea ecx, [ebp - 0x18]
call fcn.00406d60
mov byte [ebp - 4], 0x1e
lea ecx, [ebp - 0xf0]
call fcn.00406e80
mov byte [ebp - 4], 0x1d
lea ecx, [ebp - 0x158]
call fcn.004064b0
mov byte [ebp - 4], 0x1c
lea ecx, [ebp - 0x58]
call fcn.00406e80
mov byte [ebp - 4], 0x1b
lea ecx, [ebp - 0x78]
call fcn.00406e80
mov byte [ebp - 4], 0x19
lea ecx, [ebp - 0x90]
call fcn.00406e80
mov byte [ebp - 4], 0x18
lea ecx, [ebp - 0x288]
call fcn.00411040
mov byte [ebp - 4], 1
lea ecx, [ebp - 0xc0]
call fcn.00406e80
jmp 0x40e1fe
lea ecx, [ebp - 0xb00]
push ecx
lea ecx, [ebp + 8]
call fcn.00410a70
mov ecx, eax
call fcn.0040c970
mov dword [ebp - 0x5ac], eax
mov edx, dword [ebp - 0x5ac]
mov dword [ebp - 0x5a8], edx
mov byte [ebp - 4], 0x3f
push 0x5a3998
mov eax, dword [ebp - 0x5a8]
push eax
call fcn.00408c80
add esp, 8
mov byte [ebp - 0x547], al
mov byte [ebp - 4], 1
lea ecx, [ebp - 0xb00]
call fcn.00406e80
movzx ecx, byte [ebp - 0x547]
test ecx, ecx
je 0x40fb04
cmp dword [ebp + 0x10], 0
jne 0x40f476
lea edx, [ebp + 0x14]
push edx
mov ecx, dword [ebp - 0x544]
add ecx, 0x1d0
call fcn.00410b20
jmp 0x40fb04
cmp dword [ebp + 0x10], 1
jne 0x40fb04
lea ecx, [ebp + 8]
call fcn.00410a70
mov dword [ebp - 0x584], eax
mov eax, dword [ebp - 0x584]
mov edx, dword [eax]
mov ecx, dword [ebp - 0x584]
mov eax, dword [edx + 4]
call eax
movzx ecx, al
test ecx, ecx
je 0x40fa38
push 0x5a39b0
lea ecx, [ebp - 0x740]
call fcn.00406fc0
mov byte [ebp - 4], 0x40
lea edx, [ebp - 0x740]
push edx
lea eax, [ebp - 0x1b8]
push eax
lea ecx, [ebp + 0x14]
call fcn.00410a70
mov ecx, eax
call fcn.0040c890
mov byte [ebp - 4], 0x42
lea ecx, [ebp - 0x740]
call fcn.00406e80
lea ecx, [ebp - 0x200]
call fcn.00406480
mov byte [ebp - 4], 0x43
push 0x5a39bc
lea ecx, [ebp - 0x200]
call fcn.00411320
push 0x5a39cc
lea ecx, [ebp - 0x758]
call fcn.00406fc0
mov byte [ebp - 4], 0x44
lea ecx, [ebp - 0x758]
push ecx
lea edx, [ebp - 0xb30]
push edx
lea ecx, [ebp + 0x14]
call fcn.00410a70
mov ecx, eax
call fcn.0040c890
mov dword [ebp - 0x5a4], eax
mov eax, dword [ebp - 0x5a4]
mov dword [ebp - 0x5a0], eax
mov byte [ebp - 4], 0x45
mov ecx, dword [ebp - 0x5a0]
push ecx
push 0x5a39d8
lea edx, [ebp - 0xb48]
push edx
call fcn.00415e90
add esp, 0xc
mov dword [ebp - 0x598], eax
mov eax, dword [ebp - 0x598]
push eax
lea ecx, [ebp - 0x1e8]
call fcn.00406ec0
lea ecx, [ebp - 0xb48]
call fcn.00406e80
mov byte [ebp - 4], 0x44
lea ecx, [ebp - 0xb30]
call fcn.00406e80
mov byte [ebp - 4], 0x43
lea ecx, [ebp - 0x758]
call fcn.00406e80
lea ecx, [ebp - 0x200]
push ecx
mov ecx, dword [ebp - 0x544]
call fcn.00410270
push 8
lea ecx, [ebp - 0x28]
call fcn.0040a660
lea ecx, [ebp - 0x28]
call fcn.00410f20
mov byte [ebp - 4], 0x46
lea ecx, [ebp - 0x28]
call fcn.00410cf0
push 0x5a39ec
lea ecx, [ebp - 0x950]
call fcn.00406fc0
mov byte [ebp - 4], 0x47
lea edx, [ebp - 0x1b8]
push edx
lea eax, [ebp - 0x950]
push eax
lea ecx, [ebp - 0x28]
call fcn.00410e40
mov ecx, eax
call fcn.00411340
mov byte [ebp - 4], 0x46
lea ecx, [ebp - 0x950]
call fcn.00406e80
push 0x5a39f4
lea ecx, [ebp - 0x788]
call fcn.00406fc0
mov byte [ebp - 4], 0x48
push 0x5a39fc
lea ecx, [ebp - 0x788]
push ecx
lea ecx, [ebp - 0x28]
call fcn.00410e40
mov ecx, eax
call fcn.00411320
mov byte [ebp - 4], 0x46
lea ecx, [ebp - 0x788]
call fcn.00406e80
lea edx, [ebp - 0x28]
push edx
lea eax, [ebp - 0x330]
push eax
call fcn.00445620
add esp, 8
mov byte [ebp - 4], 0x49
push 8
lea ecx, [ebp - 0x30]
call fcn.0040a660
push 0x5a3a00
lea ecx, [ebp - 0x7a0]
call fcn.00406fc0
mov byte [ebp - 4], 0x4a
lea ecx, [ebp - 0x330]
push ecx
lea edx, [ebp - 0x7a0]
push edx
lea eax, [ebp - 0x30]
push eax
call fcn.00449f90
add esp, 0xc
mov byte [ebp - 4], 0x4c
lea ecx, [ebp - 0x7a0]
call fcn.00406e80
lea ecx, [ebp + 0x14]
call fcn.00410a70
mov ecx, eax
call fcn.0040c930
push 0x5a3a10
mov ecx, dword [ebp - 0x544]
add ecx, 0x200
call fcn.00411320
lea ecx, [ebp - 0x30]
call fcn.00410a70
mov dword [ebp - 0x588], eax
sub esp, 8
mov ecx, esp
mov dword [ebp - 0x670], esp
lea edx, [ebp + 0x14]
push edx
call fcn.00410b60
mov dword [ebp - 0x674], eax
mov eax, dword [ebp - 0x588]
mov edx, dword [eax]
mov ecx, dword [ebp - 0x588]
mov eax, dword [edx]
call eax
push 0x5a3467
mov ecx, dword [ebp - 0x544]
add ecx, 0x200
call fcn.00411320
lea ecx, [ebp - 0x30]
call fcn.00410a70
mov dword [ebp - 0x550], eax
mov ecx, dword [ebp - 0x550]
mov edx, dword [ecx]
mov ecx, dword [ebp - 0x550]
mov eax, dword [edx + 4]
call eax
movzx ecx, al
test ecx, ecx
je 0x40f7d1
lea edx, [ebp - 0xb90]
push edx
lea ecx, [ebp - 0x30]
call fcn.00410a70
mov ecx, eax
call fcn.0040c970
mov dword [ebp - 0x594], eax
mov ecx, dword [ebp - 0x594]
call fcn.00406e00
mov byte [ebp - 0x54c], al
lea ecx, [ebp - 0xb90]
call fcn.00406e80
movzx eax, byte [ebp - 0x54c]
test eax, eax
je 0x40f7cc
push str.UnzipPatchOK
lea ecx, [ebp - 0x200]
call fcn.00411320
push 0x5a3a30
lea ecx, [ebp - 0x1e8]
call fcn.00411320
lea ecx, [ebp - 0x200]
push ecx
mov ecx, dword [ebp - 0x544]
call fcn.00410270
jmp 0x40f8c8
lea ecx, [ebp - 0x4b0]
call fcn.00406480
mov byte [ebp - 4], 0x4d
push str.UnzipPatchFail
lea ecx, [ebp - 0x4b0]
call fcn.00411320
push 0x5a3a4c
lea ecx, [ebp - 0x498]
call fcn.00411320
lea edx, [ebp - 0x4b0]
push edx
mov ecx, dword [ebp - 0x544]
call fcn.00410270
lea ecx, [ebp - 0x1b8]
call fcn.00406e10
push eax
call dword [sym.imp.KERNEL32.dll_DeleteFileA]
push 0
lea ecx, [ebp - 0x640]
call fcn.00410bb0
lea eax, [ebp - 0x640]
push eax
mov ecx, dword [ebp - 0x544]
add ecx, 0x1d0
call fcn.00410a90
lea ecx, [ebp - 0x640]
call fcn.00406d60
mov byte [ebp - 4], 0x4c
lea ecx, [ebp - 0x4b0]
call fcn.004064b0
mov byte [ebp - 4], 0x49
lea ecx, [ebp - 0x30]
call fcn.00406d60
mov byte [ebp - 4], 0x46
lea ecx, [ebp - 0x330]
call fcn.00406e80
mov byte [ebp - 4], 0x43
lea ecx, [ebp - 0x28]
call fcn.00410110
mov byte [ebp - 4], 0x42
lea ecx, [ebp - 0x200]
call fcn.004064b0
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x1b8]
call fcn.00406e80
mov byte [ebp - 4], 0
lea ecx, [ebp + 8]
call fcn.00406d60
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp + 0x14]
call fcn.00406d60
jmp 0x4100ef
lea ecx, [ebp - 0x1b8]
call fcn.00406e10
push eax
call dword [sym.imp.KERNEL32.dll_DeleteFileA]
push 0x5a348d
lea ecx, [ebp - 0x7e8]
call fcn.00406fc0
mov byte [ebp - 4], 0x4e
push 0x5a3a58
lea ecx, [ebp - 0x7d0]
call fcn.00406fc0
mov byte [ebp - 4], 0x4f
push str..Version.ini
lea ecx, [ebp - 0x7b8]
call fcn.00406fc0
mov byte [ebp - 4], 0x50
lea ecx, [ebp - 0x7e8]
push ecx
lea edx, [ebp - 0x7d0]
push edx
mov eax, dword [ebp - 0x544]
add eax, 0x128
push eax
lea ecx, [ebp - 0x7b8]
push ecx
lea edx, [ebp - 0xb60]
push edx
call fcn.004459e0
add esp, 0x14
mov dword [ebp - 0x58c], eax
mov eax, dword [ebp - 0x58c]
push eax
mov ecx, dword [ebp - 0x544]
add ecx, 0x188
call fcn.00406ec0
lea ecx, [ebp - 0xb60]
call fcn.00406e80
mov byte [ebp - 4], 0x4f
lea ecx, [ebp - 0x7b8]
call fcn.00406e80
mov byte [ebp - 4], 0x4e
lea ecx, [ebp - 0x7d0]
call fcn.00406e80
mov byte [ebp - 4], 0x4c
lea ecx, [ebp - 0x7e8]
call fcn.00406e80
push str.DownloadBigFileOK
lea ecx, [ebp - 0x200]
call fcn.00411320
push 0x5a3a84
lea ecx, [ebp - 0x1e8]
call fcn.00411320
lea ecx, [ebp - 0x200]
push ecx
mov ecx, dword [ebp - 0x544]
call fcn.00410270
mov byte [ebp - 4], 0x49
lea ecx, [ebp - 0x30]
call fcn.00406d60
mov byte [ebp - 4], 0x46
lea ecx, [ebp - 0x330]
call fcn.00406e80
mov byte [ebp - 4], 0x43
lea ecx, [ebp - 0x28]
call fcn.00410110
mov byte [ebp - 4], 0x42
lea ecx, [ebp - 0x200]
call fcn.004064b0
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x1b8]
call fcn.00406e80
mov byte [ebp - 4], 0
lea ecx, [ebp + 8]
call fcn.00406d60
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp + 0x14]
call fcn.00406d60
jmp 0x4100ef
lea ecx, [ebp + 8]
call fcn.00410a70
mov dword [ebp - 0x554], eax
mov edx, dword [ebp - 0x554]
mov eax, dword [edx]
mov ecx, dword [ebp - 0x554]
mov edx, dword [eax + 4]
call edx
movzx eax, al
test eax, eax
jne 0x40fb04
lea ecx, [ebp - 0x4e0]
call fcn.00406480
mov byte [ebp - 4], 0x51
push str.DownloadBigFileNetError
lea ecx, [ebp - 0x4e0]
call fcn.00411320
push 0x5a3ab0
lea ecx, [ebp - 0x4c8]
call fcn.00411320
lea ecx, [ebp - 0x4e0]
push ecx
mov ecx, dword [ebp - 0x544]
call fcn.00410270
push 0
lea ecx, [ebp - 0x618]
call fcn.00410bb0
lea edx, [ebp - 0x618]
push edx
mov ecx, dword [ebp - 0x544]
add ecx, 0x1d0
call fcn.00410a90
lea ecx, [ebp - 0x618]
call fcn.00406d60
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x4e0]
call fcn.004064b0
mov byte [ebp - 4], 0
lea ecx, [ebp + 8]
call fcn.00406d60
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp + 0x14]
call fcn.00406d60
jmp 0x4100ef
lea eax, [ebp - 0xb78]
push eax
lea ecx, [ebp + 8]
call fcn.00410a70
mov ecx, eax
call fcn.0040c970
mov dword [ebp - 0x59c], eax
mov ecx, dword [ebp - 0x59c]
mov dword [ebp - 0x590], ecx
mov byte [ebp - 4], 0x52
push 0x5a3ad0
mov edx, dword [ebp - 0x590]
push edx
call fcn.00408c80
add esp, 8
mov byte [ebp - 0x546], al
mov byte [ebp - 4], 1
lea ecx, [ebp - 0xb78]
call fcn.00406e80
movzx eax, byte [ebp - 0x546]
test eax, eax
je 0x4100d4
cmp dword [ebp + 0x10], 1
jne 0x4100d4
lea ecx, [ebp + 8]
call fcn.00410a70
mov dword [ebp - 0x558], eax
mov ecx, dword [ebp - 0x558]
mov edx, dword [ecx]
mov ecx, dword [ebp - 0x558]
mov eax, dword [edx + 4]
call eax
movzx ecx, al
test ecx, ecx
jne 0x40fc61
lea ecx, [ebp - 0x510]
call fcn.00406480
mov byte [ebp - 4], 0x53
push 0x5a3ad8
lea ecx, [ebp - 0x510]
call fcn.00411320
push 0x5a3ae4
lea ecx, [ebp - 0x800]
call fcn.00406fc0
mov byte [ebp - 4], 0x54
lea edx, [ebp - 0x800]
push edx
lea eax, [ebp - 0xae8]
push eax
lea ecx, [ebp + 0x14]
call fcn.00410a70
mov ecx, eax
call fcn.0040c890
mov dword [ebp - 0x604], eax
mov ecx, dword [ebp - 0x604]
push ecx
lea ecx, [ebp - 0x4f8]
call fcn.00406ec0
lea ecx, [ebp - 0xae8]
call fcn.00406e80
mov byte [ebp - 4], 0x53
lea ecx, [ebp - 0x800]
call fcn.00406e80
lea edx, [ebp - 0x510]
push edx
mov ecx, dword [ebp - 0x544]
call fcn.00410270
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x510]
call fcn.004064b0
mov byte [ebp - 4], 0
lea ecx, [ebp + 8]
call fcn.00406d60
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp + 0x14]
call fcn.00406d60
jmp 0x4100ef
push 0x5a3aec
lea ecx, [ebp - 0x818]
call fcn.00406fc0
mov byte [ebp - 4], 0x55
lea eax, [ebp - 0x818]
push eax
lea ecx, [ebp - 0xd8]
push ecx
lea ecx, [ebp + 0x14]
call fcn.00410a70
mov ecx, eax
call fcn.0040c890
mov byte [ebp - 4], 0x57
lea ecx, [ebp - 0x818]
call fcn.00406e80
lea edx, [ebp - 0xd8]
push edx
lea eax, [ebp - 0xb18]
push eax
call fcn.0044df40
add esp, 8
mov dword [ebp - 0x608], eax
mov ecx, dword [ebp - 0x608]
push ecx
lea ecx, [ebp - 0xd8]
call fcn.00406ec0
lea ecx, [ebp - 0xb18]
call fcn.00406e80
push 0x38
lea ecx, [ebp - 0x128]
call fcn.0040a660
push 0
push 0x400
push 0
lea ecx, [ebp - 0x128]
call fcn.00411090
mov byte [ebp - 4], 0x58
lea ecx, [ebp - 0xd8]
call fcn.00406e10
push eax
lea ecx, [ebp - 0x128]
call fcn.00411020
lea ecx, [ebp - 0x128]
call fcn.00411000
movzx edx, al
test edx, edx
je 0x40fdd7
push 0x5a3af4
lea ecx, [ebp - 0x830]
call fcn.00406fc0
mov byte [ebp - 4], 0x59
lea eax, [ebp - 0x830]
push eax
call fcn.004dc410
add esp, 4
mov dword [ebp - 0x60c], eax
mov byte [ebp - 4], 0x58
lea ecx, [ebp - 0x830]
call fcn.00406e80
push str.parse_the_login_info_error_
lea ecx, [ebp - 0x848]
call fcn.00406fc0
mov byte [ebp - 4], 0x5a
lea ecx, [ebp - 0x848]
push ecx
mov ecx, dword [ebp - 0x60c]
call fcn.0040cc30
mov byte [ebp - 4], 0x58
lea ecx, [ebp - 0x848]
call fcn.00406e80
mov byte [ebp - 4], 0x57
lea ecx, [ebp - 0x128]
call fcn.00411040
mov byte [ebp - 4], 1
lea ecx, [ebp - 0xd8]
call fcn.00406e80
mov byte [ebp - 4], 0
lea ecx, [ebp + 8]
call fcn.00406d60
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp + 0x14]
call fcn.00406d60
jmp 0x4100ef
lea ecx, [ebp - 0x188]
call fcn.00406480
mov byte [ebp - 4], 0x5b
push 0x5a3b1c
lea ecx, [ebp - 0x128]
call fcn.004111c0
movzx edx, al
test edx, edx
je 0x4100a7
push 0x5a3b28
lea ecx, [ebp - 0x128]
call fcn.00415dc0
mov ecx, eax
call fcn.00411260
movzx eax, al
test eax, eax
je 0x4100a7
push str.errorCode
lea ecx, [ebp - 0x128]
call fcn.00415dc0
mov ecx, eax
call fcn.004109b0
mov dword [ebp - 0x610], eax
lea ecx, [ebp - 0x1d0]
call fcn.00407020
mov byte [ebp - 4], 0x5c
push 0x5a3b40
lea ecx, [ebp - 0x128]
call fcn.004111c0
movzx ecx, al
test ecx, ecx
je 0x40fea7
push 0x5a3b4c
lea ecx, [ebp - 0x128]
call fcn.00415dc0
mov ecx, eax
call fcn.00411230
movzx edx, al
test edx, edx
je 0x40fea7
push str.errorInfo
lea ecx, [ebp - 0x128]
call fcn.00415dc0
mov ecx, eax
call fcn.00411180
push eax
lea ecx, [ebp - 0x1d0]
call fcn.00411320
cmp dword [ebp - 0x610], 0
jne 0x41001a
lea ecx, [ebp - 0x2b8]
call fcn.00407020
mov byte [ebp - 4], 0x5d
push 0x5a3b64
lea ecx, [ebp - 0x128]
call fcn.004111c0
movzx eax, al
test eax, eax
je 0x40ff38
push 0x5a3b6c
lea ecx, [ebp - 0x128]
call fcn.00415dc0
mov ecx, eax
call fcn.00411230
movzx ecx, al
test ecx, ecx
je 0x40ff38
push 0x5a3b74
lea ecx, [ebp - 0x128]
call fcn.00415dc0
mov ecx, eax
call fcn.00411180
push eax
lea ecx, [ebp - 0x2b8]
call fcn.00411320
lea edx, [ebp - 0x2b8]
push edx
mov ecx, dword [ebp - 0x544]
add ecx, 0x1b8
call fcn.00411340
jmp 0x40ffd5
push 0x5a3b7c
lea ecx, [ebp - 0x188]
call fcn.00411320
push str.token
lea ecx, [ebp - 0x170]
call fcn.00411320
lea eax, [ebp - 0x188]
push eax
mov ecx, dword [ebp - 0x544]
call fcn.00410270
mov byte [ebp - 4], 0x5c
lea ecx, [ebp - 0x2b8]
call fcn.00406e80
mov byte [ebp - 4], 0x5b
lea ecx, [ebp - 0x1d0]
call fcn.00406e80
mov byte [ebp - 4], 0x58
lea ecx, [ebp - 0x188]
call fcn.004064b0
mov byte [ebp - 4], 0x57
lea ecx, [ebp - 0x128]
call fcn.00411040
mov byte [ebp - 4], 1
lea ecx, [ebp - 0xd8]
call fcn.00406e80
mov byte [ebp - 4], 0
lea ecx, [ebp + 8]
call fcn.00406d60
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp + 0x14]
call fcn.00406d60
jmp 0x4100ef
push str.loginok
lea ecx, [ebp - 0x188]
call fcn.00411320
lea ecx, [ebp - 0x1d0]
push ecx
lea ecx, [ebp - 0x170]
call fcn.00411340
lea edx, [ebp - 0x188]
push edx
mov ecx, dword [ebp - 0x544]
call fcn.00410270
mov byte [ebp - 4], 0x5c
lea ecx, [ebp - 0x2b8]
call fcn.00406e80
jmp 0x41004e
push str.loginfail
lea ecx, [ebp - 0x188]
call fcn.00411320
lea eax, [ebp - 0x1d0]
push eax
lea ecx, [ebp - 0x170]
call fcn.00411340
lea ecx, [ebp - 0x188]
push ecx
mov ecx, dword [ebp - 0x544]
call fcn.00410270
mov byte [ebp - 4], 0x5b
lea ecx, [ebp - 0x1d0]
call fcn.00406e80
mov byte [ebp - 4], 0x58
lea ecx, [ebp - 0x188]
call fcn.004064b0
mov byte [ebp - 4], 0x57
lea ecx, [ebp - 0x128]
call fcn.00411040
mov byte [ebp - 4], 1
lea ecx, [ebp - 0xd8]
call fcn.00406e80
mov byte [ebp - 4], 0
lea ecx, [ebp + 8]
call fcn.00406d60
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp + 0x14]
call fcn.00406d60
jmp 0x4100ef
mov byte [ebp - 4], 0x58
lea ecx, [ebp - 0x188]
call fcn.004064b0
mov byte [ebp - 4], 0x57
lea ecx, [ebp - 0x128]
call fcn.00411040
mov byte [ebp - 4], 1
lea ecx, [ebp - 0xd8]
call fcn.00406e80
mov byte [ebp - 4], 0
lea ecx, [ebp + 8]
call fcn.00406d60
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp + 0x14]
call fcn.00406d60
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.004951c6
mov esp, ebp
pop ebp
ret 0x14