Function at 0x4b1100
Capabilities:
Contain obfuscated stackstrings

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff0
sub esp, 0x90
mov edx, dword [ebp + 0x14]
movsd xmm1, qword [ebp + 0xc]
xor eax, eax
cmp edx, 2
setb cl
cmp byte [ebp + 0x1c], 0
je 0x4b112a
mov esi, dword [ebp + 0x18]
jmp 0x4b1133
mov al, cl
lea esi, [eax*4 + 2]
mov edi, dword [ebp + 8]
ucomisd xmm1, xmm1
jp 0x4b1542
movapd xmm0, xmmword [0x5169d0]
andpd xmm0, xmm1
ucomisd xmm0, qword [0x5169e0]
jb 0x4b1193
movsd qword [esp + 0x60], xmm1
mov esi, dword [esp + 0x64]
test esi, esi
mov ecx, str._INF
mov eax, 0x5169f9
cmovs eax, ecx
shr esi, 0x1f
add esi, 3
mov edx, dword [edi + 0xc]
mov ecx, dword [edi + 0x10]
sub edx, ecx
cmp esi, edx
jbe 0x4b122c
mov ecx, edi
push esi
push eax
call fcn.0046b680
jmp 0x4b14d6
cmp edx, 1
mov eax, 0x45
mov ecx, 0x66
cmove ecx, eax
test edx, edx
mov ebx, 0x65
cmovne ebx, ecx
lea eax, [esp + 0x14]
mov dword [esp + 8], eax
mov dword [esp + 0xc], 0
mov dword [esp + 0x10], 8
xorpd xmm0, xmm0
movupd xmmword [esp + 0x40], xmm0
mov byte [esp + 0x50], 0
mov dword [esp + 0x54], 0
mov dword [esp + 0x58], 1
mov eax, dword [0x513c00]
add eax, 8
mov dword [esp + 0x3c], eax
lea eax, [esp + 8]
mov dword [esp + 0x5c], eax
lea edi, [esp + 0x3c]
mov ecx, edi
push 0
push 0
push 0
call fcn.0046ab90
mov ecx, dword [esp + 0x48]
mov eax, dword [esp + 0x4c]
sub ecx, eax
cmp ecx, 1
ja 0x4b123f
lea ecx, [esp + 0x3c]
push 2
push 0x5169fd
call fcn.0046b680
mov edi, eax
jmp 0x4b1249
push esi
push eax
push ecx
call sub.api_ms_win_crt_private_l1_1_0.dll_memcpy
add esp, 0xc
add dword [edi + 0x10], esi
jmp 0x4b14d6
mov word [eax], 0x2e25
add dword [esp + 0x4c], 2
mov ecx, edi
push esi
call fcn.0046abd0
mov ecx, dword [eax + 0x10]
cmp ecx, dword [eax + 0xc]
jae 0x4b1263
lea edx, [ecx + 1]
mov dword [eax + 0x10], edx
mov byte [ecx], bl
jmp 0x4b126e
movzx edx, bl
mov ecx, eax
push edx
call fcn.0046b5f0
movsd xmm1, qword [ebp + 0xc]
mov eax, dword [ebp + 0x14]
cmp eax, 1
mov ebx, dword [ebp + 8]
ja 0x4b12e2
xorpd xmm0, xmm0
ucomisd xmm1, xmm0
movsd qword [esp + 0x68], xmm1
jne 0x4b135e
jp 0x4b135e
cmp dword [esp + 0x6c], 0
jns 0x4b135e
mov word [esp + 0x28], 0x30
mov dword [esp + 0x24], 0x302b6530
mov dword [esp + 0x20], 0x30303030
mov dword [esp + 0x1c], 0x302e302d
cmp eax, 1
jne 0x4b12d9
lea esi, [esp + 0x1c]
push esi
call sub.api_ms_win_crt_string_l1_1_0.dll_strlen
add esp, 4
mov byte [eax + esi - 4], 0x45
lea esi, [esp + 0x1c]
jmp 0x4b13ee
cmp eax, 3
jne 0x4b13ad
mulsd xmm1, qword [0x5169e8]
mov eax, dword [esp + 0xc]
lea edx, [eax + 1]
cmp edx, dword [esp + 0x10]
ja 0x4b151c
mov ecx, dword [esp + 8]
mov byte [ecx + eax], 0
mov eax, dword [esp + 8]
sub esp, 0x14
movsd qword [esp + 0xc], xmm1
mov dword [esp + 8], eax
lea esi, [esp + 0x30]
mov dword [esp], esi
mov dword [esp + 4], 0x20
call fcn.004b1fd0
add esp, 0x14
push esi
call sub.api_ms_win_crt_string_l1_1_0.dll_strlen
add esp, 4
mov edx, dword [ebx + 0xc]
mov ecx, dword [ebx + 0x10]
sub edx, ecx
cmp eax, edx
jbe 0x4b1486
mov ecx, ebx
push eax
push esi
call fcn.0046b680
mov ecx, dword [ebx + 0x10]
jmp 0x4b149f
mov eax, dword [esp + 0xc]
lea edx, [eax + 1]
cmp edx, dword [esp + 0x10]
ja 0x4b14fd
mov ecx, dword [esp + 8]
mov byte [ecx + eax], 0
mov eax, dword [esp + 8]
sub esp, 0x14
movsd qword [esp + 0xc], xmm1
mov dword [esp + 8], eax
lea esi, [esp + 0x30]
mov dword [esp], esi
mov dword [esp + 4], 0x20
call fcn.004b1fd0
add esp, 0x14
cmp eax, 0x1e
jbe 0x4b142e
movsd xmm1, qword [ebp + 0xc]
mov eax, dword [esp + 0xc]
lea edx, [eax + 1]
cmp edx, dword [esp + 0x10]
ja 0x4b14de
mov ecx, dword [esp + 8]
mov byte [ecx + eax], 0
mov eax, dword [esp + 8]
sub esp, 0x14
movsd qword [esp + 0xc], xmm1
mov dword [esp + 8], eax
lea esi, [esp + 0x30]
mov dword [esp], esi
mov dword [esp + 4], 0x20
call fcn.004b1fd0
add esp, 0x14
push esi
call sub.api_ms_win_crt_string_l1_1_0.dll_strlen
add esp, 4
mov edx, dword [ebx + 0xc]
mov ecx, dword [ebx + 0x10]
sub edx, ecx
cmp eax, edx
jbe 0x4b1411
mov ecx, ebx
push eax
push esi
call fcn.0046b680
jmp 0x4b14b8
test eax, eax
je 0x4b14b8
push eax
push esi
push ecx
mov esi, eax
call sub.api_ms_win_crt_private_l1_1_0.dll_memcpy
add esp, 0xc
add dword [ebx + 0x10], esi
jmp 0x4b14b8
cmp eax, 5
jb 0x4b13ee
movzx ecx, byte [eax + esi - 5]
or ecx, 0x20
cmp ecx, 0x65
jne 0x4b13ee
cmp byte [eax + esi - 3], 0x30
jne 0x4b13ee
movzx ecx, byte [eax + esi - 4]
cmp ecx, 0x2d
je 0x4b1456
cmp ecx, 0x2b
jne 0x4b13ee
movzx ecx, byte [eax + esi - 2]
lea edx, [ecx - 0x30]
cmp edx, 9
ja 0x4b13ee
movzx edx, byte [eax + esi - 1]
lea edi, [edx - 0x30]
cmp edi, 9
ja 0x4b13ee
mov byte [esp + eax + 0x19], cl
mov byte [esp + eax + 0x1a], dl
mov byte [esp + eax + 0x1b], 0
jmp 0x4b13ee
test eax, eax
je 0x4b149f
push eax
push esi
push ecx
mov esi, eax
call sub.api_ms_win_crt_private_l1_1_0.dll_memcpy
add esp, 0xc
mov ecx, dword [ebx + 0x10]
add ecx, esi
mov dword [ebx + 0x10], ecx
cmp ecx, dword [ebx + 0xc]
jae 0x4b14af
lea eax, [ecx + 1]
mov dword [ebx + 0x10], eax
mov byte [ecx], 0x25
jmp 0x4b14b8
mov ecx, ebx
push 0x25
call fcn.0046b5f0
lea ecx, [esp + 0x3c]
call fcn.0046d8e0
mov eax, dword [esp + 8]
lea ecx, [esp + 0x14]
cmp eax, ecx
je 0x4b14d6
push eax
call sub.api_ms_win_crt_heap_l1_1_0.dll_free
add esp, 4
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
lea ecx, [esp + 8]
push 1
push edx
lea eax, [esp + 0x1c]
push eax
call fcn.0046e2c0
movsd xmm1, qword [ebp + 0xc]
mov eax, dword [esp + 0xc]
jmp 0x4b13be
lea ecx, [esp + 8]
push 1
push edx
lea eax, [esp + 0x1c]
push eax
call fcn.0046e2c0
movsd xmm1, qword [ebp + 0xc]
mov eax, dword [esp + 0xc]
jmp 0x4b136f
lea ecx, [esp + 8]
push 1
push edx
lea eax, [esp + 0x1c]
push eax
movapd xmmword [esp + 0x7c], xmm1
call fcn.0046e2c0
movapd xmm1, xmmword [esp + 0x70]
mov eax, dword [esp + 0xc]
jmp 0x4b1304
mov edx, dword [edi + 0xc]
mov ecx, edi
mov eax, dword [edi + 0x10]
sub edx, eax
cmp edx, 2
ja 0x4b1562
push 3
push 0x5169f0
call fcn.0046b680
jmp 0x4b14d6
mov byte [eax + 2], 0x6e
mov word [eax], 0x616e
add dword [ecx + 0x10], 3
jmp 0x4b14d6