Function at 0x10013c50
Capabilities:
Contain obfuscated stackstrings

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x10015a8b
mov eax, dword fs:[0]
push eax
sub esp, 0x134
mov eax, dword [0x1001d0f0]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov byte [ebp - 0xfd], 0
xor eax, eax
jmp 0x10013c90
mov cl, byte [eax*4 + str.SOFTWAREMicrosoftWindowsCurrentVersion]
mov byte [eax + 0x10020b98], cl
inc eax
cmp eax, 0xc8
jl 0x10013c90
xor eax, eax
jmp 0x10013cb0
mov dl, byte [eax*4 + str.SOFTWAREMicrosoftWindows_NTCurrentVersion]
mov byte [eax + 0x10020c60], dl
inc eax
cmp eax, 0xc8
jl 0x10013cb0
xor eax, eax
jmp 0x10013cd0
mov cl, byte [eax*4 + str.HARDWAREDESCRIPTIONSystemBIOS]
mov byte [eax + 0x10020f80], cl
inc eax
cmp eax, 0xc8
jl 0x10013cd0
xor eax, eax
jmp 0x10013cf0
mov dl, byte [eax*4 + str.ProductId]
mov byte [eax + 0x10020d28], dl
inc eax
cmp eax, 0xc8
jl 0x10013cf0
mov edi, 0x72
mov edx, 0x64
mov esi, 0x65
mov dword [0x10021454], edi
mov dword [0x10021450], 0x6f
mov dword [0x1002144c], edx
mov dword [0x10021448], 0x6e
mov dword [0x10021444], esi
mov dword [0x10021440], 0x56
mov dword [0x1002143c], 0x53
mov dword [0x10021438], 0x4f
mov dword [0x10021434], 0x49
mov dword [0x10021430], 0x42
xor eax, eax
mov edi, edi
mov cl, byte [eax*4 + 0x10021430]
mov byte [eax + 0x10021750], cl
inc eax
cmp eax, 0xc8
jl 0x10013d70
mov eax, 0x6c
mov dword [0x10021064], eax
mov dword [0x1002105c], eax
mov dword [0x10021058], eax
mov eax, 0x61
mov dword [0x10021054], eax
mov dword [0x1002104c], eax
mov dword [0x10021068], 0x73
mov dword [0x10021060], esi
mov dword [0x10021050], edi
mov dword [0x10021048], 0x50
xor eax, eax
lea ebx, [ebx]
mov cl, byte [eax*4 + 0x10021048]
mov byte [eax + 0x10021368], cl
inc eax
cmp eax, 0xc8
jl 0x10013dd0
mov al, 0x33
mov bl, 0x32
mov cl, 0x36
mov byte [ebp - 0x29], al
mov byte [ebp - 0x36], al
mov byte [ebp - 0x42], al
mov byte [ebp - 0x30], al
mov byte [ebp - 0x32], al
mov byte [ebp - 0x39], 0x31
mov byte [ebp - 0x3b], al
mov byte [ebp - 0x34], al
mov byte [ebp - 0x43], cl
mov byte [ebp - 0x23], 0x30
mov byte [ebp - 0x2d], dl
mov byte [ebp - 0x35], 0x37
mov byte [ebp - 0x38], al
mov byte [ebp - 0x3d], dl
mov byte [ebp - 0x2b], bl
mov byte [ebp - 0x31], al
mov byte [ebp - 0x40], al
mov byte [ebp - 0x3f], 0x34
mov byte [ebp - 0x33], 0x30
mov byte [ebp - 0x28], al
mov byte [ebp - 0x2f], 0x37
mov byte [ebp - 0x3e], bl
mov byte [ebp - 0x3a], al
mov byte [ebp - 0x41], 0x34
mov byte [ebp - 0x37], 0x37
mov byte [ebp - 0x2e], bl
mov byte [ebp - 0x27], 0x35
mov byte [ebp - 0x26], al
mov byte [ebp - 0x22], 0
mov byte [ebp - 0x3c], al
mov byte [ebp - 0x24], al
mov byte [ebp - 0x44], al
mov byte [ebp - 0x25], 0x31
mov byte [ebp - 0x2a], al
mov byte [ebp - 0x2c], al
mov byte [ebp - 0x54], al
mov byte [ebp - 0x60], al
mov byte [ebp - 0x64], al
mov byte [ebp - 0x5a], al
mov byte [ebp - 0x46], 0
mov byte [ebp - 0x62], bl
mov byte [ebp - 0x5c], al
mov byte [ebp - 0x53], 0x35
mov byte [ebp - 0x66], al
mov byte [ebp - 0x48], al
mov byte [ebp - 0x5f], 0x38
mov byte [ebp - 0x4b], cl
mov byte [ebp - 0x52], bl
mov byte [ebp - 0x56], al
mov byte [ebp - 0x5e], al
mov byte [ebp - 0x58], al
mov byte [ebp - 0x51], dl
mov byte [ebp - 0x50], al
mov byte [ebp - 0x4d], bl
mov byte [ebp - 0x57], 0x39
mov byte [ebp - 0x68], al
mov byte [ebp - 0x4f], bl
mov byte [ebp - 0x55], 0x35
mov byte [ebp - 0x47], 0x34
mov byte [ebp - 0x5d], 0x34
mov byte [ebp - 0x4e], al
mov byte [ebp - 0x63], 0x37
mov byte [ebp - 0x61], dl
mov byte [ebp - 0x67], al
mov byte [ebp - 0x49], 0x31
mov byte [ebp - 0x4c], al
mov byte [ebp - 0x65], al
mov byte [ebp - 0x59], 0x39
mov byte [ebp - 0x4a], al
mov byte [ebp - 0x5b], bl
mov byte [ebp - 0x6a], 0
mov byte [ebp - 0x89], 0x34
mov byte [ebp - 0x7a], al
mov byte [ebp - 0x7f], 0x37
mov byte [ebp - 0x70], al
mov byte [ebp - 0x6b], 0x30
mov byte [ebp - 0x84], al
mov byte [ebp - 0x88], al
mov byte [ebp - 0x81], cl
mov byte [ebp - 0x8b], cl
mov byte [ebp - 0x79], cl
mov byte [ebp - 0x18], cl
sub esp, 0x1c
mov ecx, esp
mov byte [ebp - 0x77], 0x34
mov byte [ebp - 0x75], dl
mov byte [ebp - 0x80], al
mov byte [ebp - 0x87], 0x30
mov byte [ebp - 0x6e], al
mov byte [ebp - 0x71], al
mov byte [ebp - 0x8c], al
mov byte [ebp - 0x83], bl
mov byte [ebp - 0x7c], al
mov byte [ebp - 0x86], bl
mov byte [ebp - 0x73], bl
mov byte [ebp - 0x74], al
mov byte [ebp - 0x82], al
mov byte [ebp - 0x7d], al
mov byte [ebp - 0x78], al
mov byte [ebp - 0x76], bl
mov byte [ebp - 0x7e], al
mov byte [ebp - 0x6d], 0x35
mov byte [ebp - 0x6f], 0x39
mov byte [ebp - 0x8a], al
mov byte [ebp - 0x72], al
mov byte [ebp - 0x7b], 0x30
mov byte [ebp - 0x6c], al
mov byte [ebp - 0x85], dl
mov byte [ebp - 0x17], 0x34
mov byte [ebp - 0x15], 0x37
mov byte [ebp - 0x16], 0x38
mov byte [ebp - 0x13], 0
mov byte [ebp - 0x14], 0x2d
lea edi, [ebp - 0x44]
mov dword [ecx + 0x18], 0xf
mov dword [ecx + 0x14], 0
mov dword [ebp - 0x104], esp
mov byte [ecx + 4], 0
lea esi, [edi + 1]
mov al, byte [edi]
inc edi
test al, al
jne 0x10013fa2
sub edi, esi
push edi
lea edx, [ebp - 0x44]
push edx
call fcn.10002d70
lea edi, [ebp - 0xc4]
call fcn.100137f0
add esp, 0x1c
push eax
lea ecx, [ebp - 0x18]
lea edi, [ebp - 0xa8]
mov dword [ebp - 4], 0
call fcn.10003560
add esp, 4
mov byte [ebp - 4], 2
cmp dword [ebp - 0xac], 0x10
jb 0x10013ff8
mov eax, dword [ebp - 0xc0]
push eax
call fcn.10004be1
add esp, 4
xor esi, esi
sub esp, 0x1c
mov eax, 0xf
mov edi, esp
mov dword [edi + 0x18], eax
mov dword [ebp - 0xac], eax
lea eax, [ebp - 0x68]
mov dword [edi + 0x14], esi
mov dword [ebp - 0xb0], esi
mov byte [ebp - 0xc0], 0
mov dword [ebp - 0x104], esp
mov byte [edi + 4], 0
lea edx, [eax + 1]
lea ecx, [ecx]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x10014030
sub eax, edx
push eax
lea ecx, [ebp - 0x68]
push ecx
mov ecx, edi
call fcn.10002d70
lea edi, [ebp - 0x120]
call fcn.100137f0
add esp, 0x1c
push eax
lea ecx, [ebp - 0x18]
lea edi, [ebp - 0xe0]
mov byte [ebp - 4], 3
call fcn.10003560
add esp, 4
mov byte [ebp - 4], 5
cmp dword [ebp - 0x108], 0x10
jb 0x10014085
mov edx, dword [ebp - 0x11c]
push edx
call fcn.10004be1
add esp, 4
sub esp, 0x1c
mov eax, 0xf
mov ecx, esp
mov byte [ebp - 0x1d], 0x34
mov byte [ebp - 0x1b], 0
mov byte [ebp - 0x20], 0x35
mov byte [ebp - 0x1f], bl
mov byte [ebp - 0x1c], 0x2d
mov byte [ebp - 0x1e], 0x37
mov dword [ecx + 0x18], eax
mov dword [ebp - 0x108], eax
lea eax, [ebp - 0x8c]
mov dword [ecx + 0x14], esi
mov dword [ebp - 0x10c], esi
mov byte [ebp - 0x11c], 0
mov dword [ebp - 0x104], esp
mov byte [ecx + 4], 0
lea edi, [eax + 1]
mov dl, byte [eax]
inc eax
test dl, dl
jne 0x100140d2
sub eax, edi
push eax
lea eax, [ebp - 0x8c]
push eax
call fcn.10002d70
lea edi, [ebp - 0x13c]
call fcn.100137f0
add esp, 0x1c
push eax
lea ecx, [ebp - 0x20]
lea edi, [ebp - 0xfc]
mov byte [ebp - 4], 6
call fcn.10003560
add esp, 4
mov byte [ebp - 4], 8
cmp dword [ebp - 0x124], 0x10
jb 0x10014128
mov ecx, dword [ebp - 0x138]
push ecx
call fcn.10004be1
add esp, 4
mov edi, 0xf
push 0x10020b98
mov edx, 0x10020a08
mov ecx, 0x10020d28
mov dword [ebp - 0x124], edi
mov dword [ebp - 0x128], esi
mov byte [ebp - 0x138], 0
call fcn.100135b0
add esp, 4
test al, al
je 0x100142fe
cmp byte [0x10020a08], 0x37
jne 0x100142b0
lea eax, [ebp - 0x18]
mov dword [ebp - 0xac], edi
mov dword [ebp - 0xb0], esi
mov byte [ebp - 0xc0], 0
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x10014185
sub eax, edx
push eax
lea edx, [ebp - 0x18]
push edx
lea ecx, [ebp - 0xc4]
call fcn.10002d70
sub esp, 0x1c
mov byte [ebp - 4], 9
mov ecx, esp
lea eax, [ebp - 0x44]
mov dword [ecx + 0x18], 0xf
mov dword [ecx + 0x14], 0
mov dword [ebp - 0x104], esp
mov byte [ecx + 4], 0
lea esi, [eax + 1]
mov dl, byte [eax]
inc eax
test dl, dl
jne 0x100141c5
sub eax, esi
push eax
lea eax, [ebp - 0x44]
push eax
call fcn.10002d70
lea edi, [ebp - 0x120]
call fcn.100137f0
add esp, 0x1c
push 0
push eax
or eax, 0xffffffff
lea esi, [ebp - 0xc4]
mov byte [ebp - 4], 0xa
call fcn.100025f0
cmp dword [ebp - 0x108], 0x10
jb 0x10014213
mov ecx, dword [ebp - 0x11c]
push ecx
call fcn.10004be1
add esp, 4
mov edi, dword [ebp - 0xac]
mov esi, dword [ebp - 0xc0]
mov eax, esi
cmp edi, 0x10
jae 0x1001422c
lea eax, [ebp - 0xc0]
mov bl, byte [0x10020a09]
mov edx, 0x10020a09
cmp bl, byte [eax]
jne 0x1001424d
mov cl, bl
lea ecx, [ecx]
test cl, cl
je 0x1001424d
mov cl, byte [edx + 1]
inc edx
inc eax
cmp cl, byte [eax]
je 0x10014240
movsx edx, byte [edx]
movsx eax, byte [eax]
sub edx, eax
jne 0x1001425e
mov byte [ebp - 0xfd], 1
cmp dword [ebp - 0x90], 0x10
mov eax, dword [ebp - 0xa4]
jae 0x10014273
lea eax, [ebp - 0xa4]
mov edx, 0x10020a09
cmp bl, byte [eax]
jne 0x1001428d
mov cl, bl
mov edi, edi
test cl, cl
je 0x1001428d
mov cl, byte [edx + 1]
inc edx
inc eax
cmp cl, byte [eax]
je 0x10014280
movsx ecx, byte [eax]
movsx edx, byte [edx]
sub edx, ecx
jne 0x1001429e
mov byte [ebp - 0xfd], 1
mov byte [ebp - 4], 8
cmp edi, 0x10
jb 0x100142b6
push esi
call fcn.10004be1
add esp, 4
mov bl, byte [0x10020a09]
cmp byte [0x10020a08], 0x35
jne 0x100142fe
cmp dword [ebp - 0x90], 0x10
mov eax, dword [ebp - 0xa4]
jae 0x100142d4
lea eax, [ebp - 0xa4]
mov edx, 0x10020a09
cmp bl, byte [eax]
jne 0x100142ed
mov cl, bl
nop
test cl, cl
je 0x100142ed
mov cl, byte [edx + 1]
inc edx
inc eax
cmp cl, byte [eax]
je 0x100142e0
movsx ecx, byte [edx]
movsx edx, byte [eax]
sub ecx, edx
jne 0x100142fe
mov byte [ebp - 0xfd], 1
push 0x10020c60
mov edx, 0x10020a08
mov ecx, 0x10020d28
call fcn.100135b0
add esp, 4
test al, al
je 0x100143e2
mov al, byte [0x10020a08]
cmp al, 0x37
jne 0x1001439d
mov eax, dword [ebp - 0x90]
mov esi, dword [ebp - 0xa4]
mov ecx, esi
cmp eax, 0x10
jae 0x1001433f
lea ecx, [ebp - 0xa4]
mov bl, byte [0x10020a09]
mov edi, 0x10020a09
cmp bl, byte [ecx]
jne 0x1001435d
mov dl, bl
test dl, dl
je 0x1001435d
mov dl, byte [edi + 1]
inc edi
inc ecx
cmp dl, byte [ecx]
je 0x10014350
movsx edx, byte [edi]
movsx ecx, byte [ecx]
sub edx, ecx
jne 0x1001436e
mov byte [ebp - 0xfd], 1
cmp eax, 0x10
mov eax, esi
jae 0x1001437b
lea eax, [ebp - 0xa4]
mov edx, 0x10020a09
cmp bl, byte [eax]
jne 0x10014393
mov cl, bl
test cl, cl
je 0x10014393
mov cl, byte [edx + 1]
inc edx
inc eax
cmp cl, byte [eax]
je 0x10014386
movsx eax, byte [eax]
movsx ecx, byte [edx]
sub ecx, eax
jmp 0x100143d9
cmp al, 0x35
jne 0x100143e2
cmp dword [ebp - 0x90], 0x10
mov ecx, dword [ebp - 0xa4]
jae 0x100143b6
lea ecx, [ebp - 0xa4]
mov al, byte [0x10020a09]
mov edx, 0x10020a09
cmp al, byte [ecx]
jne 0x100143d1
test al, al
je 0x100143d1
mov al, byte [edx + 1]
inc edx
inc ecx
cmp al, byte [ecx]
je 0x100143c4
movsx edx, byte [edx]
movsx eax, byte [ecx]
sub edx, eax
jne 0x100143e2
mov byte [ebp - 0xfd], 1
push 0x10020f80
mov edx, 0x10020a08
mov ecx, 0x10021750
call fcn.100135b0
add esp, 4
test al, al
je 0x10014458
push 9
mov edx, 0x10021368
mov ecx, 0x10020a08
call fcn.10017960
add esp, 4
test eax, eax
jne 0x1001441c
mov byte [ebp - 0xfd], 1
push 3
lea edx, [ebp - 0x104]
mov ecx, 0x10020a08
mov byte [ebp - 0x104], 0x58
mov byte [ebp - 0x103], 0x65
mov byte [ebp - 0x101], 0
mov byte [ebp - 0x102], 0x6e
call fcn.10017960
add esp, 4
test eax, eax
jne 0x10014458
mov byte [ebp - 0xfd], 1
mov esi, 0x10
cmp dword [ebp - 0xe4], esi
jb 0x10014474
mov ecx, dword [ebp - 0xf8]
push ecx
call fcn.10004be1
add esp, 4
xor edi, edi
mov ebx, 0xf
mov dword [ebp - 0xe4], ebx
mov dword [ebp - 0xe8], edi
mov byte [ebp - 0xf8], 0
cmp dword [ebp - 0xc8], esi
jb 0x100144a5
mov edx, dword [ebp - 0xdc]
push edx
call fcn.10004be1
add esp, 4
mov dword [ebp - 0xc8], ebx
mov dword [ebp - 0xcc], edi
mov byte [ebp - 0xdc], 0
cmp dword [ebp - 0x90], esi
jb 0x100144cf
mov eax, dword [ebp - 0xa4]
push eax
call fcn.10004be1
add esp, 4
mov al, byte [ebp - 0xfd]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.10004bec
mov esp, ebp
pop ebp
ret