Function at 0x47e5e0
Capabilities:
Contain obfuscated stackstrings
Link many functions at runtime

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x13c
mov eax, dword [0x57d54c]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
push esi
push edi
mov dword [ebp - 0x138], ecx
mov ebx, 3
mov dword [ebp - 0x124], 0x104
mov dword [ebp - 0x128], 1
mov dword [ebp - 0x134], 0
mov dword [ebp - 0x130], 0
mov dword [ebp - 0x12c], 0
call fcn.00415220
mov edi, dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov esi, eax
mov eax, dword [esi + 4]
test eax, eax
je 0x47e66c
lea ecx, [ebp - 0x18]
mov dword [ebp - 0x18], 0x4f676552
push ecx
push eax
mov dword [ebp - 0x14], 0x4b6e6570
mov dword [ebp - 0x10], 0x78457965
mov word [ebp - 0xc], 0x41
call edi
mov dword [esi + 0x2c], eax
lea eax, [ebp - 0x134]
push eax
mov eax, dword [esi + 0x2c]
push 0x20019
push 0
push str.SystemCurrentControlSetControlNetwork4D36E972_E325_11CE_BFC1_08002BE10318
push reloc.WS2_32.dll_bind
call eax
test eax, eax
jne 0x47e8db
push dword [ebp - 0x138]
lea eax, [ebp - 0x120]
push str._sConnection
push 0xffffffffffffffff
push 0x103
push eax
call fcn.004208d0
mov eax, dword [ebp - 0x134]
add esp, 0x14
mov dword [ebp - 0x138], eax
call fcn.00415220
mov esi, eax
mov eax, dword [esi + 4]
test eax, eax
je 0x47e6f1
lea ecx, [ebp - 0x18]
mov dword [ebp - 0x18], 0x4f676552
push ecx
push eax
mov dword [ebp - 0x14], 0x4b6e6570
mov dword [ebp - 0x10], 0x78457965
mov word [ebp - 0xc], 0x41
call edi
mov dword [esi + 0x2c], eax
lea eax, [ebp - 0x130]
push eax
push 0x20019
push 0
lea eax, [ebp - 0x120]
push eax
push dword [ebp - 0x138]
mov eax, dword [esi + 0x2c]
call eax
test eax, eax
jne 0x47e897
mov eax, dword [ebp - 0x130]
mov dword [ebp - 0x128], 4
mov dword [ebp - 0x124], 4
mov dword [ebp - 0x138], eax
call fcn.00415220
mov esi, eax
mov eax, dword [esi + 4]
test eax, eax
je 0x47e760
movaps xmm0, xmmword [0x5659d0]
lea ecx, [ebp - 0x18]
push ecx
push eax
movups xmmword [ebp - 0x18], xmm0
mov byte [ebp - 8], 0
call edi
mov dword [esi + 0x30], eax
lea eax, [ebp - 0x124]
push eax
lea eax, [ebp - 0x12c]
push eax
lea eax, [ebp - 0x128]
push eax
mov eax, dword [esi + 0x30]
push 0
push str.MediaSubType
push dword [ebp - 0x138]
call eax
test eax, eax
jne 0x47e853
push 0x104
push eax
lea eax, [ebp - 0x120]
mov dword [ebp - 0x128], 1
push eax
mov dword [ebp - 0x124], 0x103
call fcn.00504c70
add esp, 0xc
lea eax, [ebp - 0x124]
push eax
lea eax, [ebp - 0x120]
push eax
lea eax, [ebp - 0x128]
push eax
push ecx
push str.PnpInstanceID
push dword [ebp - 0x130]
call fcn.00415220
mov ecx, eax
call fcn.004592c0
test eax, eax
jne 0x47e853
mov eax, dword [ebp - 0x12c]
cmp eax, 1
jne 0x47e844
push 3
lea eax, [ebp - 0x120]
push 0x565880
push eax
call fcn.0051a090
add esp, 0xc
test eax, eax
jne 0x47e812
xor ebx, ebx
jmp 0x47e853
mov eax, dword [ebp - 0x12c]
cmp eax, 1
jne 0x47e844
push 3
lea eax, [ebp - 0x120]
push 0x565880
push eax
call fcn.0051a090
add esp, 0xc
test eax, eax
je 0x47e83e
mov ebx, 2
jmp 0x47e853
mov eax, dword [ebp - 0x12c]
xor ebx, ebx
cmp eax, 2
setne bl
lea ebx, [ebx*2 + 1]
mov eax, dword [ebp - 0x130]
mov dword [ebp - 0x138], eax
call fcn.00415220
mov esi, eax
mov eax, dword [esi + 4]
test eax, eax
je 0x47e88c
lea ecx, [ebp - 0x14]
mov dword [ebp - 0x14], 0x43676552
push ecx
push eax
mov dword [ebp - 0x10], 0x65736f6c
mov dword [ebp - 0xc], 0x79654b
call edi
mov dword [esi + 0x34], eax
push dword [ebp - 0x138]
mov eax, dword [esi + 0x34]
call eax
mov eax, dword [ebp - 0x134]
mov dword [ebp - 0x138], eax
call fcn.00415220
mov esi, eax
mov eax, dword [esi + 4]
test eax, eax
je 0x47e8d0
lea ecx, [ebp - 0x14]
mov dword [ebp - 0x14], 0x43676552
push ecx
push eax
mov dword [ebp - 0x10], 0x65736f6c
mov dword [ebp - 0xc], 0x79654b
call edi
mov dword [esi + 0x34], eax
push dword [ebp - 0x138]
mov ecx, dword [esi + 0x34]
call ecx
mov eax, ebx
mov ecx, dword [ebp - 4]
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.00501e95
mov esp, ebp
pop ebp
ret