Function at 0x100290d0
Capabilities:
Contain obfuscated stackstrings

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x100c0b61
mov eax, dword fs:[0]
push eax
sub esp, 0xbe0
mov eax, dword [0x1010001c]
xor eax, ebp
mov dword [ebp - 0x10], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov esi, dword [ebp + 8]
lea ecx, [ebp - 0xa4c]
xorps xmm0, xmm0
mov dword [ebp - 0xb70], esi
push esi
mov dword [ebp - 0xb68], 0
mov byte [ebp - 0xb62], 0
movups xmmword [ebp - 0xa4c], xmm0
call fcn.10036f80
xorps xmm0, xmm0
lea edi, [esi + 0x18]
push edi
lea ecx, [ebp - 0xb80]
movups xmmword [ebp - 0xb80], xmm0
call fcn.10036f80
mov eax, dword [ebp - 0xb80]
cmp eax, dword [ebp - 0xa4c]
jl 0x1002a619
jg 0x10029194
mov eax, dword [ebp - 0xb7c]
cmp eax, dword [ebp - 0xa48]
jl 0x1002a619
jg 0x10029194
mov eax, dword [ebp - 0xb78]
cmp eax, dword [ebp - 0xa44]
jl 0x1002a619
jg 0x10029194
mov eax, dword [ebp - 0xb74]
cmp eax, dword [ebp - 0xa40]
jle 0x1002a619
push 0x800
lea eax, [ebp - 0xa18]
push 0
push eax
call fcn.1008c730
lea eax, [ebp - 0xa30]
push eax
call fcn.10012710
add esp, 0x10
mov dword [ebp - 4], 0
cmp dword [eax + 0x14], 8
jb 0x100291c5
mov eax, dword [eax]
push eax
lea eax, [ebp - 0xa18]
push 0x400
push eax
call fcn.1008df82
add esp, 0xc
mov dword [ebp - 4], 1
mov edx, dword [ebp - 0xa1c]
cmp edx, 8
jb 0x10029221
mov ecx, dword [ebp - 0xa30]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x10029217
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1002a638
push edx
push ecx
call fcn.1008a52b
add esp, 8
xor eax, eax
mov dword [ebp - 0xa20], 0
mov dword [ebp - 0xa1c], 7
mov word [ebp - 0xa30], ax
lea eax, [ebp - 0xa18]
mov dword [ebp - 4], 0xffffffff
push eax
call dword [sym.imp.SHLWAPI.dll_PathRemoveFileSpecW]
mov esi, dword [sym.imp.KERNEL32.dll_lstrcatW]
lea eax, [ebp - 0xa18]
push 0x100e1b24
push eax
call esi
push 0x100debfc
lea eax, [ebp - 0xa18]
push eax
call esi
lea eax, [ebp - 0xa18]
push eax
call dword [sym.imp.KERNEL32.dll_LoadLibraryW]
mov dword [ebp - 0xb74], eax
test eax, eax
jne 0x1002929a
mov dword [ebp - 0xb68], 1
jmp 0x1002a011
push str.ExtractArchive
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [ebp - 0xbb4], eax
test eax, eax
jne 0x100292bf
mov dword [ebp - 0xb68], 2
jmp 0x1002a005
push edi
lea eax, [ebp - 0xa30]
push 0x100e2a18
push eax
call fcn.10003e30
add esp, 0xc
mov dword [ebp - 4], 5
mov edx, dword [ebp - 0xa1c]
cmp edx, 8
jb 0x1002931b
mov ecx, dword [ebp - 0xa30]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x10029311
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1002a63d
push edx
push ecx
call fcn.1008a52b
add esp, 8
xor eax, eax
mov dword [ebp - 0xa20], 0
mov dword [ebp - 0xa1c], 7
mov word [ebp - 0xa30], ax
mov esi, dword [ebp - 0xb70]
mov dword [ebp - 4], 0xffffffff
lea eax, [esi + 0x30]
push eax
lea eax, [ebp - 0xa30]
push 0x100e2a30
push eax
call fcn.10003e30
add esp, 0xc
mov dword [ebp - 4], 9
mov edx, dword [ebp - 0xa1c]
cmp edx, 8
jb 0x100293a4
mov ecx, dword [ebp - 0xa30]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x1002939a
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1002a642
push edx
push ecx
call fcn.1008a52b
add esp, 8
xor eax, eax
mov dword [ebp - 0xa20], 0
mov dword [ebp - 0xa1c], 7
mov word [ebp - 0xa30], ax
lea eax, [esi + 0x48]
mov dword [ebp - 4], 0xffffffff
push eax
lea eax, [ebp - 0xa30]
push str.g0R
push eax
call fcn.10003e30
add esp, 0xc
mov dword [ebp - 4], 0xd
mov edx, dword [ebp - 0xa1c]
cmp edx, 8
jb 0x10029427
mov ecx, dword [ebp - 0xa30]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x1002941d
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1002a647
push edx
push ecx
call fcn.1008a52b
add esp, 8
xor eax, eax
mov dword [ebp - 0xa20], 0
mov dword [ebp - 0xa1c], 7
mov word [ebp - 0xa30], ax
push 0x208
push eax
lea eax, [ebp - 0x218]
mov dword [ebp - 4], 0xffffffff
push eax
call fcn.1008c730
add esp, 0xc
lea eax, [ebp - 0x218]
push 0x104
push eax
push 0
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameW]
xor eax, eax
mov dword [ebp - 0xa74], 0
lea ecx, [ebp - 0x218]
mov dword [ebp - 0xa70], 0
mov dword [ebp - 0xa74], 0
lea edx, [ecx + 2]
mov dword [ebp - 0xa70], 7
mov word [ebp - 0xa84], ax
nop
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x100294b0
sub ecx, edx
lea eax, [ebp - 0x218]
sar ecx, 1
push ecx
push eax
lea ecx, [ebp - 0xa84]
call fcn.10003a30
lea ecx, [ebp - 0xa84]
mov dword [ebp - 4], 0x11
call fcn.10003a20
mov esi, eax
cmp dword [eax + 0x14], 8
jb 0x100294ee
mov esi, dword [eax]
mov eax, dword [eax + 0x10]
mov dword [ebp - 0xa88], 0xffffffff
test eax, eax
je 0x1002953b
dec eax
mov dword [ebp - 0xa3c], eax
lea eax, [ebp - 0xa3c]
push eax
lea eax, [ebp - 0xa88]
push eax
call fcn.10003c20
add esp, 8
mov eax, dword [eax]
cmp word [esi + eax*2], 0x5c
lea eax, [esi + eax*2]
je 0x10029535
cmp eax, esi
je 0x1002953b
sub eax, 2
cmp word [eax], 0x5c
jne 0x10029528
sub eax, esi
sar eax, 1
jmp 0x1002953e
or eax, 0xffffffff
inc eax
lea ecx, [ebp - 0xa84]
push eax
push 0
lea eax, [ebp - 0xa30]
push eax
call fcn.10007960
mov esi, eax
lea eax, [ebp - 0xa84]
mov byte [ebp - 4], 0x12
cmp eax, esi
je 0x10029595
mov ecx, eax
call fcn.10003910
movups xmm0, xmmword [esi]
xor eax, eax
movups xmmword [ebp - 0xa84], xmm0
movq xmm0, qword [esi + 0x10]
movq qword [ebp - 0xa74], xmm0
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 7
mov word [esi], ax
mov byte [ebp - 4], 0x13
mov edx, dword [ebp - 0xa1c]
cmp edx, 8
jb 0x100295d9
mov ecx, dword [ebp - 0xa30]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x100295cf
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1002a64c
push edx
push ecx
call fcn.1008a52b
add esp, 8
xor eax, eax
mov dword [ebp - 0xa20], 0
mov dword [ebp - 0xa1c], 7
mov word [ebp - 0xa30], ax
push str.Service_
lea eax, [ebp - 0xa84]
mov byte [ebp - 4], 0x11
push eax
lea eax, [ebp - 0xa54]
push eax
call fcn.10003d00
add esp, 0xc
mov byte [ebp - 4], 0x17
mov eax, edi
cmp dword [edi + 0x14], 8
jb 0x10029623
mov eax, dword [edi]
push dword [edi + 0x10]
lea ecx, [ebp - 0xa54]
push eax
call fcn.10004120
lea eax, [ebp - 0xa54]
push eax
call fcn.10006d60
lea eax, [ebp - 0xa54]
push eax
call fcn.100071d0
lea eax, [ebp - 0xa54]
push eax
lea eax, [ebp - 0xa30]
push str.S_:
push eax
call fcn.10003e30
add esp, 0x14
mov byte [ebp - 4], 0x18
mov edx, dword [ebp - 0xa1c]
cmp edx, 8
jb 0x100296a9
mov ecx, dword [ebp - 0xa30]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x1002969f
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1002a651
push edx
push ecx
call fcn.1008a52b
add esp, 8
xor eax, eax
mov dword [ebp - 0xa20], 0
mov dword [ebp - 0xa1c], 7
mov word [ebp - 0xa30], ax
lea eax, [ebp - 0xa84]
mov byte [ebp - 4], 0x17
push eax
lea ecx, [ebp - 0xa6c]
call fcn.10006780
lea eax, [ebp - 0xa84]
mov byte [ebp - 4], 0x1c
push eax
lea ecx, [ebp - 0xaa0]
call fcn.10006780
push 0x28
push str.UpgradeTemp_tmp_download_2345Service.dat
lea ecx, [ebp - 0xa6c]
mov byte [ebp - 4], 0x1d
call fcn.10004120
push 0xb
push str.UpgradeTemp
lea ecx, [ebp - 0xaa0]
call fcn.10004120
lea eax, [ebp - 0xaa0]
push eax
call fcn.10006d60
lea eax, [ebp - 0xaa0]
push eax
call fcn.100071d0
lea eax, [ebp - 0xaa0]
push eax
lea eax, [ebp - 0xb98]
push 0x100e2aec
push eax
call fcn.10003e30
add esp, 0x14
mov byte [ebp - 4], 0x1e
mov edx, dword [ebp - 0xb84]
cmp edx, 8
jb 0x10029791
mov ecx, dword [ebp - 0xb98]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x10029787
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1002a656
push edx
push ecx
call fcn.1008a52b
add esp, 8
xor eax, eax
mov dword [ebp - 0xb88], 0
mov dword [ebp - 0xb84], 7
mov word [ebp - 0xb98], ax
mov byte [ebp - 4], 0x1d
lea edx, [ebp - 0xa6c]
cmp dword [ebp - 0xa58], 8
mov dword [ebp - 0xa20], eax
cmovae edx, dword [ebp - 0xa6c]
mov ecx, edx
mov dword [ebp - 0xa1c], eax
mov dword [ebp - 0xa20], eax
mov dword [ebp - 0xa1c], 7
mov word [ebp - 0xa30], ax
lea esi, [ecx + 2]
nop
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x100297f0
sub ecx, esi
sar ecx, 1
push ecx
push edx
lea ecx, [ebp - 0xa30]
call fcn.10003a30
mov esi, dword [ebp - 0xb70]
lea edx, [esi + 0x30]
mov byte [ebp - 4], 0x22
cmp dword [edx + 0x14], 8
jb 0x10029821
mov edx, dword [edx]
mov ecx, edx
mov dword [ebp - 0xb88], 0
xor eax, eax
mov dword [ebp - 0xb84], 0
mov word [ebp - 0xb98], ax
mov dword [ebp - 0xb88], 0
lea eax, [ecx + 2]
mov dword [ebp - 0xb84], 7
mov dword [ebp - 0xa88], eax
nop dword [eax]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x10029860
sub ecx, dword [ebp - 0xa88]
sar ecx, 1
push ecx
push edx
lea ecx, [ebp - 0xb98]
call fcn.10003a30
lea ecx, [ebp - 0xb60]
mov byte [ebp - 4], 0x23
call fcn.10036960
mov byte [ebp - 4], 0x24
lea eax, [ebp - 0xb98]
cmp dword [ebp - 0xb84], 8
lea ecx, [ebp - 0xb60]
push dword [ebp - 0xb88]
cmovae eax, dword [ebp - 0xb98]
push eax
call fcn.10003a30
cmp dword [ebp - 0xa1c], 8
lea eax, [ebp - 0xa30]
push dword [ebp - 0xa20]
cmovae eax, dword [ebp - 0xa30]
lea ecx, [ebp - 0xb48]
push eax
call fcn.10003a30
lea ecx, [ebp - 0xa3c]
mov dword [ebp - 0xa3c], 0
call fcn.10036a00
sub esp, 0xc
mov byte [ebp - 4], 0x25
lea eax, [ebp - 0xb60]
lea ecx, [ebp - 0xa3c]
push eax
call fcn.10036b10
lea ecx, [ebp - 0xa3c]
mov byte [ebp - 0xb61], al
mov byte [ebp - 4], 0x24
call fcn.10036a80
lea ecx, [ebp - 0xb60]
mov byte [ebp - 4], 0x23
call fcn.1002a6c0
cmp byte [ebp - 0xb61], 0
sete byte [ebp - 0xb61]
mov byte [ebp - 4], 0x26
mov edx, dword [ebp - 0xb84]
cmp edx, 8
jb 0x10029983
mov ecx, dword [ebp - 0xb98]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x10029979
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1002a65b
push edx
push ecx
call fcn.1008a52b
add esp, 8
xor eax, eax
mov dword [ebp - 0xb88], 0
mov dword [ebp - 0xb84], 7
mov word [ebp - 0xb98], ax
mov byte [ebp - 4], 0x2a
mov edx, dword [ebp - 0xa1c]
cmp edx, 8
jb 0x100299e4
mov ecx, dword [ebp - 0xa30]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x100299da
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1002a660
push edx
push ecx
call fcn.1008a52b
add esp, 8
xor eax, eax
mov dword [ebp - 0xa20], 0
mov dword [ebp - 0xa1c], 7
mov word [ebp - 0xa30], ax
mov byte [ebp - 4], 0x1d
cmp byte [ebp - 0xb61], al
je 0x10029ba7
mov dword [ebp - 0xb68], 3
mov byte [ebp - 4], 0x2e
mov edx, dword [ebp - 0xa8c]
cmp edx, 8
jb 0x10029a5f
mov ecx, dword [ebp - 0xaa0]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x10029a55
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1002a665
push edx
push ecx
call fcn.1008a52b
add esp, 8
xor eax, eax
mov dword [ebp - 0xa90], 0
mov dword [ebp - 0xa8c], 7
mov word [ebp - 0xaa0], ax
mov byte [ebp - 4], 0x32
mov edx, dword [ebp - 0xa58]
cmp edx, 8
jb 0x10029ac0
mov ecx, dword [ebp - 0xa6c]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x10029ab6
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1002a66a
push edx
push ecx
call fcn.1008a52b
add esp, 8
xor eax, eax
mov dword [ebp - 0xa5c], 0
mov dword [ebp - 0xa58], 7
mov word [ebp - 0xa6c], ax
mov byte [ebp - 4], 0x36
mov edx, dword [ebp - 0xa40]
cmp edx, 8
jb 0x10029b21
mov ecx, dword [ebp - 0xa54]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x10029b17
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1002a66f
push edx
push ecx
call fcn.1008a52b
add esp, 8
xor eax, eax
mov dword [ebp - 0xa44], 0
mov dword [ebp - 0xa40], 7
mov word [ebp - 0xa54], ax
mov dword [ebp - 4], 0x3a
mov edx, dword [ebp - 0xa70]
cmp edx, 8
jb 0x10029b85
mov ecx, dword [ebp - 0xa84]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x10029b7b
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1002a674
push edx
push ecx
call fcn.1008a52b
add esp, 8
xor eax, eax
mov dword [ebp - 0xa74], 0
mov dword [ebp - 0xa70], 7
mov word [ebp - 0xa84], ax
jmp 0x10029ffe
lea eax, [ebp - 0xa6c]
push eax
push esi
call fcn.1002a850
test al, al
jne 0x10029d52
mov dword [ebp - 0xb68], 4
mov byte [ebp - 4], 0x3e
mov edx, dword [ebp - 0xa8c]
cmp edx, 8
jb 0x10029c0a
mov ecx, dword [ebp - 0xaa0]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x10029c00
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1002a679
push edx
push ecx
call fcn.1008a52b
add esp, 8
xor eax, eax
mov dword [ebp - 0xa90], 0
mov dword [ebp - 0xa8c], 7
mov word [ebp - 0xaa0], ax
mov byte [ebp - 4], 0x42
mov edx, dword [ebp - 0xa58]
cmp edx, 8
jb 0x10029c6b
mov ecx, dword [ebp - 0xa6c]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x10029c61
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1002a67e
push edx
push ecx
call fcn.1008a52b
add esp, 8
xor eax, eax
mov dword [ebp - 0xa5c], 0
mov dword [ebp - 0xa58], 7
mov word [ebp - 0xa6c], ax
mov byte [ebp - 4], 0x46
mov edx, dword [ebp - 0xa40]
cmp edx, 8
jb 0x10029ccc
mov ecx, dword [ebp - 0xa54]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x10029cc2
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1002a683
push edx
push ecx
call fcn.1008a52b
add esp, 8
xor eax, eax
mov dword [ebp - 0xa44], 0
mov dword [ebp - 0xa40], 7
mov word [ebp - 0xa54], ax
mov dword [ebp - 4], 0x4a
mov edx, dword [ebp - 0xa70]
cmp edx, 8
jb 0x10029d30
mov ecx, dword [ebp - 0xa84]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x10029d26
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1002a688
push edx
push ecx
call fcn.1008a52b
add esp, 8
xor eax, eax
mov dword [ebp - 0xa74], 0
mov dword [ebp - 0xa70], 7
mov word [ebp - 0xa84], ax
jmp 0x10029ffe
cmp dword [ebp - 0xa40], 8
lea ecx, [ebp - 0xa54]
push 0
cmovae ecx, dword [ebp - 0xa54]
lea eax, [ebp - 0xa6c]
cmp dword [ebp - 0xa58], 8
push 0x100290c0
cmovae eax, dword [ebp - 0xa6c]
push 1
push 0
push ecx
push eax
call dword [ebp - 0xbb4]
add esp, 0x18
test eax, eax
jne 0x10029e5e
lea eax, [ebp - 0xa84]
push eax
lea ecx, [ebp - 0xa30]
call fcn.10006780
push 0xa
push str.config.ini
lea ecx, [ebp - 0xa30]
mov byte [ebp - 4], 0x4e
call fcn.10004120
cmp dword [ebp - 0xa1c], 8
lea eax, [ebp - 0xa30]
mov ecx, edi
cmovae eax, dword [ebp - 0xa30]
cmp dword [edi + 0x14], 8
jb 0x10029dde
mov ecx, dword [edi]
push eax
push ecx
push str.ServiceVersion
push str.ServerLoadInfo
call dword [sym.imp.KERNEL32.dll_WritePrivateProfileStringW]
mov byte [ebp - 0xb62], 1
mov byte [ebp - 4], 0x4f
mov edx, dword [ebp - 0xa1c]
cmp edx, 8
jb 0x10029e3b
mov ecx, dword [ebp - 0xa30]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x10029e31
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1002a68d
push edx
push ecx
call fcn.1008a52b
add esp, 8
xor eax, eax
mov dword [ebp - 0xa20], 0
mov dword [ebp - 0xa1c], 7
mov word [ebp - 0xa30], ax
mov byte [ebp - 4], 0x1d
jmp 0x10029e68
mov dword [ebp - 0xb68], 5
lea eax, [ebp - 0xaa0]
push eax
call fcn.10006d60
add esp, 4
mov byte [ebp - 4], 0x53
mov edx, dword [ebp - 0xa8c]
cmp edx, 8
jb 0x10029ebb
mov ecx, dword [ebp - 0xaa0]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x10029eb1
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1002a692
push edx
push ecx
call fcn.1008a52b
add esp, 8
xor eax, eax
mov dword [ebp - 0xa90], 0
mov dword [ebp - 0xa8c], 7
mov word [ebp - 0xaa0], ax
mov byte [ebp - 4], 0x57
mov edx, dword [ebp - 0xa58]
cmp edx, 8
jb 0x10029f1c
mov ecx, dword [ebp - 0xa6c]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x10029f12
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1002a697
push edx
push ecx
call fcn.1008a52b
add esp, 8
xor eax, eax
mov dword [ebp - 0xa5c], 0
mov dword [ebp - 0xa58], 7
mov word [ebp - 0xa6c], ax
mov byte [ebp - 4], 0x5b
mov edx, dword [ebp - 0xa40]
cmp edx, 8
jb 0x10029f7d
mov ecx, dword [ebp - 0xa54]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x10029f73
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1002a69c
push edx
push ecx
call fcn.1008a52b
add esp, 8
xor eax, eax
mov dword [ebp - 0xa44], 0
mov dword [ebp - 0xa40], 7
mov word [ebp - 0xa54], ax
mov dword [ebp - 4], 0x5f
mov edx, dword [ebp - 0xa70]
cmp edx, 8
jb 0x10029fe1
mov ecx, dword [ebp - 0xa84]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x10029fd7
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1002a6a1
push edx
push ecx
call fcn.1008a52b
add esp, 8
xor eax, eax
mov dword [ebp - 0xa74], 0
mov dword [ebp - 0xa70], 7
mov word [ebp - 0xa84], ax
mov dword [ebp - 4], 0xffffffff
push dword [ebp - 0xb74]
call dword [sym.imp.KERNEL32.dll_FreeLibrary]
xorps xmm0, xmm0
movlpd qword [ebp - 0xa38], xmm0
mov dword [ebp - 0xa38], 0
mov dword [ebp - 0xa34], 0
call fcn.10023bf0
mov dword [ebp - 0xa38], eax
sub esp, 0x18
mov dword [ebp - 4], 0x65
mov ecx, esp
mov dword [ebp - 0xb74], esp
mov byte [ebp - 0xb61], 0
push 0x10100a1c
call fcn.10006780
mov byte [ebp - 4], 0x66
lea ecx, [ebp - 0xa30]
mov byte [ebp - 4], 0x65
call fcn.100141b0
add esp, 0x18
mov esi, eax
lea eax, [ebp - 0xa4c]
mov byte [ebp - 4], 0x67
push eax
call dword [sym.imp.OLEAUT32.dll_VariantClear]
lea eax, [ebp - 0xa4c]
mov byte [ebp - 4], 0x68
push esi
push eax
lea edx, [ebp - 0xb61]
lea ecx, [ebp - 0xbb0]
call fcn.100244b0
add esp, 8
mov byte [ebp - 4], 0x69
lea ecx, [ebp - 0xab8]
push eax
mov dword [ebp - 0xac0], str.uuid
call fcn.10024d40
lea eax, [ebp - 0xac0]
mov byte [ebp - 4], 0x6a
push eax
lea ecx, [ebp - 0xa38]
call fcn.100251e0
push eax
add eax, 0x10
push eax
push ecx
lea eax, [ebp - 0xb78]
push eax
lea ecx, [ebp - 0xa38]
call fcn.10024ed0
lea ecx, [ebp - 0xab8]
mov byte [ebp - 4], 0x6c
call fcn.1001fc10
lea ecx, [ebp - 0xbb0]
mov byte [ebp - 4], 0x6d
call fcn.1001fc10
lea eax, [ebp - 0xa4c]
mov byte [ebp - 4], 0x67
push eax
call dword [sym.imp.OLEAUT32.dll_VariantCopy]
mov byte [ebp - 4], 0x6e
mov edx, dword [ebp - 0xa1c]
cmp edx, 8
jb 0x1002a162
mov ecx, dword [ebp - 0xa30]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x1002a158
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1002a6a6
push edx
push ecx
call fcn.1008a52b
add esp, 8
xor eax, eax
mov dword [ebp - 0xa20], 0
mov dword [ebp - 0xa1c], 7
mov word [ebp - 0xa30], ax
sub esp, 0x18
mov byte [ebp - 4], 0x65
mov ecx, esp
mov dword [ebp - 0xb74], esp
mov byte [ebp - 0xb61], al
push 0x10100a1c
call fcn.10006780
mov byte [ebp - 4], 0x72
lea ecx, [ebp - 0xb98]
mov byte [ebp - 4], 0x65
call fcn.100143a0
add esp, 0x18
mov esi, eax
lea eax, [ebp - 0xa64]
mov byte [ebp - 4], 0x73
push eax
call dword [sym.imp.OLEAUT32.dll_VariantClear]
lea eax, [ebp - 0xa64]
mov byte [ebp - 4], 0x74
push esi
push eax
lea edx, [ebp - 0xb61]
lea ecx, [ebp - 0xab8]
call fcn.100244b0
add esp, 8
mov byte [ebp - 4], 0x75
lea ecx, [ebp - 0xbe4]
push eax
mov dword [ebp - 0xbec], str.uuid2
call fcn.10024d40
lea eax, [ebp - 0xbec]
mov byte [ebp - 4], 0x76
push eax
lea ecx, [ebp - 0xa38]
call fcn.100251e0
push eax
add eax, 0x10
push eax
push ecx
lea eax, [ebp - 0xb78]
push eax
lea ecx, [ebp - 0xa38]
call fcn.10024ed0
lea ecx, [ebp - 0xbe4]
mov byte [ebp - 4], 0x78
call fcn.1001fc10
lea ecx, [ebp - 0xab8]
mov byte [ebp - 4], 0x79
call fcn.1001fc10
lea eax, [ebp - 0xa64]
mov byte [ebp - 4], 0x73
mov esi, dword [sym.imp.OLEAUT32.dll_VariantCopy]
push eax
call esi
mov byte [ebp - 4], 0x7a
mov edx, dword [ebp - 0xb84]
cmp edx, 8
jb 0x1002a2a4
mov ecx, dword [ebp - 0xb98]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x1002a29a
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1002a6ab
push edx
push ecx
call fcn.1008a52b
add esp, 8
xor eax, eax
mov dword [ebp - 0xb88], 0
mov dword [ebp - 0xb84], 7
mov word [ebp - 0xb98], ax
mov byte [ebp - 4], 0x65
mov eax, 0x16
mov word [ebp - 0xa4c], ax
mov eax, dword [ebp - 0xb68]
mov byte [ebp - 0xb61], 1
mov dword [ebp - 0xa44], eax
push ecx
lea eax, [ebp - 0xa4c]
mov byte [ebp - 4], 0x7e
push eax
lea edx, [ebp - 0xb61]
lea ecx, [ebp - 0xba0]
call fcn.10023cc0
push eax
mov edx, str.ssj01
mov byte [ebp - 4], 0x7f
lea ecx, [ebp - 0xab0]
call fcn.10024080
add esp, 0xc
push eax
lea ecx, [ebp - 0xa38]
mov byte [ebp - 4], 0x80
call fcn.10025110
push eax
add eax, 0x10
push eax
push ecx
lea eax, [ebp - 0xb78]
push eax
lea ecx, [ebp - 0xa38]
call fcn.10024ed0
lea eax, [ebp - 0xaa0]
mov byte [ebp - 4], 0x84
push eax
call esi
lea eax, [ebp - 0xb98]
mov byte [ebp - 4], 0x87
push eax
call esi
lea eax, [ebp - 0xa4c]
mov byte [ebp - 4], 0x65
push eax
call esi
lea eax, [ebp - 0xa64]
mov byte [ebp - 0xb61], 0
push eax
call dword [sym.imp.OLEAUT32.dll_VariantClear]
push dword [ebp - 0xb70]
lea eax, [ebp - 0xa64]
mov byte [ebp - 4], 0x88
push eax
lea edx, [ebp - 0xb61]
lea ecx, [ebp - 0xbb0]
call fcn.1002aa40
add esp, 8
mov byte [ebp - 4], 0x89
lea ecx, [ebp - 0xbe4]
push eax
mov dword [ebp - 0xbec], str.oldver
call fcn.10024d40
mov byte [ebp - 4], 0x8a
lea eax, [ebp - 0xbec]
push eax
lea ecx, [ebp - 0xa38]
call fcn.100251e0
push eax
add eax, 0x10
push eax
push ecx
lea eax, [ebp - 0xb78]
push eax
lea ecx, [ebp - 0xa38]
call fcn.10024ed0
lea ecx, [ebp - 0xbe4]
mov byte [ebp - 4], 0x8c
call fcn.1001fc10
lea ecx, [ebp - 0xbb0]
mov byte [ebp - 4], 0x8d
call fcn.1001fc10
lea eax, [ebp - 0xa64]
mov byte [ebp - 4], 0x65
push eax
call esi
lea eax, [ebp - 0xa64]
mov byte [ebp - 0xb61], 0
push eax
call dword [sym.imp.OLEAUT32.dll_VariantClear]
lea eax, [ebp - 0xa64]
mov byte [ebp - 4], 0x8e
push edi
push eax
lea edx, [ebp - 0xb61]
lea ecx, [ebp - 0xbb0]
call fcn.1002aa40
add esp, 8
mov byte [ebp - 4], 0x8f
lea ecx, [ebp - 0xbe4]
push eax
mov dword [ebp - 0xbec], str.newver
call fcn.10024d40
lea eax, [ebp - 0xbec]
mov byte [ebp - 4], 0x90
push eax
lea ecx, [ebp - 0xa38]
call fcn.100251e0
push eax
add eax, 0x10
push eax
push ecx
lea eax, [ebp - 0xb78]
push eax
lea ecx, [ebp - 0xa38]
call fcn.10024ed0
lea ecx, [ebp - 0xbe4]
mov byte [ebp - 4], 0x92
call fcn.1001fc10
lea ecx, [ebp - 0xbb0]
mov byte [ebp - 4], 0x93
call fcn.1001fc10
lea eax, [ebp - 0xa64]
mov byte [ebp - 4], 0x65
push eax
call esi
lea edx, [ebp - 0xa38]
lea ecx, [ebp - 0xad8]
call fcn.10018ae0
mov byte [ebp - 4], 0x95
mov dword [ebp - 0xa20], 0
mov dword [ebp - 0xa1c], 0
mov dword [ebp - 0xa20], 0
mov dword [ebp - 0xa1c], 7
xor eax, eax
mov word [ebp - 0xa30], ax
lea edx, [ebp - 0xa30]
mov byte [ebp - 4], 0x96
lea ecx, [ebp - 0xad8]
call fcn.10014ff0
mov byte [ebp - 4], 0x97
mov edx, dword [ebp - 0xa1c]
cmp edx, 8
jb 0x1002a55a
mov ecx, dword [ebp - 0xa30]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x1002a550
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1002a6b0
push edx
push ecx
call fcn.1008a52b
add esp, 8
xor eax, eax
mov dword [ebp - 0xa20], 0
mov dword [ebp - 0xa1c], 7
mov word [ebp - 0xa30], ax
mov byte [ebp - 4], 0x9b
mov edx, dword [ebp - 0xac4]
cmp edx, 8
jb 0x1002a5bb
mov ecx, dword [ebp - 0xad8]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x1002a5b1
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1002a6b5
push edx
push ecx
call fcn.1008a52b
add esp, 8
xor eax, eax
mov dword [ebp - 0xac8], 0
mov dword [ebp - 0xac4], 7
mov word [ebp - 0xad8], ax
mov dword [ebp - 4], 0xa0
lea ecx, [ebp - 0xa38]
mov eax, dword [ebp - 0xa38]
push eax
push dword [eax]
lea eax, [ebp - 0xb74]
push eax
call fcn.10023200
push 0x58
push dword [ebp - 0xa38]
call fcn.1008a52b
mov al, byte [ebp - 0xb62]
add esp, 8
mov dword [ebp - 4], 0xffffffff
jmp 0x1002a61b
xor al, al
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.1008a187
mov esp, ebp
pop ebp
ret 4
call fcn.1008e2b2
call fcn.1008e2b2
call fcn.1008e2b2
call fcn.1008e2b2
call fcn.1008e2b2
call fcn.1008e2b2
call fcn.1008e2b2
call fcn.1008e2b2
call fcn.1008e2b2
call fcn.1008e2b2
call fcn.1008e2b2
call fcn.1008e2b2
call fcn.1008e2b2
call fcn.1008e2b2
call fcn.1008e2b2
call fcn.1008e2b2
call fcn.1008e2b2
call fcn.1008e2b2
call fcn.1008e2b2
call fcn.1008e2b2
call fcn.1008e2b2
call fcn.1008e2b2
call fcn.1008e2b2
call fcn.1008e2b2
call fcn.1008e2b2
call fcn.1008e2b2
int3