Function at 0x41d980
Capabilities:
Get system information on windows

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x4e528e
mov eax, dword fs:[0]
push eax
sub esp, 0x60
mov eax, dword [0x537700]
xor eax, ebp
mov dword [ebp - 0x10], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov edi, ecx
mov dword [ebp - 0x3c], edi
mov dword [ebp - 0x34], 0
call fcn.004554d0
push eax
mov dword [ebp - 0x30], eax
call fcn.00455450
mov dword [ebp - 0x44], eax
call fcn.004554d0
push eax
mov dword [ebp - 0x48], eax
call fcn.00455450
add esp, 8
mov esi, eax
mov dword [ebp - 0x38], esi
call fcn.00455470
cmp dword [edi + 0x1b4], 0xf
lea ecx, [edi + 0x1a0]
mov dword [ebp - 0x40], eax
jbe 0x41d9f6
mov ecx, dword [ecx]
push ecx
push 0x4edbf4
push esi
call fcn.00455010
push 0x4ed847
push str.userid
push esi
call fcn.00455010
add esp, 0x18
xorps xmm0, xmm0
mov dword [ebp - 4], 0
lea eax, [ebp - 0x6c]
mov dword [ebp - 0x18], 0
movups xmmword [ebp - 0x28], xmm0
push eax
mov dword [ebp - 0x14], 0xf
mov byte [ebp - 0x28], 0
mov dword [ebp - 0x34], 1
call dword [sym.imp.KERNEL32.dll_GetNativeSystemInfo]
mov ax, word [ebp - 0x6c]
cmp ax, 9
je 0x41db7b
cmp ax, 6
je 0x41db7b
mov edi, dword [ebp - 0x14]
cmp edi, 6
jb 0x41da90
cmp edi, 0xf
mov dword [ebp - 0x18], 6
push 6
lea esi, [ebp - 0x28]
cmova esi, dword [ebp - 0x28]
push str.pc_x86
push esi
call fcn.004ba120
add esp, 0xc
mov byte [esi + 6], 0
jmp 0x41db20
mov ecx, edi
mov eax, closesocket
shr ecx, 1
sub eax, ecx
cmp edi, eax
jbe 0x41daa6
mov ecx, closesocket
jmp 0x41dab3
lea eax, [ecx + edi]
mov ecx, 0xf
cmp eax, ecx
cmova ecx, eax
lea eax, [ebp - 0x2c]
mov dword [ebp - 0x2c], ecx
push eax
lea eax, [ebp - 0x28]
push eax
call fcn.00401b90
mov ecx, dword [ebp - 0x2c]
mov esi, eax
mov dword [ebp - 0x14], ecx
add esp, 8
mov ecx, dword [str.pc_x86]
mov dword [ebp - 0x18], 6
mov dword [esi], ecx
mov cx, word [0x4ee964]
mov word [esi + 4], cx
mov byte [esi + 6], 0
cmp edi, 0xf
jbe 0x41db1d
mov ecx, dword [ebp - 0x28]
inc edi
mov eax, ecx
cmp edi, 0x1000
jb 0x41db13
mov ecx, dword [eax - 4]
add edi, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41dd28
push edi
push ecx
call fcn.004b812d
add esp, 8
mov dword [ebp - 0x28], esi
cmp dword [ebp - 0x14], 0xf
lea eax, [ebp - 0x28]
mov esi, dword [ebp - 0x38]
cmova eax, dword [ebp - 0x28]
push eax
push str.system_type
push esi
call fcn.00455010
mov ecx, dword [ebp - 0x14]
add esp, 0xc
mov dword [ebp - 4], 0xffffffff
cmp ecx, 0xf
jbe 0x41dc47
mov edx, dword [ebp - 0x28]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x41dc3d
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41dd23
jmp 0x41dc3d
mov edi, dword [ebp - 0x14]
cmp edi, 6
jb 0x41dbad
cmp edi, 0xf
mov dword [ebp - 0x18], 6
push 6
lea esi, [ebp - 0x28]
cmova esi, dword [ebp - 0x28]
push str.pc_x64
push esi
call fcn.004ba120
add esp, 0xc
mov byte [esi + 6], 0
jmp 0x41db20
mov ecx, edi
mov eax, closesocket
shr ecx, 1
sub eax, ecx
cmp edi, eax
jbe 0x41dbc3
mov ecx, closesocket
jmp 0x41dbd0
lea eax, [edi + ecx]
mov ecx, 0xf
cmp eax, ecx
cmova ecx, eax
lea eax, [ebp - 0x2c]
mov dword [ebp - 0x2c], ecx
push eax
lea eax, [ebp - 0x28]
push eax
call fcn.00401b90
mov ecx, dword [ebp - 0x2c]
mov esi, eax
mov dword [ebp - 0x14], ecx
add esp, 8
mov ecx, dword [str.pc_x64]
mov dword [ebp - 0x18], 6
mov dword [esi], ecx
mov cx, word [0x4ee96c]
mov word [esi + 4], cx
mov byte [esi + 6], 0
cmp edi, 0xf
jbe 0x41db1d
mov ecx, dword [ebp - 0x28]
inc edi
mov eax, ecx
cmp edi, 0x1000
jb 0x41db13
mov ecx, dword [eax - 4]
add edi, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41dd28
jmp 0x41db13
push ecx
push edx
call fcn.004b812d
add esp, 8
mov edi, dword [ebp - 0x3c]
cmp dword [edi + 0x1cc], 0xf
lea eax, [edi + 0x1b8]
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x14], 0xf
mov byte [ebp - 0x28], 0
jbe 0x41dc6d
mov eax, dword [eax]
push eax
push str.devicekey
push esi
call fcn.00455010
push str.1.2.6.4
push str.sdk_version
push esi
call fcn.00455010
movsd xmm0, qword [0x4f10e0]
add esp, 0x10
movsd qword [esp], xmm0
push str.equipment_type
push esi
call fcn.00454fc0
push dword [ebp - 0x40]
push str.server
push esi
call fcn.00454c90
movsd xmm0, qword [0x4f10f0]
add esp, 0x14
mov esi, dword [ebp - 0x44]
movsd qword [esp], xmm0
push str.type
push esi
call fcn.00454fc0
push dword [ebp - 0x48]
push str.request
push esi
call fcn.00454c90
push dword [ebp - 0x30]
call fcn.00455280
add esp, 0x20
lea ecx, [edi + 0x1d0]
mov esi, eax
push esi
call fcn.004404e0
push dword [ebp - 0x30]
call fcn.00455350
push esi
call fcn.00454c70
add esp, 8
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.004b847a
mov esp, ebp
pop ebp
ret
call fcn.004be0cf
call fcn.004be0cf
int3