Function at 0x427810
Capabilities:
Contain obfuscated stackstrings
Copy file
Print debug messages

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x56c678
mov eax, dword fs:[0]
push eax
sub esp, 0xb80
mov eax, dword [0x5d3640]
xor eax, ebp
mov dword [ebp - 0x10], eax
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x480], ecx
mov dword [ebp - 0x488], 0
push str.1222222222
call dword [sym.imp.KERNEL32.DLL_OutputDebugStringW]
lea eax, [ebp - 0x554]
mov dword [ebp - 0x74c], eax
mov ecx, dword [ebp - 0x74c]
call fcn.004184d0
mov dword [ebp - 4], 0
movzx ecx, byte [ebp - 0x519]
push ecx
lea ecx, [ebp - 0x254]
call fcn.00409420
mov byte [ebp - 4], 1
mov dword [ebp - 0x4d0], 0x57b9e0
mov edx, dword [ebp - 0x4d0]
add edx, 2
mov dword [ebp - 0x758], edx
mov eax, dword [ebp - 0x4d0]
mov cx, word [eax]
mov word [ebp - 0x536], cx
add dword [ebp - 0x4d0], 2
cmp word [ebp - 0x536], 0
jne 0x4278a4
mov edx, dword [ebp - 0x4d0]
sub edx, dword [ebp - 0x758]
sar edx, 1
mov dword [ebp - 0x75c], edx
mov eax, dword [ebp - 0x75c]
mov dword [ebp - 0x760], eax
mov ecx, dword [ebp - 0x760]
mov dword [ebp - 0x76c], ecx
mov edx, dword [ebp - 0x76c]
push edx
push 0x57b9e0
lea ecx, [ebp - 0x254]
call fcn.00403cb0
mov byte [ebp - 4], 2
lea eax, [ebp - 0x254]
mov dword [ebp - 0x770], eax
mov ecx, dword [ebp - 0x770]
push ecx
lea ecx, [ebp - 0x554]
call fcn.00417670
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x254]
call fcn.00405e70
lea edx, [ebp - 0x560]
mov dword [ebp - 0x774], edx
mov ecx, dword [ebp - 0x774]
call fcn.004184d0
mov byte [ebp - 4], 3
sub esp, 0x18
mov eax, esp
mov dword [ebp - 0x84c], esp
mov dword [ebp - 0x564], eax
movzx ecx, byte [ebp - 0x51a]
push ecx
mov ecx, dword [ebp - 0x564]
call fcn.00409420
mov byte [ebp - 4], 4
mov dword [ebp - 0x4d4], 0x57b9e4
mov edx, dword [ebp - 0x4d4]
add edx, 2
mov dword [ebp - 0x778], edx
mov eax, dword [ebp - 0x4d4]
mov cx, word [eax]
mov word [ebp - 0x534], cx
add dword [ebp - 0x4d4], 2
cmp word [ebp - 0x534], 0
jne 0x427995
mov edx, dword [ebp - 0x4d4]
sub edx, dword [ebp - 0x778]
sar edx, 1
mov dword [ebp - 0x77c], edx
mov eax, dword [ebp - 0x77c]
mov dword [ebp - 0x780], eax
mov ecx, dword [ebp - 0x780]
mov dword [ebp - 0x784], ecx
mov edx, dword [ebp - 0x784]
push edx
push 0x57b9e4
mov ecx, dword [ebp - 0x564]
call fcn.00403cb0
mov byte [ebp - 4], 3
mov byte [ebp - 4], 5
push 0
lea eax, [ebp - 0x560]
push eax
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x850], esp
mov edx, dword [ebp - 0x480]
add edx, 0x3b4
push edx
call fcn.00404350
mov byte [ebp - 4], 3
call fcn.00408cd0
add esp, 0x38
lea eax, [ebp - 0x560]
mov dword [ebp - 0x594], eax
mov ecx, dword [ebp - 0x594]
mov edx, dword [ecx]
mov dword [ebp - 0x50c], edx
mov eax, dword [ebp - 0x594]
mov ecx, dword [eax + 4]
mov dword [ebp - 0x788], ecx
jmp 0x427a6d
mov edx, dword [ebp - 0x50c]
add edx, 0x18
mov dword [ebp - 0x50c], edx
mov eax, dword [ebp - 0x50c]
cmp eax, dword [ebp - 0x788]
je 0x427ab1
mov ecx, dword [ebp - 0x50c]
push ecx
lea ecx, [ebp - 0x2c4]
call fcn.00404350
mov byte [ebp - 4], 6
lea edx, [ebp - 0x2c4]
push edx
call fcn.004145b0
add esp, 4
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x2c4]
call fcn.00405e70
jmp 0x427a5e
movzx eax, byte [ebp - 0x51b]
push eax
lea ecx, [ebp - 0x23c]
call fcn.00409420
mov byte [ebp - 4], 7
mov dword [ebp - 0x4d8], 0x57ba0c
mov ecx, dword [ebp - 0x4d8]
add ecx, 2
mov dword [ebp - 0x790], ecx
mov edx, dword [ebp - 0x4d8]
mov ax, word [edx]
mov word [ebp - 0x532], ax
add dword [ebp - 0x4d8], 2
cmp word [ebp - 0x532], 0
jne 0x427ae1
mov ecx, dword [ebp - 0x4d8]
sub ecx, dword [ebp - 0x790]
sar ecx, 1
mov dword [ebp - 0x794], ecx
mov edx, dword [ebp - 0x794]
mov dword [ebp - 0x798], edx
mov eax, dword [ebp - 0x798]
mov dword [ebp - 0x79c], eax
mov ecx, dword [ebp - 0x79c]
push ecx
push 0x57ba0c
lea ecx, [ebp - 0x23c]
call fcn.00403cb0
mov byte [ebp - 4], 8
lea edx, [ebp - 0x23c]
mov dword [ebp - 0x7a0], edx
mov eax, dword [ebp - 0x7a0]
push eax
lea ecx, [ebp - 0x554]
call fcn.00417670
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x23c]
call fcn.00405e70
lea ecx, [ebp - 0x554]
mov dword [ebp - 0x568], ecx
mov edx, dword [ebp - 0x568]
mov eax, dword [edx]
mov dword [ebp - 0x508], eax
mov ecx, dword [ebp - 0x568]
mov edx, dword [ecx + 4]
mov dword [ebp - 0x7a4], edx
jmp 0x427bb0
mov eax, dword [ebp - 0x508]
add eax, 0x18
mov dword [ebp - 0x508], eax
mov ecx, dword [ebp - 0x508]
cmp ecx, dword [ebp - 0x7a4]
je 0x429eb9
mov edx, dword [ebp - 0x508]
push edx
lea ecx, [ebp - 0x70]
call fcn.00404350
mov byte [ebp - 4], 9
push str.1
call dword [sym.imp.KERNEL32.DLL_OutputDebugStringW]
movzx eax, byte [ebp - 0x51c]
push eax
lea ecx, [ebp - 0x28]
call fcn.00409420
lea ecx, [ebp - 0x28]
call fcn.0040f620
mov byte [ebp - 4], 0xa
lea ecx, [ebp - 0x28]
push ecx
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x854], esp
mov edx, dword [ebp - 0x480]
add edx, 0x430
push edx
call fcn.00404350
call fcn.004159d0
add esp, 0x1c
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x7a8], eax
cmp dword [ebp - 0x7a8], 0
jne 0x427c82
mov byte [ebp - 0x489], 0
mov byte [ebp - 4], 9
lea ecx, [ebp - 0x28]
call fcn.0040f520
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x70]
call fcn.00405e70
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x560]
call fcn.00418a30
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x554]
call fcn.00418a30
mov al, byte [ebp - 0x489]
jmp 0x429ee7
push 0x2c
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x858], esp
lea edx, [ebp - 0x28]
push edx
call fcn.0040bf50
lea eax, [ebp - 0x864]
push eax
mov ecx, dword [ebp - 0x480]
call fcn.0042f360
mov dword [ebp - 0x7ac], eax
mov ecx, dword [ebp - 0x7ac]
mov dword [ebp - 0x7b0], ecx
mov byte [ebp - 4], 0xb
mov edx, dword [ebp - 0x7b0]
mov dword [ebp - 0x7b4], edx
xor eax, eax
imul ecx, eax, 0x18
mov edx, dword [ebp - 0x7b4]
add ecx, dword [edx]
mov dword [ebp - 0x7b8], ecx
mov eax, dword [ebp - 0x7b8]
mov dword [ebp - 0x7bc], eax
mov ecx, dword [ebp - 0x7bc]
call fcn.0040efd0
mov dword [ebp - 0x7c0], eax
mov ecx, dword [ebp - 0x7c0]
push ecx
lea edx, [ebp - 0x40]
push edx
call fcn.00417010
add esp, 8
mov byte [ebp - 4], 0xd
lea ecx, [ebp - 0x864]
call fcn.004188f0
mov dword [ebp - 0x81c], 0
push str.12
call dword [sym.imp.KERNEL32.DLL_OutputDebugStringW]
lea eax, [ebp - 0x40]
push eax
push str.http:__by.haory.cn_g1_589_ManifestAutoUpdate_
lea ecx, [ebp - 0x334]
push ecx
call fcn.00430a70
add esp, 0xc
mov dword [ebp - 0x7c4], eax
mov edx, dword [ebp - 0x7c4]
mov dword [ebp - 0x7d8], edx
mov byte [ebp - 4], 0xe
mov dword [ebp - 0x4dc], 0x57ba90
mov eax, dword [ebp - 0x4dc]
add eax, 2
mov dword [ebp - 0x7c8], eax
mov ecx, dword [ebp - 0x4dc]
mov dx, word [ecx]
mov word [ebp - 0x530], dx
add dword [ebp - 0x4dc], 2
cmp word [ebp - 0x530], 0
jne 0x427d7a
mov eax, dword [ebp - 0x4dc]
sub eax, dword [ebp - 0x7c8]
sar eax, 1
mov dword [ebp - 0x7cc], eax
mov ecx, dword [ebp - 0x7cc]
mov dword [ebp - 0x7d0], ecx
mov edx, dword [ebp - 0x7d0]
mov dword [ebp - 0x7d4], edx
mov eax, dword [ebp - 0x7d4]
push eax
push 0x57ba90
mov ecx, dword [ebp - 0x7d8]
call fcn.0040f8a0
mov dword [ebp - 0x7dc], eax
mov ecx, dword [ebp - 0x7dc]
mov dword [ebp - 0x7e0], ecx
mov edx, dword [ebp - 0x7e0]
push edx
lea ecx, [ebp - 0xa0]
call fcn.004042e0
mov eax, dword [ebp - 0x488]
or eax, 2
mov dword [ebp - 0x488], eax
mov byte [ebp - 4], 0x10
lea ecx, [ebp - 0x334]
call fcn.00405e70
movzx ecx, byte [ebp - 0x526]
push ecx
lea ecx, [ebp - 0x88]
call fcn.00409420
lea ecx, [ebp - 0x88]
call fcn.00405f70
mov byte [ebp - 4], 0x11
push str.123
call dword [sym.imp.KERNEL32.DLL_OutputDebugStringW]
push 1
lea edx, [ebp - 0x56c]
push edx
call fcn.004e7e90
add esp, 8
mov byte [ebp - 0x48a], al
movzx eax, byte [ebp - 0x48a]
test eax, eax
jne 0x427ee4
mov byte [ebp - 0x48b], 0
mov byte [ebp - 4], 0x10
lea ecx, [ebp - 0x88]
call fcn.00405e70
mov byte [ebp - 4], 0xd
lea ecx, [ebp - 0xa0]
call fcn.00405e70
mov byte [ebp - 4], 0xa
lea ecx, [ebp - 0x40]
call fcn.00405e70
mov byte [ebp - 4], 9
lea ecx, [ebp - 0x28]
call fcn.0040f520
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x70]
call fcn.00405e70
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x560]
call fcn.00418a30
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x554]
call fcn.00418a30
mov al, byte [ebp - 0x48b]
jmp 0x429ee7
push 0x57bb50
mov ecx, dword [ebp - 0x480]
add ecx, 0x3b4
push ecx
lea edx, [ebp - 0x364]
push edx
call fcn.004146d0
add esp, 0xc
mov dword [ebp - 0x7e4], eax
mov eax, dword [ebp - 0x7e4]
mov dword [ebp - 0x7e8], eax
mov byte [ebp - 4], 0x12
lea ecx, [ebp - 0x40]
push ecx
mov edx, dword [ebp - 0x7e8]
push edx
lea eax, [ebp - 0x37c]
push eax
call fcn.00414690
add esp, 0xc
mov dword [ebp - 0x7ec], eax
mov ecx, dword [ebp - 0x7ec]
mov dword [ebp - 0x800], ecx
mov byte [ebp - 4], 0x13
mov dword [ebp - 0x4e0], str..zip
mov edx, dword [ebp - 0x4e0]
add edx, 2
mov dword [ebp - 0x7f0], edx
mov eax, dword [ebp - 0x4e0]
mov cx, word [eax]
mov word [ebp - 0x52e], cx
add dword [ebp - 0x4e0], 2
cmp word [ebp - 0x52e], 0
jne 0x427f64
mov edx, dword [ebp - 0x4e0]
sub edx, dword [ebp - 0x7f0]
sar edx, 1
mov dword [ebp - 0x7f4], edx
mov eax, dword [ebp - 0x7f4]
mov dword [ebp - 0x7f8], eax
mov ecx, dword [ebp - 0x7f8]
mov dword [ebp - 0x7fc], ecx
mov edx, dword [ebp - 0x7fc]
push edx
push str..zip
mov ecx, dword [ebp - 0x800]
call fcn.0040f8a0
mov dword [ebp - 0x804], eax
mov eax, dword [ebp - 0x804]
mov dword [ebp - 0x808], eax
mov ecx, dword [ebp - 0x808]
push ecx
lea ecx, [ebp - 0x58]
call fcn.004042e0
mov edx, dword [ebp - 0x488]
or edx, 0x10
mov dword [ebp - 0x488], edx
mov byte [ebp - 4], 0x15
lea ecx, [ebp - 0x37c]
call fcn.00405e70
mov byte [ebp - 4], 0x16
lea ecx, [ebp - 0x364]
call fcn.00405e70
lea ecx, [ebp - 0x58]
call fcn.00405cb0
mov dword [ebp - 0x80c], eax
lea ecx, [ebp - 0xa0]
call fcn.00405cb0
mov dword [ebp - 0x810], eax
mov eax, dword [ebp - 0x80c]
push eax
mov ecx, dword [ebp - 0x810]
push ecx
mov edx, dword [ebp - 0x56c]
mov eax, dword [edx]
mov ecx, dword [ebp - 0x56c]
mov edx, dword [eax + 4]
call edx
mov byte [ebp - 0x48c], al
movzx eax, byte [ebp - 0x48c]
test eax, eax
je 0x429e13
lea ecx, [ebp - 0x548]
mov dword [ebp - 0x814], ecx
mov ecx, dword [ebp - 0x814]
call fcn.004184d0
mov byte [ebp - 4], 0x17
push 0
lea edx, [ebp - 0x548]
push edx
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x820], esp
mov eax, dword [ebp - 0x480]
add eax, 0x3b4
push eax
call fcn.00404350
call fcn.00407080
add esp, 0x20
lea ecx, [ebp - 0x548]
mov dword [ebp - 0x570], ecx
mov edx, dword [ebp - 0x570]
mov eax, dword [edx]
mov dword [ebp - 0x4f8], eax
mov ecx, dword [ebp - 0x570]
mov edx, dword [ecx + 4]
mov dword [ebp - 0x818], edx
jmp 0x4280ed
mov eax, dword [ebp - 0x4f8]
add eax, 0x18
mov dword [ebp - 0x4f8], eax
mov ecx, dword [ebp - 0x4f8]
cmp ecx, dword [ebp - 0x818]
je 0x428158
mov edx, dword [ebp - 0x4f8]
push edx
lea ecx, [ebp - 0x224]
call fcn.00404350
mov byte [ebp - 4], 0x18
push 0
push str.ManifestAutoUpdate
lea ecx, [ebp - 0x224]
call fcn.00410030
cmp eax, 0xffffffff
je 0x428147
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x824], esp
lea eax, [ebp - 0x224]
push eax
call fcn.00404350
call fcn.00407630
add esp, 0x18
mov byte [ebp - 4], 0x17
lea ecx, [ebp - 0x224]
call fcn.00405e70
jmp 0x4280de
push str.1234
call dword [sym.imp.KERNEL32.DLL_OutputDebugStringW]
lea ecx, [ebp - 0x164]
call fcn.00437500
mov byte [ebp - 4], 0x19
lea ecx, [ebp - 0x58]
push ecx
call fcn.004125b0
add esp, 4
mov dword [ebp - 0x768], eax
mov dword [ebp - 0x764], edx
cmp dword [ebp - 0x764], 0
jg 0x428212
jl 0x4281a1
cmp dword [ebp - 0x768], 0x1f4
jae 0x428212
mov byte [ebp - 4], 0x17
lea ecx, [ebp - 0x150]
call fcn.00405e70
mov byte [ebp - 4], 0x16
lea ecx, [ebp - 0x548]
call fcn.00418a30
mov byte [ebp - 4], 0x11
lea ecx, [ebp - 0x58]
call fcn.00405e70
mov byte [ebp - 4], 0x10
lea ecx, [ebp - 0x88]
call fcn.00405e70
mov byte [ebp - 4], 0xd
lea ecx, [ebp - 0xa0]
call fcn.00405e70
mov byte [ebp - 4], 0xa
lea ecx, [ebp - 0x40]
call fcn.00405e70
mov byte [ebp - 4], 9
lea ecx, [ebp - 0x28]
call fcn.0040f520
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x70]
call fcn.00405e70
jmp 0x427ba1
push 1
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x828], esp
mov edx, dword [ebp - 0x480]
add edx, 0x3b4
push edx
call fcn.00404350
mov dword [ebp - 0x82c], eax
mov byte [ebp - 4], 0x1a
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x830], esp
lea eax, [ebp - 0x58]
push eax
call fcn.00404350
mov byte [ebp - 4], 0x19
lea ecx, [ebp - 0x164]
call fcn.0043f180
mov byte [ebp - 0x48d], al
mov cl, byte [ebp - 0x48d]
mov byte [ebp - 0x48e], cl
movzx edx, byte [ebp - 0x48e]
cmp edx, 1
jne 0x429d82
lea eax, [ebp - 0x58]
push eax
call fcn.004145b0
add esp, 4
push str._ManifestAutoUpdate_
mov ecx, dword [ebp - 0x480]
add ecx, 0x3b4
push ecx
lea edx, [ebp - 0x424]
push edx
call fcn.004146d0
add esp, 0xc
mov dword [ebp - 0x5bc], eax
mov eax, dword [ebp - 0x5bc]
mov dword [ebp - 0x5c0], eax
mov byte [ebp - 4], 0x1b
lea ecx, [ebp - 0x40]
push ecx
mov edx, dword [ebp - 0x5c0]
push edx
lea eax, [ebp - 0xd0]
push eax
call fcn.00414690
add esp, 0xc
mov byte [ebp - 4], 0x1d
lea ecx, [ebp - 0x424]
call fcn.00405e70
push 0x57bc18
mov ecx, dword [ebp - 0x480]
add ecx, 0x3b4
push ecx
lea edx, [ebp - 0x40c]
push edx
call fcn.004146d0
add esp, 0xc
mov dword [ebp - 0x5c4], eax
mov eax, dword [ebp - 0x5c4]
mov dword [ebp - 0x5c8], eax
mov byte [ebp - 4], 0x1e
mov ecx, dword [ebp - 0x5c8]
call fcn.00405cb0
mov dword [ebp - 0x574], eax
movzx ecx, byte [ebp - 0x525]
push ecx
lea ecx, [ebp - 0x20c]
call fcn.00409420
mov byte [ebp - 4], 0x1f
mov edx, dword [ebp - 0x574]
mov dword [ebp - 0x4e4], edx
mov eax, dword [ebp - 0x4e4]
add eax, 2
mov dword [ebp - 0x5cc], eax
mov ecx, dword [ebp - 0x4e4]
mov dx, word [ecx]
mov word [ebp - 0x52c], dx
add dword [ebp - 0x4e4], 2
cmp word [ebp - 0x52c], 0
jne 0x428366
mov eax, dword [ebp - 0x4e4]
sub eax, dword [ebp - 0x5cc]
sar eax, 1
mov dword [ebp - 0x5d0], eax
mov ecx, dword [ebp - 0x5d0]
mov dword [ebp - 0x5d4], ecx
mov edx, dword [ebp - 0x5d4]
mov dword [ebp - 0x5d8], edx
mov eax, dword [ebp - 0x5d8]
push eax
mov ecx, dword [ebp - 0x574]
push ecx
lea ecx, [ebp - 0x20c]
call fcn.00403cb0
mov byte [ebp - 4], 0x20
lea edx, [ebp - 0x20c]
push edx
call fcn.00408470
add esp, 4
mov byte [ebp - 4], 0x1e
lea ecx, [ebp - 0x20c]
call fcn.00405e70
mov byte [ebp - 4], 0x1d
lea ecx, [ebp - 0x40c]
call fcn.00405e70
lea eax, [ebp - 0x5b4]
mov dword [ebp - 0x5dc], eax
mov ecx, dword [ebp - 0x5dc]
call fcn.004184d0
mov byte [ebp - 4], 0x21
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x834], esp
mov dword [ebp - 0x578], ecx
movzx edx, byte [ebp - 0x524]
push edx
mov ecx, dword [ebp - 0x578]
call fcn.00409420
mov byte [ebp - 4], 0x22
mov dword [ebp - 0x4e8], 0x57bc30
mov eax, dword [ebp - 0x4e8]
add eax, 2
mov dword [ebp - 0x5e0], eax
mov ecx, dword [ebp - 0x4e8]
mov dx, word [ecx]
mov word [ebp - 0x52a], dx
add dword [ebp - 0x4e8], 2
cmp word [ebp - 0x52a], 0
jne 0x428459
mov eax, dword [ebp - 0x4e8]
sub eax, dword [ebp - 0x5e0]
sar eax, 1
mov dword [ebp - 0x5e4], eax
mov ecx, dword [ebp - 0x5e4]
mov dword [ebp - 0x5e8], ecx
mov edx, dword [ebp - 0x5e8]
mov dword [ebp - 0x5ec], edx
mov eax, dword [ebp - 0x5ec]
push eax
push 0x57bc30
mov ecx, dword [ebp - 0x578]
call fcn.00403cb0
mov byte [ebp - 4], 0x21
mov byte [ebp - 4], 0x23
push 0
lea ecx, [ebp - 0x5b4]
push ecx
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x838], esp
lea edx, [ebp - 0xd0]
push edx
call fcn.00404350
mov byte [ebp - 4], 0x21
call fcn.00408cd0
add esp, 0x38
push 0x57bc34
mov eax, dword [ebp - 0x480]
add eax, 0x3b4
push eax
lea ecx, [ebp - 0x3f4]
push ecx
call fcn.004146d0
add esp, 0xc
mov dword [ebp - 0x5f0], eax
mov edx, dword [ebp - 0x5f0]
mov dword [ebp - 0x5f4], edx
mov byte [ebp - 4], 0x24
mov eax, dword [ebp - 0x5f4]
push eax
call fcn.00408340
add esp, 4
movzx ecx, al
test ecx, ecx
jne 0x428549
mov dword [ebp - 0x5b8], 1
jmp 0x428553
mov dword [ebp - 0x5b8], 0
mov dl, byte [ebp - 0x5b8]
mov byte [ebp - 0x48f], dl
mov byte [ebp - 4], 0x21
lea ecx, [ebp - 0x3f4]
call fcn.00405e70
movzx eax, byte [ebp - 0x48f]
test eax, eax
je 0x4285ce
push str._depotcache
mov ecx, dword [ebp - 0x480]
add ecx, 0x3b4
push ecx
lea edx, [ebp - 0x3dc]
push edx
call fcn.004146d0
add esp, 0xc
mov dword [ebp - 0x5f8], eax
mov eax, dword [ebp - 0x5f8]
mov dword [ebp - 0x5fc], eax
mov byte [ebp - 4], 0x25
mov ecx, dword [ebp - 0x5fc]
push ecx
call fcn.004083e0
add esp, 4
mov byte [ebp - 4], 0x21
lea ecx, [ebp - 0x3dc]
call fcn.00405e70
lea edx, [ebp - 0x5b4]
mov dword [ebp - 0x5a8], edx
mov eax, dword [ebp - 0x5a8]
mov ecx, dword [eax]
mov dword [ebp - 0x510], ecx
mov edx, dword [ebp - 0x5a8]
mov eax, dword [edx + 4]
mov dword [ebp - 0x600], eax
jmp 0x428608
mov ecx, dword [ebp - 0x510]
add ecx, 0x18
mov dword [ebp - 0x510], ecx
mov edx, dword [ebp - 0x510]
cmp edx, dword [ebp - 0x600]
je 0x428752
mov eax, dword [ebp - 0x510]
push eax
lea ecx, [ebp - 0x130]
call fcn.00404350
mov byte [ebp - 4], 0x26
push 0xffffffffffffffff
push 0x57bc64
lea ecx, [ebp - 0x130]
call fcn.004100e0
add eax, 1
mov dword [ebp - 0x604], eax
lea ecx, [ebp - 0x523]
push ecx
push 0xffffffffffffffff
mov edx, dword [ebp - 0x604]
push edx
lea eax, [ebp - 0x130]
push eax
lea ecx, [ebp - 0x2ac]
call fcn.0040c370
mov ecx, dword [ebp - 0x488]
or ecx, 0x400
mov dword [ebp - 0x488], ecx
mov byte [ebp - 4], 0x27
push 0x57bc68
mov edx, dword [ebp - 0x480]
add edx, 0x3b4
push edx
lea eax, [ebp - 0x34c]
push eax
call fcn.004146d0
add esp, 0xc
mov dword [ebp - 0x608], eax
mov ecx, dword [ebp - 0x608]
mov dword [ebp - 0x60c], ecx
mov byte [ebp - 4], 0x28
lea edx, [ebp - 0x2ac]
push edx
mov eax, dword [ebp - 0x60c]
push eax
lea ecx, [ebp - 0x3c4]
push ecx
call fcn.00414690
add esp, 0xc
mov dword [ebp - 0x610], eax
mov ecx, dword [ebp - 0x610]
call fcn.00405cb0
mov dword [ebp - 0x614], eax
lea ecx, [ebp - 0x130]
call fcn.00405cb0
mov dword [ebp - 0x618], eax
push 1
mov edx, dword [ebp - 0x614]
push edx
mov eax, dword [ebp - 0x618]
push eax
call dword [sym.imp.KERNEL32.DLL_CopyFileW]
lea ecx, [ebp - 0x3c4]
call fcn.00405e70
mov byte [ebp - 4], 0x27
lea ecx, [ebp - 0x34c]
call fcn.00405e70
mov byte [ebp - 4], 0x26
lea ecx, [ebp - 0x2ac]
call fcn.00405e70
mov byte [ebp - 4], 0x21
lea ecx, [ebp - 0x130]
call fcn.00405e70
jmp 0x4285f9
push str._depotcache_config.vdf
mov ecx, dword [ebp - 0x480]
add ecx, 0x3b4
push ecx
lea edx, [ebp - 0xb8]
push edx
call fcn.004146d0
add esp, 0xc
mov byte [ebp - 4], 0x29
lea ecx, [ebp - 0xb8]
call fcn.00405cb0
mov dword [ebp - 0x61c], eax
mov eax, dword [ebp - 0x61c]
push eax
call dword [sym.imp.KERNEL32.DLL_OutputDebugStringW]
lea ecx, [ebp - 0xb8]
push ecx
call fcn.00412570
add esp, 4
movzx edx, al
test edx, edx
je 0x429c99
movzx eax, byte [ebp - 0x522]
push eax
lea ecx, [ebp - 0xe8]
call fcn.00409420
lea ecx, [ebp - 0xe8]
call fcn.0040f620
mov byte [ebp - 4], 0x2a
lea ecx, [ebp - 0xe8]
push ecx
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x83c], esp
lea edx, [ebp - 0xb8]
push edx
call fcn.00404350
call fcn.004159d0
add esp, 0x1c
lea ecx, [ebp - 0xe8]
call fcn.0040efd0
mov dword [ebp - 0x620], eax
push 1
push 0x40
push 1
mov eax, dword [ebp - 0x620]
push eax
lea ecx, [ebp - 0xa2c]
call fcn.0040b8d0
mov ecx, dword [ebp - 0xa2c]
mov edx, dword [ecx + 4]
mov dword [ebp + edx - method.std::basic_ifstream_char__struct_std::char_traits_char__.virtual_0], vtable.std::basic_ifstream_char__struct_std::char_traits_char__.0
mov eax, dword [ebp - 0xa2c]
mov ecx, dword [eax + 4]
sub ecx, 0x70
mov edx, dword [ebp - 0xa2c]
mov eax, dword [edx + 4]
mov dword [ebp + eax - 0xa30], ecx
mov byte [ebp - 4], 0x2b
mov byte [ebp - 0x4ef], 1
mov byte [ebp - 0x4ee], 0
mov byte [ebp - 0x4ed], 0
lea ecx, [ebp - 0x4ef]
push ecx
lea edx, [ebp - 0xa2c]
push edx
lea eax, [ebp - 0x47c]
push eax
call fcn.00434140
add esp, 0xc
mov ecx, dword [ebp - 0x488]
or ecx, 0x4000
mov dword [ebp - 0x488], ecx
lea edx, [ebp - 0x47c]
mov dword [ebp - 0x624], edx
mov eax, dword [ebp - 0x624]
push eax
mov ecx, dword [ebp - 0x480]
add ecx, 0x448
call fcn.004380b0
lea ecx, [ebp - 0x47c]
call fcn.00437a20
push str._config_config.vdf
mov ecx, dword [ebp - 0x480]
add ecx, 0x3b4
push ecx
lea edx, [ebp - 0x100]
push edx
call fcn.004146d0
add esp, 0xc
mov byte [ebp - 4], 0x2c
movzx eax, byte [ebp - 0x521]
push eax
lea ecx, [ebp - 0x118]
call fcn.00409420
lea ecx, [ebp - 0x118]
call fcn.0040f620
mov byte [ebp - 4], 0x2d
lea ecx, [ebp - 0x118]
push ecx
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x840], esp
lea edx, [ebp - 0x100]
push edx
call fcn.00404350
call fcn.004159d0
add esp, 0x1c
lea ecx, [ebp - 0x118]
call fcn.0040efd0
mov dword [ebp - 0x628], eax
push 1
push 0x40
push 1
mov eax, dword [ebp - 0x628]
push eax
lea ecx, [ebp - 0x974]
call fcn.0040b8d0
mov ecx, dword [ebp - 0x974]
mov edx, dword [ecx + 4]
mov dword [ebp + edx - method.std::basic_ifstream_char__struct_std::char_traits_char__.virtual_0], vtable.std::basic_ifstream_char__struct_std::char_traits_char__.0
mov eax, dword [ebp - 0x974]
mov ecx, dword [eax + 4]
sub ecx, 0x70
mov edx, dword [ebp - 0x974]
mov eax, dword [edx + 4]
mov dword [ebp + eax - 0x978], ecx
mov byte [ebp - 4], 0x2e
cmp dword [ebp - 0x918], 0
je 0x4289a3
mov byte [ebp - 0x481], 1
jmp 0x4289aa
mov byte [ebp - 0x481], 0
mov cl, byte [ebp - 0x481]
mov byte [ebp - 0x490], cl
mov dl, byte [ebp - 0x490]
mov byte [ebp - 0x491], dl
movzx eax, byte [ebp - 0x491]
test eax, eax
jne 0x428afe
mov byte [ebp - 0x492], 0
mov byte [ebp - 4], 0x2d
lea ecx, [ebp - 0x904]
call fcn.0040cde0
lea ecx, [ebp - 0x904]
call fcn.0040ce70
mov byte [ebp - 4], 0x2c
lea ecx, [ebp - 0x118]
call fcn.0040f520
mov byte [ebp - 4], 0x2b
lea ecx, [ebp - 0x100]
call fcn.00405e70
mov byte [ebp - 4], 0x2a
lea ecx, [ebp - 0x9bc]
call fcn.0040cde0
lea ecx, [ebp - 0x9bc]
call fcn.0040ce70
mov byte [ebp - 4], 0x29
lea ecx, [ebp - 0xe8]
call fcn.0040f520
mov byte [ebp - 4], 0x21
lea ecx, [ebp - 0xb8]
call fcn.00405e70
mov byte [ebp - 4], 0x1d
lea ecx, [ebp - 0x5b4]
call fcn.00418a30
mov byte [ebp - 4], 0x19
lea ecx, [ebp - 0xd0]
call fcn.00405e70
mov byte [ebp - 4], 0x17
lea ecx, [ebp - 0x150]
call fcn.00405e70
mov byte [ebp - 4], 0x16
lea ecx, [ebp - 0x548]
call fcn.00418a30
mov byte [ebp - 4], 0x11
lea ecx, [ebp - 0x58]
call fcn.00405e70
mov byte [ebp - 4], 0x10
lea ecx, [ebp - 0x88]
call fcn.00405e70
mov byte [ebp - 4], 0xd
lea ecx, [ebp - 0xa0]
call fcn.00405e70
mov byte [ebp - 4], 0xa
lea ecx, [ebp - 0x40]
call fcn.00405e70
mov byte [ebp - 4], 9
lea ecx, [ebp - 0x28]
call fcn.0040f520
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x70]
call fcn.00405e70
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x560]
call fcn.00418a30
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x554]
call fcn.00418a30
mov al, byte [ebp - 0x492]
jmp 0x429ee7
mov byte [ebp - 0x4f2], 1
mov byte [ebp - 0x4f1], 0
mov byte [ebp - 0x4f0], 0
lea ecx, [ebp - 0x4f2]
push ecx
lea edx, [ebp - 0x974]
push edx
lea eax, [ebp - 0x31c]
push eax
call fcn.00434140
add esp, 0xc
mov ecx, dword [ebp - 0x488]
or ecx, 0x10000
mov dword [ebp - 0x488], ecx
mov byte [ebp - 4], 0x2f
lea ecx, [ebp - 0x974]
call fcn.0043e400
movzx edx, byte [ebp - 0x53c]
push edx
lea ecx, [ebp - 0x1dc]
call fcn.00409420
mov byte [ebp - 4], 0x30
mov dword [ebp - 0x4ec], str.Valve
mov eax, dword [ebp - 0x4ec]
add eax, 1
mov dword [ebp - 0x62c], eax
mov ecx, dword [ebp - 0x4ec]
mov dl, byte [ecx]
mov byte [ebp - 0x493], dl
add dword [ebp - 0x4ec], 1
cmp byte [ebp - 0x493], 0
jne 0x428b81
mov eax, dword [ebp - 0x4ec]
sub eax, dword [ebp - 0x62c]
mov dword [ebp - 0x630], eax
mov ecx, dword [ebp - 0x630]
mov dword [ebp - 0x634], ecx
mov edx, dword [ebp - 0x634]
mov dword [ebp - 0x638], edx
mov eax, dword [ebp - 0x638]
push eax
push str.Valve
lea ecx, [ebp - 0x1dc]
call fcn.00409b90
mov byte [ebp - 4], 0x31
movzx ecx, byte [ebp - 0x53b]
push ecx
lea ecx, [ebp - 0x1f4]
call fcn.00409420
mov byte [ebp - 4], 0x32
mov dword [ebp - 0x4a8], 0x57bcdc
mov edx, dword [ebp - 0x4a8]
add edx, 1
mov dword [ebp - 0x63c], edx
mov eax, dword [ebp - 0x4a8]
mov cl, byte [eax]
mov byte [ebp - 0x494], cl
add dword [ebp - 0x4a8], 1
cmp byte [ebp - 0x494], 0
jne 0x428c14
mov edx, dword [ebp - 0x4a8]
sub edx, dword [ebp - 0x63c]
mov dword [ebp - 0x640], edx
mov eax, dword [ebp - 0x640]
mov dword [ebp - 0x644], eax
mov ecx, dword [ebp - 0x644]
mov dword [ebp - 0x648], ecx
mov edx, dword [ebp - 0x648]
push edx
push 0x57bcdc
lea ecx, [ebp - 0x1f4]
call fcn.00409b90
mov byte [ebp - 4], 0x33
lea eax, [ebp - 0x1f4]
mov dword [ebp - 0x64c], eax
mov ecx, dword [ebp - 0x64c]
push ecx
lea edx, [ebp - 0x8ac]
push edx
lea ecx, [ebp - 0x2e4]
call fcn.00432980
mov eax, dword [eax]
add eax, 0x20
mov dword [ebp - 0x650], eax
mov ecx, dword [ebp - 0x650]
mov edx, dword [ecx]
mov dword [ebp - 0x654], edx
mov eax, dword [ebp - 0x654]
mov dword [ebp - 0x65c], eax
lea ecx, [ebp - 0x1dc]
mov dword [ebp - 0x658], ecx
mov edx, dword [ebp - 0x658]
push edx
lea eax, [ebp - 0x8b4]
push eax
mov ecx, dword [ebp - 0x65c]
add ecx, 0x38
call fcn.00432980
mov ecx, dword [eax]
add ecx, 0x20
mov dword [ebp - 0x660], ecx
mov dword [ebp - 0x4b8], 0
mov dword [ebp - 0x4b4], 0
mov edx, dword [ebp - 0x660]
push edx
lea ecx, [ebp - 0x4b8]
call fcn.004311a0
mov byte [ebp - 4], 0x35
lea ecx, [ebp - 0x1f4]
call fcn.0040f520
mov byte [ebp - 4], 0x36
lea ecx, [ebp - 0x1dc]
call fcn.0040f520
push 0
lea eax, [ebp - 0x4b8]
push eax
call fcn.00430940
add esp, 8
movzx ecx, al
test ecx, ecx
je 0x428f1b
movzx edx, byte [ebp - 0x53a]
push edx
lea ecx, [ebp - 0x1ac]
call fcn.00409420
mov byte [ebp - 4], 0x37
mov dword [ebp - 0x4bc], str.valve
mov eax, dword [ebp - 0x4bc]
add eax, 1
mov dword [ebp - 0x664], eax
mov ecx, dword [ebp - 0x4bc]
mov dl, byte [ecx]
mov byte [ebp - 0x495], dl
add dword [ebp - 0x4bc], 1
cmp byte [ebp - 0x495], 0
jne 0x428d84
mov eax, dword [ebp - 0x4bc]
sub eax, dword [ebp - 0x664]
mov dword [ebp - 0x668], eax
mov ecx, dword [ebp - 0x668]
mov dword [ebp - 0x66c], ecx
mov edx, dword [ebp - 0x66c]
mov dword [ebp - 0x670], edx
mov eax, dword [ebp - 0x670]
push eax
push str.valve
lea ecx, [ebp - 0x1ac]
call fcn.00409b90
mov byte [ebp - 4], 0x38
movzx ecx, byte [ebp - 0x527]
push ecx
lea ecx, [ebp - 0x1c4]
call fcn.00409420
mov byte [ebp - 4], 0x39
mov dword [ebp - 0x4c4], 0x57bcf0
mov edx, dword [ebp - 0x4c4]
add edx, 1
mov dword [ebp - 0x674], edx
mov eax, dword [ebp - 0x4c4]
mov cl, byte [eax]
mov byte [ebp - 0x496], cl
add dword [ebp - 0x4c4], 1
cmp byte [ebp - 0x496], 0
jne 0x428e17
mov edx, dword [ebp - 0x4c4]
sub edx, dword [ebp - 0x674]
mov dword [ebp - 0x678], edx
mov eax, dword [ebp - 0x678]
mov dword [ebp - 0x67c], eax
mov ecx, dword [ebp - 0x67c]
mov dword [ebp - 0x680], ecx
mov edx, dword [ebp - 0x680]
push edx
push 0x57bcf0
lea ecx, [ebp - 0x1c4]
call fcn.00409b90
mov byte [ebp - 4], 0x3a
lea eax, [ebp - 0x1c4]
mov dword [ebp - 0x684], eax
mov ecx, dword [ebp - 0x684]
push ecx
lea edx, [ebp - 0x8bc]
push edx
lea ecx, [ebp - 0x2e4]
call fcn.00432980
mov eax, dword [eax]
add eax, 0x20
mov dword [ebp - 0x688], eax
mov ecx, dword [ebp - 0x688]
mov edx, dword [ecx]
mov dword [ebp - 0x68c], edx
mov eax, dword [ebp - 0x68c]
mov dword [ebp - 0x694], eax
lea ecx, [ebp - 0x1ac]
mov dword [ebp - 0x690], ecx
mov edx, dword [ebp - 0x690]
push edx
lea eax, [ebp - 0x86c]
push eax
mov ecx, dword [ebp - 0x694]
add ecx, 0x38
call fcn.00432980
mov ecx, dword [eax]
add ecx, 0x20
push ecx
lea ecx, [ebp - 0x4b8]
call fcn.00438160
mov byte [ebp - 4], 0x38
lea ecx, [ebp - 0x1c4]
call fcn.0040f520
mov byte [ebp - 4], 0x36
lea ecx, [ebp - 0x1ac]
call fcn.0040f520
movzx edx, byte [ebp - 0x539]
push edx
lea ecx, [ebp - 0x194]
call fcn.00409420
mov byte [ebp - 4], 0x3b
mov dword [ebp - 0x4c8], str.Steam
mov eax, dword [ebp - 0x4c8]
add eax, 1
mov dword [ebp - 0x698], eax
mov ecx, dword [ebp - 0x4c8]
mov dl, byte [ecx]
mov byte [ebp - 0x497], dl
add dword [ebp - 0x4c8], 1
cmp byte [ebp - 0x497], 0
jne 0x428f4b
mov eax, dword [ebp - 0x4c8]
sub eax, dword [ebp - 0x698]
mov dword [ebp - 0x69c], eax
mov ecx, dword [ebp - 0x69c]
mov dword [ebp - 0x6a0], ecx
mov edx, dword [ebp - 0x6a0]
mov dword [ebp - 0x6a4], edx
mov eax, dword [ebp - 0x6a4]
push eax
push str.Steam
lea ecx, [ebp - 0x194]
call fcn.00409b90
mov byte [ebp - 4], 0x3c
mov ecx, dword [ebp - 0x4b8]
mov dword [ebp - 0x6a8], ecx
mov edx, dword [ebp - 0x6a8]
mov dword [ebp - 0x6b0], edx
lea eax, [ebp - 0x194]
mov dword [ebp - 0x6ac], eax
mov ecx, dword [ebp - 0x6ac]
push ecx
lea edx, [ebp - 0x874]
push edx
mov ecx, dword [ebp - 0x6b0]
add ecx, 0x38
call fcn.00432980
mov eax, dword [eax]
add eax, 0x20
mov dword [ebp - 0x6b4], eax
mov dword [ebp - 0x4b0], 0
mov dword [ebp - 0x4ac], 0
mov ecx, dword [ebp - 0x6b4]
push ecx
lea ecx, [ebp - 0x4b0]
call fcn.004311a0
mov byte [ebp - 4], 0x3e
lea ecx, [ebp - 0x194]
call fcn.0040f520
push 0
lea edx, [ebp - 0x4b0]
push edx
call fcn.004309a0
add esp, 8
movzx eax, al
test eax, eax
je 0x429b28
push str.steam__null
call dword [sym.imp.KERNEL32.DLL_OutputDebugStringW]
movzx ecx, byte [ebp - 0x538]
push ecx
lea ecx, [ebp - 0x17c]
call fcn.00409420
mov byte [ebp - 4], 0x3f
mov dword [ebp - 0x4cc], 0x57bd64
mov edx, dword [ebp - 0x4cc]
add edx, 1
mov dword [ebp - 0x6b8], edx
mov eax, dword [ebp - 0x4cc]
mov cl, byte [eax]
mov byte [ebp - 0x498], cl
add dword [ebp - 0x4cc], 1
cmp byte [ebp - 0x498], 0
jne 0x429085
mov edx, dword [ebp - 0x4cc]
sub edx, dword [ebp - 0x6b8]
mov dword [ebp - 0x6bc], edx
mov eax, dword [ebp - 0x6bc]
mov dword [ebp - 0x6c0], eax
mov ecx, dword [ebp - 0x6c0]
mov dword [ebp - 0x6c4], ecx
mov edx, dword [ebp - 0x6c4]
push edx
push 0x57bd64
lea ecx, [ebp - 0x17c]
call fcn.00409b90
mov byte [ebp - 4], 0x40
mov eax, dword [ebp - 0x4b0]
mov dword [ebp - 0x6c8], eax
mov ecx, dword [ebp - 0x6c8]
mov dword [ebp - 0x6d0], ecx
lea edx, [ebp - 0x17c]
mov dword [ebp - 0x6cc], edx
mov eax, dword [ebp - 0x6cc]
push eax
lea ecx, [ebp - 0x87c]
push ecx
mov ecx, dword [ebp - 0x6d0]
add ecx, 0x38
call fcn.00432980
mov edx, dword [eax]
add edx, 0x20
mov dword [ebp - 0x6d4], edx
mov dword [ebp - 0x518], 0
mov dword [ebp - 0x514], 0
mov eax, dword [ebp - 0x6d4]
push eax
lea ecx, [ebp - 0x518]
call fcn.004311a0
mov byte [ebp - 4], 0x42
lea ecx, [ebp - 0x17c]
call fcn.0040f520
push 0
lea ecx, [ebp - 0x518]
push ecx
call fcn.00430940
add esp, 8
movzx edx, al
test edx, edx
je 0x42970a
push str.dddd__null
call dword [sym.imp.KERNEL32.DLL_OutputDebugStringW]
lea eax, [ebp - 0x6dc]
push eax
call fcn.00433c40
add esp, 4
mov dword [ebp - 0x6d8], eax
mov ecx, dword [ebp - 0x6d8]
push ecx
lea ecx, [ebp - 0x500]
call fcn.00430100
mov byte [ebp - 4], 0x43
lea ecx, [ebp - 0x6dc]
call fcn.00437da0
lea edx, [ebp - 0x8a4]
mov dword [ebp - 0x520], edx
movzx eax, byte [ebp - 0x537]
push eax
mov ecx, dword [ebp - 0x520]
call fcn.00409420
mov byte [ebp - 4], 0x44
mov dword [ebp - 0x4c0], str.depots
mov ecx, dword [ebp - 0x4c0]
add ecx, 1
mov dword [ebp - 0x6e0], ecx
mov edx, dword [ebp - 0x4c0]
mov al, byte [edx]
mov byte [ebp - 0x4a1], al
add dword [ebp - 0x4c0], 1
cmp byte [ebp - 0x4a1], 0
jne 0x429201
mov ecx, dword [ebp - 0x4c0]
sub ecx, dword [ebp - 0x6e0]
mov dword [ebp - 0x6e4], ecx
mov edx, dword [ebp - 0x6e4]
mov dword [ebp - 0x6e8], edx
mov eax, dword [ebp - 0x6e8]
mov dword [ebp - 0x6ec], eax
mov ecx, dword [ebp - 0x6ec]
push ecx
push str.depots
mov ecx, dword [ebp - 0x520]
call fcn.00409b90
mov byte [ebp - 4], 0x43
mov edx, dword [ebp - 0x520]
mov dword [ebp - 0x844], edx
mov eax, dword [ebp - 0x500]
mov dword [ebp - 0x6f4], eax
lea ecx, [ebp - 0x8a4]
mov dword [ebp - 0x6f0], ecx
mov edx, dword [ebp - 0x6f0]
push edx
mov ecx, dword [ebp - 0x6f4]
call fcn.00418750
lea ecx, [ebp - 0x8a4]
call fcn.0040f520
mov eax, dword [ebp - 0x480]
add eax, 0x480
mov dword [ebp - 0x5a4], eax
mov ecx, dword [ebp - 0x5a4]
mov edx, dword [ecx + 4]
mov eax, dword [edx]
mov dword [ebp - 0x6f8], eax
push 0
mov ecx, dword [ebp - 0x6f8]
push ecx
lea ecx, [ebp - 0x4fc]
call fcn.00436880
mov edx, dword [ebp - 0x5a4]
mov eax, dword [edx + 4]
mov dword [ebp - 0x6fc], eax
push 0
mov ecx, dword [ebp - 0x6fc]
push ecx
lea ecx, [ebp - 0x700]
call fcn.00436880
jmp 0x42930e
mov edx, dword [ebp - 0x4fc]
mov eax, dword [edx]
mov dword [ebp - 0x4fc], eax
mov ecx, dword [ebp - 0x4fc]
cmp ecx, dword [ebp - 0x700]
jne 0x429328
mov dword [ebp - 0x5a0], 1
jmp 0x429332
mov dword [ebp - 0x5a0], 0
mov dl, byte [ebp - 0x5a0]
mov byte [ebp - 0x499], dl
movzx eax, byte [ebp - 0x499]
test eax, eax
jne 0x429355
mov dword [ebp - 0x59c], 1
jmp 0x42935f
mov dword [ebp - 0x59c], 0
mov cl, byte [ebp - 0x59c]
mov byte [ebp - 0x49a], cl
movzx edx, byte [ebp - 0x49a]
test edx, edx
je 0x42942e
mov eax, dword [ebp - 0x4fc]
add eax, 8
mov dword [ebp - 0x704], eax
mov ecx, dword [ebp - 0x704]
mov dword [ebp - 0x598], ecx
mov edx, dword [ebp - 0x598]
push edx
lea ecx, [ebp - 0x294]
call fcn.0040bf50
mov eax, dword [ebp - 0x598]
add eax, 0x18
push eax
lea ecx, [ebp - 0x27c]
call fcn.004372e0
mov byte [ebp - 4], 0x45
mov ecx, dword [ebp - 0x500]
mov dword [ebp - 0x70c], ecx
lea edx, [ebp - 0x294]
mov dword [ebp - 0x708], edx
mov eax, dword [ebp - 0x708]
push eax
lea ecx, [ebp - 0x884]
push ecx
mov ecx, dword [ebp - 0x70c]
add ecx, 0x38
call fcn.00432f60
mov byte [ebp - 4], 0x43
lea edx, [ebp - 0x27c]
mov dword [ebp - 0x590], edx
mov eax, dword [ebp - 0x590]
cmp dword [eax + 4], 0
je 0x42941e
mov ecx, dword [ebp - 0x590]
mov ecx, dword [ecx + 4]
call fcn.00439ea0
lea ecx, [ebp - 0x294]
call fcn.0040f520
jmp 0x429300
lea edx, [ebp - 0x500]
mov dword [ebp - 0x710], edx
push ecx
mov ecx, esp
mov dword [ebp - 0x848], esp
mov eax, dword [ebp - 0x710]
push eax
call fcn.00430100
mov ecx, dword [ebp - 0x4b0]
mov dword [ebp - 0x714], ecx
mov edx, dword [ebp - 0x714]
mov dword [ebp - 0x718], edx
mov ecx, dword [ebp - 0x718]
call fcn.0043dbb0
lea ecx, [ebp - 0x100]
call fcn.00405cb0
mov dword [ebp - 0x71c], eax
push 1
push 0x40
push 2
mov eax, dword [ebp - 0x71c]
push eax
lea ecx, [ebp - 0xadc]
call fcn.004369b0
mov ecx, dword [ebp - 0xadc]
mov edx, dword [ecx + 4]
mov dword [ebp + edx - method.std::basic_ofstream_char__struct_std::char_traits_char__.virtual_0], vtable.std::basic_ofstream_char__struct_std::char_traits_char__.0
mov eax, dword [ebp - 0xadc]
mov ecx, dword [eax + 4]
sub ecx, 0x68
mov edx, dword [ebp - 0xadc]
mov eax, dword [edx + 4]
mov dword [ebp + eax - 0xae0], ecx
mov byte [ebp - 4], 0x46
mov dword [ebp - 0x720], 0
mov ecx, dword [ebp - 0x720]
push ecx
lea edx, [ebp - 0x31c]
push edx
lea eax, [ebp - 0xadc]
push eax
call fcn.00435ed0
add esp, 0xc
lea ecx, [ebp - 0xadc]
call fcn.0043e460
push 0x57bdd4
mov ecx, dword [ebp - 0x480]
add ecx, 0x3b4
push ecx
lea edx, [ebp - 0x3ac]
push edx
call fcn.004146d0
add esp, 0xc
mov dword [ebp - 0x724], eax
mov eax, dword [ebp - 0x724]
mov dword [ebp - 0x728], eax
mov byte [ebp - 4], 0x47
push 6
push 0x57bdcc
mov ecx, dword [ebp - 0x728]
push ecx
call fcn.004132b0
add esp, 0xc
mov byte [ebp - 4], 0x46
lea ecx, [ebp - 0x3ac]
call fcn.00405e70
mov byte [ebp - 0x49b], 1
mov byte [ebp - 4], 0x43
lea ecx, [ebp - 0xa74]
call fcn.0040cf20
lea ecx, [ebp - 0xa74]
call fcn.0040ce70
mov byte [ebp - 4], 0x42
lea ecx, [ebp - 0x500]
call fcn.00437da0
mov byte [ebp - 4], 0x3e
cmp dword [ebp - 0x514], 0
je 0x4295a5
mov ecx, dword [ebp - 0x514]
call fcn.00439ea0
mov byte [ebp - 4], 0x36
cmp dword [ebp - 0x4ac], 0
je 0x4295bd
mov ecx, dword [ebp - 0x4ac]
call fcn.00439ea0
mov byte [ebp - 4], 0x2f
cmp dword [ebp - 0x4b4], 0
je 0x4295d5
mov ecx, dword [ebp - 0x4b4]
call fcn.00439ea0
mov byte [ebp - 4], 0x2e
lea ecx, [ebp - 0x31c]
call fcn.00437a20
mov byte [ebp - 4], 0x2d
lea ecx, [ebp - 0x904]
call fcn.0040cde0
lea ecx, [ebp - 0x904]
call fcn.0040ce70
mov byte [ebp - 4], 0x2c
lea ecx, [ebp - 0x118]
call fcn.0040f520
mov byte [ebp - 4], 0x2b
lea ecx, [ebp - 0x100]
call fcn.00405e70
mov byte [ebp - 4], 0x2a
lea ecx, [ebp - 0x9bc]
call fcn.0040cde0
lea ecx, [ebp - 0x9bc]
call fcn.0040ce70
mov byte [ebp - 4], 0x29
lea ecx, [ebp - 0xe8]
call fcn.0040f520
mov byte [ebp - 4], 0x21
lea ecx, [ebp - 0xb8]
call fcn.00405e70
mov byte [ebp - 4], 0x1d
lea ecx, [ebp - 0x5b4]
call fcn.00418a30
mov byte [ebp - 4], 0x19
lea ecx, [ebp - 0xd0]
call fcn.00405e70
mov byte [ebp - 4], 0x17
lea ecx, [ebp - 0x150]
call fcn.00405e70
mov byte [ebp - 4], 0x16
lea ecx, [ebp - 0x548]
call fcn.00418a30
mov byte [ebp - 4], 0x11
lea ecx, [ebp - 0x58]
call fcn.00405e70
mov byte [ebp - 4], 0x10
lea ecx, [ebp - 0x88]
call fcn.00405e70
mov byte [ebp - 4], 0xd
lea ecx, [ebp - 0xa0]
call fcn.00405e70
mov byte [ebp - 4], 0xa
lea ecx, [ebp - 0x40]
call fcn.00405e70
mov byte [ebp - 4], 9
lea ecx, [ebp - 0x28]
call fcn.0040f520
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x70]
call fcn.00405e70
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x560]
call fcn.00418a30
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x554]
call fcn.00418a30
mov al, byte [ebp - 0x49b]
jmp 0x429ee7
mov edx, dword [ebp - 0x480]
add edx, 0x480
mov dword [ebp - 0x58c], edx
mov eax, dword [ebp - 0x58c]
mov ecx, dword [eax + 4]
mov edx, dword [ecx]
mov dword [ebp - 0x72c], edx
push 0
mov eax, dword [ebp - 0x72c]
push eax
lea ecx, [ebp - 0x504]
call fcn.00436880
mov ecx, dword [ebp - 0x58c]
mov edx, dword [ecx + 4]
mov dword [ebp - 0x730], edx
push 0
mov eax, dword [ebp - 0x730]
push eax
lea ecx, [ebp - 0x734]
call fcn.00436880
jmp 0x429774
mov ecx, dword [ebp - 0x504]
mov edx, dword [ecx]
mov dword [ebp - 0x504], edx
mov eax, dword [ebp - 0x504]
cmp eax, dword [ebp - 0x734]
jne 0x42978e
mov dword [ebp - 0x588], 1
jmp 0x429798
mov dword [ebp - 0x588], 0
mov cl, byte [ebp - 0x588]
mov byte [ebp - 0x49c], cl
movzx edx, byte [ebp - 0x49c]
test edx, edx
jne 0x4297bb
mov dword [ebp - 0x584], 1
jmp 0x4297c5
mov dword [ebp - 0x584], 0
mov al, byte [ebp - 0x584]
mov byte [ebp - 0x49d], al
movzx ecx, byte [ebp - 0x49d]
test ecx, ecx
je 0x4298a0
mov edx, dword [ebp - 0x504]
add edx, 8
mov dword [ebp - 0x738], edx
mov eax, dword [ebp - 0x738]
mov dword [ebp - 0x580], eax
mov ecx, dword [ebp - 0x580]
push ecx
lea ecx, [ebp - 0x274]
call fcn.0040bf50
mov edx, dword [ebp - 0x580]
add edx, 0x18
push edx
lea ecx, [ebp - 0x25c]
call fcn.004372e0
mov byte [ebp - 4], 0x48
mov eax, dword [ebp - 0x518]
mov dword [ebp - 0x73c], eax
mov ecx, dword [ebp - 0x73c]
mov dword [ebp - 0x744], ecx
lea edx, [ebp - 0x274]
mov dword [ebp - 0x740], edx
mov eax, dword [ebp - 0x740]
push eax
lea ecx, [ebp - 0x88c]
push ecx
mov ecx, dword [ebp - 0x744]
add ecx, 0x38
call fcn.00432f60
mov byte [ebp - 4], 0x42
lea edx, [ebp - 0x25c]
mov dword [ebp - 0x57c], edx
mov eax, dword [ebp - 0x57c]
cmp dword [eax + 4], 0
je 0x429890
mov ecx, dword [ebp - 0x57c]
mov ecx, dword [ecx + 4]
call fcn.00439ea0
lea ecx, [ebp - 0x274]
call fcn.0040f520
jmp 0x429766
lea ecx, [ebp - 0x100]
call fcn.00405cb0
mov dword [ebp - 0x748], eax
push 1
push 0x40
push 2
mov edx, dword [ebp - 0x748]
push edx
lea ecx, [ebp - 0xb8c]
call fcn.004369b0
mov eax, dword [ebp - 0xb8c]
mov ecx, dword [eax + 4]
mov dword [ebp + ecx - method.std::basic_ofstream_char__struct_std::char_traits_char__.virtual_0], vtable.std::basic_ofstream_char__struct_std::char_traits_char__.0
mov edx, dword [ebp - 0xb8c]
mov eax, dword [edx + 4]
sub eax, 0x68
mov ecx, dword [ebp - 0xb8c]
mov edx, dword [ecx + 4]
mov dword [ebp + edx - 0xb90], eax
mov byte [ebp - 4], 0x49
mov dword [ebp - 0x78c], 0
mov eax, dword [ebp - 0x78c]
push eax
lea ecx, [ebp - 0x31c]
push ecx
lea edx, [ebp - 0xb8c]
push edx
call fcn.00435ed0
add esp, 0xc
lea ecx, [ebp - 0xb8c]
call fcn.0043e460
push 0x57bdf4
mov eax, dword [ebp - 0x480]
add eax, 0x3b4
push eax
lea ecx, [ebp - 0x394]
push ecx
call fcn.004146d0
add esp, 0xc
mov dword [ebp - 0x750], eax
mov edx, dword [ebp - 0x750]
mov dword [ebp - 0x754], edx
mov byte [ebp - 4], 0x4a
push 6
push 0x57bdec
mov eax, dword [ebp - 0x754]
push eax
call fcn.004132b0
add esp, 0xc
mov byte [ebp - 4], 0x49
lea ecx, [ebp - 0x394]
call fcn.00405e70
mov byte [ebp - 0x49e], 1
mov byte [ebp - 4], 0x42
lea ecx, [ebp - 0xb24]
call fcn.0040cf20
lea ecx, [ebp - 0xb24]
call fcn.0040ce70
mov byte [ebp - 4], 0x3e
cmp dword [ebp - 0x514], 0
je 0x4299c3
mov ecx, dword [ebp - 0x514]
call fcn.00439ea0
mov byte [ebp - 4], 0x36
cmp dword [ebp - 0x4ac], 0
je 0x4299db
mov ecx, dword [ebp - 0x4ac]
call fcn.00439ea0
mov byte [ebp - 4], 0x2f
cmp dword [ebp - 0x4b4], 0
je 0x4299f3
mov ecx, dword [ebp - 0x4b4]
call fcn.00439ea0
mov byte [ebp - 4], 0x2e
lea ecx, [ebp - 0x31c]
call fcn.00437a20
mov byte [ebp - 4], 0x2d
lea ecx, [ebp - 0x904]
call fcn.0040cde0
lea ecx, [ebp - 0x904]
call fcn.0040ce70
mov byte [ebp - 4], 0x2c
lea ecx, [ebp - 0x118]
call fcn.0040f520
mov byte [ebp - 4], 0x2b
lea ecx, [ebp - 0x100]
call fcn.00405e70
mov byte [ebp - 4], 0x2a
lea ecx, [ebp - 0x9bc]
call fcn.0040cde0
lea ecx, [ebp - 0x9bc]
call fcn.0040ce70
mov byte [ebp - 4], 0x29
lea ecx, [ebp - 0xe8]
call fcn.0040f520
mov byte [ebp - 4], 0x21
lea ecx, [ebp - 0xb8]
call fcn.00405e70
mov byte [ebp - 4], 0x1d
lea ecx, [ebp - 0x5b4]
call fcn.00418a30
mov byte [ebp - 4], 0x19
lea ecx, [ebp - 0xd0]
call fcn.00405e70
mov byte [ebp - 4], 0x17
lea ecx, [ebp - 0x150]
call fcn.00405e70
mov byte [ebp - 4], 0x16
lea ecx, [ebp - 0x548]
call fcn.00418a30
mov byte [ebp - 4], 0x11
lea ecx, [ebp - 0x58]
call fcn.00405e70
mov byte [ebp - 4], 0x10
lea ecx, [ebp - 0x88]
call fcn.00405e70
mov byte [ebp - 4], 0xd
lea ecx, [ebp - 0xa0]
call fcn.00405e70
mov byte [ebp - 4], 0xa
lea ecx, [ebp - 0x40]
call fcn.00405e70
mov byte [ebp - 4], 9
lea ecx, [ebp - 0x28]
call fcn.0040f520
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x70]
call fcn.00405e70
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x560]
call fcn.00418a30
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x554]
call fcn.00418a30
mov al, byte [ebp - 0x49e]
jmp 0x429ee7
mov byte [ebp - 0x49f], 1
mov byte [ebp - 4], 0x36
cmp dword [ebp - 0x4ac], 0
je 0x429b47
mov ecx, dword [ebp - 0x4ac]
call fcn.00439ea0
mov byte [ebp - 4], 0x2f
cmp dword [ebp - 0x4b4], 0
je 0x429b5f
mov ecx, dword [ebp - 0x4b4]
call fcn.00439ea0
mov byte [ebp - 4], 0x2e
lea ecx, [ebp - 0x31c]
call fcn.00437a20
mov byte [ebp - 4], 0x2d
lea ecx, [ebp - 0x904]
call fcn.0040cde0
lea ecx, [ebp - 0x904]
call fcn.0040ce70
mov byte [ebp - 4], 0x2c
lea ecx, [ebp - 0x118]
call fcn.0040f520
mov byte [ebp - 4], 0x2b
lea ecx, [ebp - 0x100]
call fcn.00405e70
mov byte [ebp - 4], 0x2a
lea ecx, [ebp - 0x9bc]
call fcn.0040cde0
lea ecx, [ebp - 0x9bc]
call fcn.0040ce70
mov byte [ebp - 4], 0x29
lea ecx, [ebp - 0xe8]
call fcn.0040f520
mov byte [ebp - 4], 0x21
lea ecx, [ebp - 0xb8]
call fcn.00405e70
mov byte [ebp - 4], 0x1d
lea ecx, [ebp - 0x5b4]
call fcn.00418a30
mov byte [ebp - 4], 0x19
lea ecx, [ebp - 0xd0]
call fcn.00405e70
mov byte [ebp - 4], 0x17
lea ecx, [ebp - 0x150]
call fcn.00405e70
mov byte [ebp - 4], 0x16
lea ecx, [ebp - 0x548]
call fcn.00418a30
mov byte [ebp - 4], 0x11
lea ecx, [ebp - 0x58]
call fcn.00405e70
mov byte [ebp - 4], 0x10
lea ecx, [ebp - 0x88]
call fcn.00405e70
mov byte [ebp - 4], 0xd
lea ecx, [ebp - 0xa0]
call fcn.00405e70
mov byte [ebp - 4], 0xa
lea ecx, [ebp - 0x40]
call fcn.00405e70
mov byte [ebp - 4], 9
lea ecx, [ebp - 0x28]
call fcn.0040f520
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x70]
call fcn.00405e70
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x560]
call fcn.00418a30
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x554]
call fcn.00418a30
mov al, byte [ebp - 0x49f]
jmp 0x429ee7
push 0
push 0
push 0x57be0c
mov ecx, dword [ebp - 0x480]
mov edx, dword [ecx + 0x248]
push edx
call dword [sym.imp.USER32.dll_MessageBoxW]
mov byte [ebp - 4], 0x21
lea ecx, [ebp - 0xb8]
call fcn.00405e70
mov byte [ebp - 4], 0x1d
lea ecx, [ebp - 0x5b4]
call fcn.00418a30
mov byte [ebp - 4], 0x19
lea ecx, [ebp - 0xd0]
call fcn.00405e70
mov byte [ebp - 4], 0x17
lea ecx, [ebp - 0x150]
call fcn.00405e70
mov byte [ebp - 4], 0x16
lea ecx, [ebp - 0x548]
call fcn.00418a30
mov byte [ebp - 4], 0x11
lea ecx, [ebp - 0x58]
call fcn.00405e70
mov byte [ebp - 4], 0x10
lea ecx, [ebp - 0x88]
call fcn.00405e70
mov byte [ebp - 4], 0xd
lea ecx, [ebp - 0xa0]
call fcn.00405e70
mov byte [ebp - 4], 0xa
lea ecx, [ebp - 0x40]
call fcn.00405e70
mov byte [ebp - 4], 9
lea ecx, [ebp - 0x28]
call fcn.0040f520
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x70]
call fcn.00405e70
jmp 0x427ba1
mov byte [ebp - 4], 0x17
lea ecx, [ebp - 0x150]
call fcn.00405e70
mov byte [ebp - 4], 0x16
lea ecx, [ebp - 0x548]
call fcn.00418a30
mov byte [ebp - 4], 0x11
lea ecx, [ebp - 0x58]
call fcn.00405e70
mov byte [ebp - 4], 0x10
lea ecx, [ebp - 0x88]
call fcn.00405e70
mov byte [ebp - 4], 0xd
lea ecx, [ebp - 0xa0]
call fcn.00405e70
mov byte [ebp - 4], 0xa
lea ecx, [ebp - 0x40]
call fcn.00405e70
mov byte [ebp - 4], 9
lea ecx, [ebp - 0x28]
call fcn.0040f520
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x70]
call fcn.00405e70
jmp 0x427ba1
mov byte [ebp - 4], 0x11
lea ecx, [ebp - 0x58]
call fcn.00405e70
mov byte [ebp - 4], 0x10
lea ecx, [ebp - 0x88]
call fcn.00405e70
mov byte [ebp - 4], 0xd
lea ecx, [ebp - 0xa0]
call fcn.00405e70
mov byte [ebp - 4], 0xa
lea ecx, [ebp - 0x40]
call fcn.00405e70
mov byte [ebp - 4], 9
lea ecx, [ebp - 0x28]
call fcn.0040f520
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x70]
call fcn.00405e70
jmp 0x427ba1
mov byte [ebp - 0x4a0], 0
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x560]
call fcn.00418a30
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x554]
call fcn.00418a30
mov al, byte [ebp - 0x4a0]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.00510479
mov esp, ebp
pop ebp
ret