Function at 0x1003abc0
Capabilities:
Contain obfuscated stackstrings

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x100cbe81
mov eax, dword fs:[0]
push eax
sub esp, 0xbe0
mov eax, dword [0x1010d03c]
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.1001eed0
xorps xmm0, xmm0
lea edi, [esi + 0x18]
push edi
lea ecx, [ebp - 0xb80]
movups xmmword [ebp - 0xb80], xmm0
call fcn.1001eed0
mov eax, dword [ebp - 0xb80]
cmp eax, dword [ebp - 0xa4c]
jl 0x1003c109
jg 0x1003ac84
mov eax, dword [ebp - 0xb7c]
cmp eax, dword [ebp - 0xa48]
jl 0x1003c109
jg 0x1003ac84
mov eax, dword [ebp - 0xb78]
cmp eax, dword [ebp - 0xa44]
jl 0x1003c109
jg 0x1003ac84
mov eax, dword [ebp - 0xb74]
cmp eax, dword [ebp - 0xa40]
jle 0x1003c109
push 0x800
lea eax, [ebp - 0xa18]
push 0
push eax
call fcn.10096b80
lea eax, [ebp - 0xa30]
push eax
call fcn.10023e70
add esp, 0x10
mov dword [ebp - 4], 0
cmp dword [eax + 0x14], 8
jb 0x1003acb5
mov eax, dword [eax]
push eax
lea eax, [ebp - 0xa18]
push 0x400
push eax
call fcn.1009ba85
add esp, 0xc
mov dword [ebp - 4], 1
mov edx, dword [ebp - 0xa1c]
cmp edx, 8
jb 0x1003ad11
mov ecx, dword [ebp - 0xa30]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x1003ad07
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003c128
push edx
push ecx
call fcn.1009441c
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 0x100e94b0
push eax
call esi
push 0x100ea52c
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 0x1003ad8a
mov dword [ebp - 0xb68], 1
jmp 0x1003bb01
push str.ExtractArchive
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [ebp - 0xbb4], eax
test eax, eax
jne 0x1003adaf
mov dword [ebp - 0xb68], 2
jmp 0x1003baf5
push edi
lea eax, [ebp - 0xa30]
push 0x100eebb4
push eax
call fcn.10004d00
add esp, 0xc
mov dword [ebp - 4], 5
mov edx, dword [ebp - 0xa1c]
cmp edx, 8
jb 0x1003ae0b
mov ecx, dword [ebp - 0xa30]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x1003ae01
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003c12d
push edx
push ecx
call fcn.1009441c
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 0x100eeb9c
push eax
call fcn.10004d00
add esp, 0xc
mov dword [ebp - 4], 9
mov edx, dword [ebp - 0xa1c]
cmp edx, 8
jb 0x1003ae94
mov ecx, dword [ebp - 0xa30]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x1003ae8a
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003c132
push edx
push ecx
call fcn.1009441c
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.10004d00
add esp, 0xc
mov dword [ebp - 4], 0xd
mov edx, dword [ebp - 0xa1c]
cmp edx, 8
jb 0x1003af17
mov ecx, dword [ebp - 0xa30]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x1003af0d
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003c137
push edx
push ecx
call fcn.1009441c
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.10096b80
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 0x1003afa0
sub ecx, edx
lea eax, [ebp - 0x218]
sar ecx, 1
push ecx
push eax
lea ecx, [ebp - 0xa84]
call fcn.10004af0
lea ecx, [ebp - 0xa84]
mov dword [ebp - 4], 0x11
call fcn.10004ad0
mov esi, eax
cmp dword [eax + 0x14], 8
jb 0x1003afde
mov esi, dword [eax]
mov eax, dword [eax + 0x10]
mov dword [ebp - 0xa88], 0xffffffff
test eax, eax
je 0x1003b02b
dec eax
mov dword [ebp - 0xa3c], eax
lea eax, [ebp - 0xa3c]
push eax
lea eax, [ebp - 0xa88]
push eax
call fcn.10004ce0
add esp, 8
mov eax, dword [eax]
cmp word [esi + eax*2], 0x5c
lea eax, [esi + eax*2]
je 0x1003b025
cmp eax, esi
je 0x1003b02b
sub eax, 2
cmp word [eax], 0x5c
jne 0x1003b018
sub eax, esi
sar eax, 1
jmp 0x1003b02e
or eax, 0xffffffff
inc eax
lea ecx, [ebp - 0xa84]
push eax
push 0
lea eax, [ebp - 0xa30]
push eax
call fcn.1000d2e0
mov esi, eax
lea eax, [ebp - 0xa84]
mov byte [ebp - 4], 0x12
cmp eax, esi
je 0x1003b085
mov ecx, eax
call fcn.100048a0
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 0x1003b0c9
mov ecx, dword [ebp - 0xa30]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x1003b0bf
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003c13c
push edx
push ecx
call fcn.1009441c
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.10004dd0
add esp, 0xc
mov byte [ebp - 4], 0x17
mov eax, edi
cmp dword [edi + 0x14], 8
jb 0x1003b113
mov eax, dword [edi]
push dword [edi + 0x10]
lea ecx, [ebp - 0xa54]
push eax
call fcn.10005970
lea eax, [ebp - 0xa54]
push eax
call fcn.1000f0b0
lea eax, [ebp - 0xa54]
push eax
call fcn.1000f520
lea eax, [ebp - 0xa54]
push eax
lea eax, [ebp - 0xa30]
push str.S_:
push eax
call fcn.10004d00
add esp, 0x14
mov byte [ebp - 4], 0x18
mov edx, dword [ebp - 0xa1c]
cmp edx, 8
jb 0x1003b199
mov ecx, dword [ebp - 0xa30]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x1003b18f
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003c141
push edx
push ecx
call fcn.1009441c
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.10006950
lea eax, [ebp - 0xa84]
mov byte [ebp - 4], 0x1c
push eax
lea ecx, [ebp - 0xaa0]
call fcn.10006950
push 0x28
push str.UpgradeTemp_tmp_download_2345Service.dat
lea ecx, [ebp - 0xa6c]
mov byte [ebp - 4], 0x1d
call fcn.10005970
push 0xb
push str.UpgradeTemp
lea ecx, [ebp - 0xaa0]
call fcn.10005970
lea eax, [ebp - 0xaa0]
push eax
call fcn.1000f0b0
lea eax, [ebp - 0xaa0]
push eax
call fcn.1000f520
lea eax, [ebp - 0xaa0]
push eax
lea eax, [ebp - 0xb98]
push 0x100eec5c
push eax
call fcn.10004d00
add esp, 0x14
mov byte [ebp - 4], 0x1e
mov edx, dword [ebp - 0xb84]
cmp edx, 8
jb 0x1003b281
mov ecx, dword [ebp - 0xb98]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x1003b277
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003c146
push edx
push ecx
call fcn.1009441c
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 0x1003b2e0
sub ecx, esi
sar ecx, 1
push ecx
push edx
lea ecx, [ebp - 0xa30]
call fcn.10004af0
mov esi, dword [ebp - 0xb70]
lea edx, [esi + 0x30]
mov byte [ebp - 4], 0x22
cmp dword [edx + 0x14], 8
jb 0x1003b311
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 0x1003b350
sub ecx, dword [ebp - 0xa88]
sar ecx, 1
push ecx
push edx
lea ecx, [ebp - 0xb98]
call fcn.10004af0
lea ecx, [ebp - 0xb60]
mov byte [ebp - 4], 0x23
call fcn.100463e0
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.10004af0
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.10004af0
lea ecx, [ebp - 0xa3c]
mov dword [ebp - 0xa3c], 0
call fcn.10046480
sub esp, 0xc
mov byte [ebp - 4], 0x25
lea eax, [ebp - 0xb60]
lea ecx, [ebp - 0xa3c]
push eax
call fcn.10046590
lea ecx, [ebp - 0xa3c]
mov byte [ebp - 0xb61], al
mov byte [ebp - 4], 0x24
call fcn.10046500
lea ecx, [ebp - 0xb60]
mov byte [ebp - 4], 0x23
call fcn.1003c1b0
cmp byte [ebp - 0xb61], 0
sete byte [ebp - 0xb61]
mov byte [ebp - 4], 0x26
mov edx, dword [ebp - 0xb84]
cmp edx, 8
jb 0x1003b473
mov ecx, dword [ebp - 0xb98]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x1003b469
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003c14b
push edx
push ecx
call fcn.1009441c
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 0x1003b4d4
mov ecx, dword [ebp - 0xa30]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x1003b4ca
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003c150
push edx
push ecx
call fcn.1009441c
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 0x1003b697
mov dword [ebp - 0xb68], 3
mov byte [ebp - 4], 0x2e
mov edx, dword [ebp - 0xa8c]
cmp edx, 8
jb 0x1003b54f
mov ecx, dword [ebp - 0xaa0]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x1003b545
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003c155
push edx
push ecx
call fcn.1009441c
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 0x1003b5b0
mov ecx, dword [ebp - 0xa6c]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x1003b5a6
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003c15a
push edx
push ecx
call fcn.1009441c
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 0x1003b611
mov ecx, dword [ebp - 0xa54]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x1003b607
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003c15f
push edx
push ecx
call fcn.1009441c
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 0x1003b675
mov ecx, dword [ebp - 0xa84]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x1003b66b
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003c164
push edx
push ecx
call fcn.1009441c
add esp, 8
xor eax, eax
mov dword [ebp - 0xa74], 0
mov dword [ebp - 0xa70], 7
mov word [ebp - 0xa84], ax
jmp 0x1003baee
lea eax, [ebp - 0xa6c]
push eax
push esi
call fcn.1003c340
test al, al
jne 0x1003b842
mov dword [ebp - 0xb68], 4
mov byte [ebp - 4], 0x3e
mov edx, dword [ebp - 0xa8c]
cmp edx, 8
jb 0x1003b6fa
mov ecx, dword [ebp - 0xaa0]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x1003b6f0
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003c169
push edx
push ecx
call fcn.1009441c
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 0x1003b75b
mov ecx, dword [ebp - 0xa6c]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x1003b751
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003c16e
push edx
push ecx
call fcn.1009441c
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 0x1003b7bc
mov ecx, dword [ebp - 0xa54]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x1003b7b2
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003c173
push edx
push ecx
call fcn.1009441c
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 0x1003b820
mov ecx, dword [ebp - 0xa84]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x1003b816
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003c178
push edx
push ecx
call fcn.1009441c
add esp, 8
xor eax, eax
mov dword [ebp - 0xa74], 0
mov dword [ebp - 0xa70], 7
mov word [ebp - 0xa84], ax
jmp 0x1003baee
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 method.ATL::CAcl::CAce.virtual_16
cmovae eax, dword [ebp - 0xa6c]
push 1
push 0
push ecx
push eax
call dword [ebp - 0xbb4]
add esp, 0x18
test eax, eax
jne 0x1003b94e
lea eax, [ebp - 0xa84]
push eax
lea ecx, [ebp - 0xa30]
call fcn.10006950
push 0xa
push str.config.ini
lea ecx, [ebp - 0xa30]
mov byte [ebp - 4], 0x4e
call fcn.10005970
cmp dword [ebp - 0xa1c], 8
lea eax, [ebp - 0xa30]
mov ecx, edi
cmovae eax, dword [ebp - 0xa30]
cmp dword [edi + 0x14], 8
jb 0x1003b8ce
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 0x1003b92b
mov ecx, dword [ebp - 0xa30]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x1003b921
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003c17d
push edx
push ecx
call fcn.1009441c
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 0x1003b958
mov dword [ebp - 0xb68], 5
lea eax, [ebp - 0xaa0]
push eax
call fcn.1000f0b0
add esp, 4
mov byte [ebp - 4], 0x53
mov edx, dword [ebp - 0xa8c]
cmp edx, 8
jb 0x1003b9ab
mov ecx, dword [ebp - 0xaa0]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x1003b9a1
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003c182
push edx
push ecx
call fcn.1009441c
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 0x1003ba0c
mov ecx, dword [ebp - 0xa6c]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x1003ba02
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003c187
push edx
push ecx
call fcn.1009441c
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 0x1003ba6d
mov ecx, dword [ebp - 0xa54]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x1003ba63
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003c18c
push edx
push ecx
call fcn.1009441c
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 0x1003bad1
mov ecx, dword [ebp - 0xa84]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x1003bac7
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003c191
push edx
push ecx
call fcn.1009441c
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.100358f0
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 0x1010db4c
call fcn.10006950
mov byte [ebp - 4], 0x66
lea ecx, [ebp - 0xa30]
mov byte [ebp - 4], 0x65
call fcn.10025170
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.10036100
add esp, 8
mov byte [ebp - 4], 0x69
lea ecx, [ebp - 0xab8]
push eax
mov dword [ebp - 0xac0], str.uuid
call fcn.10036930
lea eax, [ebp - 0xac0]
mov byte [ebp - 4], 0x6a
push eax
lea ecx, [ebp - 0xa38]
call fcn.10036dd0
push eax
add eax, 0x10
push eax
push ecx
lea eax, [ebp - 0xb78]
push eax
lea ecx, [ebp - 0xa38]
call fcn.10036ac0
lea ecx, [ebp - 0xab8]
mov byte [ebp - 4], 0x6c
call fcn.10031920
lea ecx, [ebp - 0xbb0]
mov byte [ebp - 4], 0x6d
call fcn.10031920
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 0x1003bc52
mov ecx, dword [ebp - 0xa30]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x1003bc48
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003c196
push edx
push ecx
call fcn.1009441c
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 0x1010db4c
call fcn.10006950
mov byte [ebp - 4], 0x72
lea ecx, [ebp - 0xb98]
mov byte [ebp - 4], 0x65
call fcn.10025360
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.10036100
add esp, 8
mov byte [ebp - 4], 0x75
lea ecx, [ebp - 0xbe4]
push eax
mov dword [ebp - 0xbec], str.uuid2
call fcn.10036930
lea eax, [ebp - 0xbec]
mov byte [ebp - 4], 0x76
push eax
lea ecx, [ebp - 0xa38]
call fcn.10036dd0
push eax
add eax, 0x10
push eax
push ecx
lea eax, [ebp - 0xb78]
push eax
lea ecx, [ebp - 0xa38]
call fcn.10036ac0
lea ecx, [ebp - 0xbe4]
mov byte [ebp - 4], 0x78
call fcn.10031920
lea ecx, [ebp - 0xab8]
mov byte [ebp - 4], 0x79
call fcn.10031920
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 0x1003bd94
mov ecx, dword [ebp - 0xb98]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x1003bd8a
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003c19b
push edx
push ecx
call fcn.1009441c
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.100359c0
push eax
mov edx, str.ssj01
mov byte [ebp - 4], 0x7f
lea ecx, [ebp - 0xab0]
call fcn.10035cd0
add esp, 0xc
push eax
lea ecx, [ebp - 0xa38]
mov byte [ebp - 4], 0x80
call fcn.10036d00
push eax
add eax, 0x10
push eax
push ecx
lea eax, [ebp - 0xb78]
push eax
lea ecx, [ebp - 0xa38]
call fcn.10036ac0
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.1003c530
add esp, 8
mov byte [ebp - 4], 0x89
lea ecx, [ebp - 0xbe4]
push eax
mov dword [ebp - 0xbec], str.oldver
call fcn.10036930
mov byte [ebp - 4], 0x8a
lea eax, [ebp - 0xbec]
push eax
lea ecx, [ebp - 0xa38]
call fcn.10036dd0
push eax
add eax, 0x10
push eax
push ecx
lea eax, [ebp - 0xb78]
push eax
lea ecx, [ebp - 0xa38]
call fcn.10036ac0
lea ecx, [ebp - 0xbe4]
mov byte [ebp - 4], 0x8c
call fcn.10031920
lea ecx, [ebp - 0xbb0]
mov byte [ebp - 4], 0x8d
call fcn.10031920
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.1003c530
add esp, 8
mov byte [ebp - 4], 0x8f
lea ecx, [ebp - 0xbe4]
push eax
mov dword [ebp - 0xbec], str.newver
call fcn.10036930
lea eax, [ebp - 0xbec]
mov byte [ebp - 4], 0x90
push eax
lea ecx, [ebp - 0xa38]
call fcn.10036dd0
push eax
add eax, 0x10
push eax
push ecx
lea eax, [ebp - 0xb78]
push eax
lea ecx, [ebp - 0xa38]
call fcn.10036ac0
lea ecx, [ebp - 0xbe4]
mov byte [ebp - 4], 0x92
call fcn.10031920
lea ecx, [ebp - 0xbb0]
mov byte [ebp - 4], 0x93
call fcn.10031920
lea eax, [ebp - 0xa64]
mov byte [ebp - 4], 0x65
push eax
call esi
lea edx, [ebp - 0xa38]
lea ecx, [ebp - 0xad8]
call fcn.100299d0
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.10025f50
mov byte [ebp - 4], 0x97
mov edx, dword [ebp - 0xa1c]
cmp edx, 8
jb 0x1003c04a
mov ecx, dword [ebp - 0xa30]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x1003c040
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003c1a0
push edx
push ecx
call fcn.1009441c
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 0x1003c0ab
mov ecx, dword [ebp - 0xad8]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x1003c0a1
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003c1a5
push edx
push ecx
call fcn.1009441c
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.10034f00
push 0x58
push dword [ebp - 0xa38]
call fcn.1009441c
mov al, byte [ebp - 0xb62]
add esp, 8
mov dword [ebp - 4], 0xffffffff
jmp 0x1003c10b
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.10093f25
mov esp, ebp
pop ebp
ret 4
call fcn.1009ba34
call fcn.1009ba34
call fcn.1009ba34
call fcn.1009ba34
call fcn.1009ba34
call fcn.1009ba34
call fcn.1009ba34
call fcn.1009ba34
call fcn.1009ba34
call fcn.1009ba34
call fcn.1009ba34
call fcn.1009ba34
call fcn.1009ba34
call fcn.1009ba34
call fcn.1009ba34
call fcn.1009ba34
call fcn.1009ba34
call fcn.1009ba34
call fcn.1009ba34
call fcn.1009ba34
call fcn.1009ba34
call fcn.1009ba34
call fcn.1009ba34
call fcn.1009ba34
call fcn.1009ba34
call fcn.1009ba34
int3