Function at 0x496d80
Capabilities:
Get hostname
Hash data using sha256

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x5e2a13
mov eax, dword fs:[0]
push eax
sub esp, 0x12c
mov eax, dword [0x64006c]
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 eax, ecx
mov dword [ebp - 0x134], eax
mov dword [ebp - 0x130], eax
mov dword [ebp - 0x138], 0
mov dword [ebp - 0xc8], 0xf
mov dword [ebp - 0xcc], 0
mov byte [ebp - 0xdc], 0
push pe_nt_image_headers32
lea eax, [ebp - 0x12c]
mov dword [ebp - 4], 0
push 0
push eax
call fcn.0050ba40
xor eax, eax
mov dword [ebp - 0xc4], 0x10
add esp, 0xc
mov word [ebp - 0x50], ax
mov dword [ebp - 0x36], eax
xorps xmm0, xmm0
mov word [ebp - 0x32], ax
lea eax, [ebp - 0xc4]
movups xmmword [ebp - 0x4e], xmm0
push eax
lea eax, [ebp - 0x50]
movq qword [ebp - 0x3e], xmm0
push eax
call dword [sym.imp.KERNEL32.dll_GetComputerNameW]
test eax, eax
je 0x496e80
push ecx
lea edx, [ebp - 0x12c]
lea ecx, [ebp - 0x50]
call fcn.00496a20
add esp, 4
test al, al
je 0x496e80
lea edx, [ebp - 0x12c]
lea ecx, [ebp - 0x28]
call fcn.00496b30
push eax
lea ecx, [ebp - 0xdc]
mov byte [ebp - 4], 1
call fcn.00411840
mov byte [ebp - 4], 0
mov eax, dword [ebp - 0x14]
cmp eax, 0x10
jb 0x496e80
inc eax
lea ecx, [ebp - 0x28]
push eax
push dword [ebp - 0x28]
call fcn.00406990
lea ecx, [ebp - 0xe8]
call fcn.00496970
mov ecx, dword [ebp - 0xe8]
xor edx, edx
test al, al
push 1
cmove ecx, edx
mov dword [ebp - 0xe8], ecx
call dword [sym.imp.KERNEL32.dll_GetCurrentThread]
mov edi, dword [sym.imp.KERNEL32.dll_SetThreadAffinityMask]
push eax
call edi
mov eax, 1
xor ecx, ecx
push ebx
cpuid
mov esi, ebx
pop ebx
lea edi, [ebp - 0x20]
mov dword [edi], eax
mov eax, edi
push 0xffffffffffffffff
mov dword [eax + 4], esi
mov dword [eax + 8], ecx
mov dword [eax + 0xc], edx
call dword [sym.imp.KERNEL32.dll_GetCurrentThread]
mov edi, dword [sym.imp.KERNEL32.dll_SetThreadAffinityMask]
push eax
call edi
mov edx, dword [ebp - 0x20]
xorps xmm0, xmm0
mov al, dl
movq qword [ebp - 0x1f], xmm0
and al, 0xf
mov dword [ebp - 0x17], 0
mov byte [ebp - 0xe4], al
mov ecx, edx
sar ecx, 0xc
mov eax, edx
sar eax, 4
xor al, cl
mov word [ebp - 0x13], 0
and al, 0xf
mov byte [ebp - 0x11], 0
xor al, cl
movlpd qword [ebp - 0x78], xmm0
mov byte [ebp - 0xe3], al
and cl, 3
mov eax, edx
mov byte [ebp - 0xe1], cl
sar eax, 8
and al, 0xf
mov dword [ebp - 0x70], 0x6a09e667
mov byte [ebp - 0xe2], al
mov eax, edx
sar eax, 0x10
and al, 0xf
sar edx, 0x14
mov byte [ebp - 0xe0], al
xor eax, eax
mov byte [ebp - 0xdf], dl
xor esi, esi
movups xmmword [ebp - 0x2f], xmm0
mov dword [ebp - 0x80], eax
mov dword [ebp - 0x6c], 0xbb67ae85
mov dword [ebp - 0x68], 0x3c6ef372
mov dword [ebp - 0x64], 0xa54ff53a
mov dword [ebp - 0x60], 0x510e527f
mov dword [ebp - 0x5c], 0x9b05688c
mov dword [ebp - 0x58], 0x1f83d9ab
mov dword [ebp - 0x54], 0x5be0cd19
nop dword [eax]
mov cl, byte [ebp + esi - 0x12c]
mov byte [ebp + eax - 0xc0], cl
mov eax, dword [ebp - 0x80]
inc eax
mov dword [ebp - 0x80], eax
cmp eax, 0x40
jne 0x496fc7
lea edx, [ebp - 0xc0]
mov ecx, edx
call fcn.004967c0
add dword [ebp - 0x78], 0x200
adc dword [ebp - 0x74], 0
xor eax, eax
mov dword [ebp - 0x80], eax
inc esi
cmp esi, 0x50
jb 0x496f90
mov byte [ebp + eax - 0xc0], 0x80
lea edx, [eax + 1]
cmp eax, 0x38
jae 0x497003
cmp edx, 0x38
jae 0x497047
mov ecx, 0x38
lea edi, [ebp - 0xc0]
sub ecx, edx
add edi, edx
mov edx, ecx
xor eax, eax
shr ecx, 2
rep stosd dword es:[edi], eax
mov ecx, edx
and ecx, 3
rep stosb byte es:[edi], al
jmp 0x497047
cmp edx, 0x40
jae 0x497027
mov ecx, 0x40
lea edi, [ebp - 0xc0]
sub ecx, edx
add edi, edx
mov edx, ecx
xor eax, eax
shr ecx, 2
rep stosd dword es:[edi], eax
mov ecx, edx
and ecx, 3
rep stosb byte es:[edi], al
lea edx, [ebp - 0xc0]
mov ecx, edx
call fcn.004967c0
push 0x38
lea eax, [ebp - 0xc0]
push 0
push eax
call fcn.0050ba40
add esp, 0xc
mov eax, dword [ebp - 0x80]
mov edx, dword [ebp - 0x78]
mov esi, dword [ebp - 0x74]
shl eax, 3
add edx, eax
mov al, dl
mov dword [ebp - 0x78], edx
adc esi, 0
mov byte [ebp - 0x81], al
mov ecx, edx
mov dword [ebp - 0x74], esi
mov eax, esi
mov dword [ebp - 0x130], esi
shrd ecx, eax, 8
shr eax, 8
mov byte [ebp - 0x82], cl
mov eax, esi
mov ecx, edx
shrd ecx, eax, 0x10
shr eax, 0x10
mov byte [ebp - 0x83], cl
mov ecx, esi
mov eax, ecx
shrd edx, eax, 0x18
shr eax, 0x18
mov al, byte [ebp - 0x74]
mov byte [ebp - 0x85], al
mov eax, ecx
shr eax, 8
mov byte [ebp - 0x86], al
mov eax, ecx
shr ecx, 0x18
mov byte [ebp - 0x84], dl
lea edx, [ebp - 0xc0]
shr eax, 0x10
mov byte [ebp - 0x88], cl
mov ecx, edx
mov byte [ebp - 0x87], al
call fcn.004967c0
mov eax, dword [ebp - 0x70]
shr eax, 0x18
mov byte [ebp - 0x30], al
mov eax, dword [ebp - 0x6c]
shr eax, 0x18
mov byte [ebp - 0x2c], al
mov eax, dword [ebp - 0x68]
shr eax, 0x18
mov byte [ebp - 0x28], al
mov eax, dword [ebp - 0x64]
mov edx, dword [ebp - 0x58]
shr eax, 0x18
mov byte [ebp - 0x24], al
mov eax, dword [ebp - 0x60]
mov ecx, dword [ebp - 0x54]
shr eax, 0x18
mov byte [ebp - 0x20], al
mov eax, dword [ebp - 0x5c]
shr eax, 0x18
mov byte [ebp - 0x1c], al
mov eax, edx
shr eax, 0x18
mov byte [ebp - 0x18], al
mov eax, ecx
shr eax, 0x18
mov byte [ebp - 0x14], al
mov eax, dword [ebp - 0x70]
shr eax, 0x10
mov byte [ebp - 0x2f], al
mov eax, dword [ebp - 0x6c]
shr eax, 0x10
mov byte [ebp - 0x2b], al
mov eax, dword [ebp - 0x68]
shr eax, 0x10
mov byte [ebp - 0x27], al
mov eax, dword [ebp - 0x64]
shr eax, 0x10
mov byte [ebp - 0x23], al
mov eax, dword [ebp - 0x60]
shr eax, 0x10
mov byte [ebp - 0x1f], al
mov eax, dword [ebp - 0x5c]
shr eax, 0x10
mov byte [ebp - 0x1b], al
mov eax, edx
shr eax, 0x10
mov byte [ebp - 0x17], al
mov eax, ecx
shr eax, 0x10
mov byte [ebp - 0x13], al
mov eax, dword [ebp - 0x70]
shr eax, 8
mov byte [ebp - 0x2e], al
mov eax, dword [ebp - 0x6c]
shr eax, 8
mov byte [ebp - 0x2a], al
mov eax, dword [ebp - 0x68]
shr eax, 8
mov byte [ebp - 0x26], al
mov eax, dword [ebp - 0x64]
shr eax, 8
mov byte [ebp - 0x22], al
mov eax, dword [ebp - 0x60]
shr eax, 8
mov byte [ebp - 0x1e], al
mov eax, dword [ebp - 0x5c]
shr eax, 8
mov esi, dword [ebp - 0x134]
mov byte [ebp - 0x1a], al
mov al, byte [ebp - 0x70]
mov byte [ebp - 0x2d], al
mov al, byte [ebp - 0x6c]
mov byte [ebp - 0x29], al
mov al, byte [ebp - 0x68]
mov byte [ebp - 0x25], al
mov al, byte [ebp - 0x64]
mov byte [ebp - 0x21], al
mov al, byte [ebp - 0x60]
mov byte [ebp - 0x1d], al
mov al, byte [ebp - 0x5c]
mov byte [ebp - 0x19], al
mov al, byte [ebp - 0x58]
shr ecx, 8
shr edx, 8
mov byte [ebp - 0x15], al
mov al, byte [ebp - 0x54]
mov byte [ebp - 0x16], dl
lea edx, [ebp - 0x30]
mov byte [ebp - 0x12], cl
push ecx
mov ecx, esi
mov byte [ebp - 0x11], al
call fcn.00496bf0
mov ecx, dword [ebp - 0xc8]
add esp, 4
cmp ecx, 0x10
jb 0x49720a
inc ecx
push ecx
push dword [ebp - 0xdc]
lea ecx, [ebp - 0xdc]
call fcn.00406990
mov eax, esi
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.004c2344
mov esp, ebp
pop ebp
ret