Function at 0x100079d0
Capabilities:
Enumerate pe sections
Parse pe header

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x1001e82d
mov eax, dword fs:[0]
push eax
sub esp, 0x5c
mov eax, dword [0x10080040]
xor eax, ebp
mov dword [ebp - 0x10], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov eax, dword [ebp + 8]
xor edi, edi
mov ecx, dword [ebp + 0x14]
mov dword [ebp - 0x3c], eax
mov eax, dword [ebp + 0x18]
mov dword [ebp - 0x34], ecx
mov dword [ebp - 0x30], eax
mov dword [ebp - 0x4c], edi
mov dword [ebp - 0x2c], edi
mov dword [ebp - 4], edi
xorps xmm0, xmm0
movups xmmword [ebp - 0x28], xmm0
mov dword [ebp - 0x18], edi
mov dword [ebp - 0x28], edi
mov dword [ebp - 0x24], edi
mov dword [ebp - 0x20], edi
mov dword [ebp - 0x1c], edi
mov byte [ebp - 4], 1
xor esi, esi
mov eax, dword [ecx]
mov dword [ebp - 0x18], 0x1000
test eax, eax
je 0x10007a4a
mov esi, dword [eax]
cmp esi, 0x1000
ja 0x10007a5c
push ecx
push 0x1000
call fcn.100097e0
mov ecx, dword [ebp - 0x34]
mov eax, dword [ecx]
mov dword [eax], esi
mov eax, dword [ecx]
test eax, eax
je 0x10007a7f
push dword [eax + 0xc]
push 0
push dword [eax + 8]
call fcn.1000bd30
mov esi, dword [ebp - 0x34]
add esp, 0xc
mov eax, dword [esi]
mov dword [eax], 0
jmp 0x10007a82
mov esi, dword [ebp - 0x34]
xorps xmm0, xmm0
lea ecx, [ebp - 0x64]
movups xmmword [ebp - 0x64], xmm0
call fcn.10006b40
test eax, eax
je 0x10007ca3
dec eax
cmp eax, 0x27
ja case.default.0x10007aa3
jmp dword [eax*4 + 0x100081b0]
mov esi, str.Server2022
jmp 0x10007c09
mov esi, str.Server2019
jmp 0x10007c09
mov esi, str.Server2016
jmp 0x10007c09
mov esi, str.Server2012_R2
jmp 0x10007c09
mov esi, str.Server2012
jmp 0x10007c09
mov esi, str.Server2008_R2
jmp 0x10007c09
mov esi, str.Server2008
jmp 0x10007c09
mov esi, str.Server2003
jmp 0x10007c09
mov esi, str.Windows_Home_Server
jmp 0x10007c09
mov esi, str.Windows_2003
jmp 0x10007c09
mov esi, str.Windows_2000
jmp 0x10007c09
mov esi, str.Windows_2003_SP1_SP2
jmp 0x10007c09
mov esi, str.Windows_XP
jmp 0x10007c09
mov esi, str.Windows_XP64
jmp 0x10007c09
mov esi, str.Windows_Vista
jmp 0x10007c09
mov esi, str.Windows_7
jmp 0x10007c09
mov esi, 0x1007d244
jmp 0x10007c09
mov esi, str.Windows_7_7601
jmp 0x10007c09
mov esi, str.Windows_7_7600
jmp 0x10007c09
mov esi, str.Windows_7_7000
jmp 0x10007c09
mov esi, str.Windows_8
jmp 0x10007c09
mov esi, str.Windows_8.1
jmp 0x10007c09
mov esi, str.Windows_10
jmp 0x10007c09
mov esi, str.Windows_10_10240
jmp 0x10007c09
mov esi, str.Windows_10_10586
jmp 0x10007c09
mov esi, str.Windows_10_14393
jmp 0x10007c09
mov esi, str.Windows_10_15063
jmp 0x10007c09
mov esi, str.Windows_10_16299
jmp 0x10007c09
mov esi, str.Windows_10_17134
jmp 0x10007c09
mov esi, str.Windows_10_17763
jmp 0x10007c09
mov esi, str.Windows_10_18362
jmp 0x10007c09
mov esi, str.Windows_10_18363
jmp 0x10007c09
mov esi, str.Windows_10_19041
jmp 0x10007c09
mov esi, str.Windows_10_19042
jmp 0x10007c09
mov esi, str.Windows_10_19043
jmp 0x10007c09
mov esi, str.Windows_10_19044
jmp 0x10007c09
mov esi, str.Windows_10_19045
jmp 0x10007c09
mov esi, str.Windows_11
jmp 0x10007c09
mov esi, str.Windows_11_22000
jmp 0x10007c09
mov esi, str.Windows_11_22621
jmp 0x10007c09
mov esi, 0x1007d400
mov eax, dword [ebp - 0x30]
test eax, eax
je 0x10007c83
cmp word [eax], 0
je 0x10007c83
sub esp, 8
lea ecx, [ebp - 0x30]
mov edx, eax
call fcn.10008e70
add esp, 8
mov byte [ebp - 4], 2
mov eax, dword [eax]
test eax, eax
je 0x10007c35
mov eax, dword [eax + 8]
jmp 0x10007c37
xor eax, eax
push esi
push dword [ebp - 0x58]
mov esi, dword [ebp - 0x34]
push dword [ebp - 0x5c]
push dword [ebp - 0x60]
push dword [ebp - 0x64]
push dword [ebp + 0x10]
push eax
push 0x1007d538
push esi
call fcn.100095b0
add esp, 0x24
mov byte [ebp - 4], 3
mov eax, dword [ebp - 0x30]
test eax, eax
je 0x10007c7a
add dword [eax + 4], 0xffffffff
jne 0x10007c7a
mov eax, dword [ebp - 0x30]
test eax, eax
je 0x10007c7a
push eax
call fcn.1001217f
add esp, 4
mov byte [ebp - 4], 1
jmp 0x10007d05
push esi
push dword [ebp - 0x58]
mov esi, dword [ebp - 0x34]
push dword [ebp - 0x5c]
push dword [ebp - 0x60]
push dword [ebp - 0x64]
push 0x1007d5d8
push esi
call fcn.100095b0
add esp, 0x1c
jmp 0x10007d05
mov eax, dword [ebp - 0x30]
test eax, eax
je 0x10007d02
sub esp, 8
lea ecx, [ebp - 0x30]
mov edx, eax
call fcn.10008e70
add esp, 8
mov byte [ebp - 4], 4
mov eax, dword [eax]
test eax, eax
je 0x10007cc9
mov eax, dword [eax + 8]
jmp 0x10007ccb
xor eax, eax
push dword [ebp + 0x10]
push eax
push 0x1007d664
push esi
call fcn.100095b0
add esp, 0x10
mov byte [ebp - 4], 5
mov eax, dword [ebp - 0x30]
test eax, eax
je 0x10007cfe
add dword [eax + 4], 0xffffffff
jne 0x10007cfe
mov eax, dword [ebp - 0x30]
test eax, eax
je 0x10007cfe
push eax
call fcn.1001217f
add esp, 4
mov byte [ebp - 4], 1
mov esi, dword [ebp - 0x34]
push 0
push 0x1007d698
mov ecx, esi
call fcn.10009910
mov ecx, dword [ebp - 0x3c]
test ecx, ecx
je 0x10008129
mov eax, 0x5a4d
cmp word [ecx], ax
jne 0x10008129
add ecx, dword [ecx + 0x3c]
cmp dword [ecx], 0x4550
jne 0x10008129
mov eax, 0x14c
test word [ecx + 4], ax
je 0x10008129
mov eax, dword [ecx + 0x54]
xor esi, esi
mov dword [ebp - 0x38], eax
movzx eax, word [ecx + 6]
mov dword [ebp - 0x48], eax
movzx eax, word [ecx + 0x14]
add eax, 0x18
add eax, ecx
cmp dword [ecx + 0x50], 0xffffffff
mov dword [ebp - 0x44], eax
cmovne esi, dword [ecx + 0x50]
lea ecx, [esi + 0x11]
call fcn.1000a050
push dword [ebp - 0x38]
mov edi, eax
lea ecx, [esi + 1]
push dword [ebp - 0x3c]
mov dword [ebp - 0x4c], edi
mov dword [ebp - 0x2c], edi
lea eax, [edi + 0x10]
mov dword [edi + 4], 1
mov dword [edi + 0xc], ecx
mov dword [edi + 8], eax
push eax
mov dword [ebp - 0x54], eax
mov dword [edi], esi
call fcn.1000d2c0
mov eax, dword [ebp - 0x48]
xor ecx, ecx
add esp, 0xc
cmp cx, ax
jae 0x10007de9
mov esi, dword [ebp - 0x44]
movzx ecx, ax
mov dword [ebp - 0x30], ecx
mov eax, dword [esi + 0xc]
test eax, eax
je 0x10007dde
mov edx, dword [esi + 0x10]
test edx, edx
je 0x10007dde
mov ecx, dword [esi + 0x14]
add eax, 0x10
add ecx, dword [ebp - 0x3c]
add eax, edi
push edx
push ecx
push eax
call fcn.1000d2c0
mov ecx, dword [ebp - 0x30]
add esp, 0xc
add esi, 0x28
sub ecx, 1
mov dword [ebp - 0x30], ecx
jne 0x10007db7
lea ecx, [edi + 0x10]
test ecx, ecx
je 0x10008129
mov eax, dword [ecx + 0x3c]
push 0x1a8
mov eax, dword [eax + ecx + 0x80]
add eax, ecx
mov dword [ebp - 0x3c], eax
call fcn.1001219a
mov esi, eax
add esp, 4
mov dword [ebp - 0x38], esi
test esi, esi
jne 0x10007e1e
lea ecx, [eax + 4]
jmp 0x10007e79
push 0x1a8
push 0
push esi
call fcn.1000bd30
lea eax, [esi + 0x18]
add esp, 0xc
mov dword [esi], eax
xor ecx, ecx
nop word [eax + eax]
mov eax, dword [esi]
mov dword [eax + ecx], 0
add ecx, 4
cmp ecx, 0x190
jb 0x10007e40
mov eax, dword [ebp - 0x38]
mov dword [esi + 0x14], 0x7d
lea ecx, [eax + 4]
mov dword [esi + 8], 0x64
mov dword [esi + 0xc], 0x18
mov dword [ecx], 0x64
mov byte [eax + 0x10], 1
mov dword [ebp - 0x14], esi
mov byte [ebp - 4], 8
test eax, eax
jne 0x10007e8b
xor esi, esi
mov dword [ebp - 0x14], esi
jmp 0x10007e96
cmp dword [ecx], 0
je 0x10007e96
mov dword [ecx], 0
mov eax, dword [ebp - 0x3c]
cmp dword [eax + 0xc], 0
je 0x10008112
lea edx, [edi + 0x10]
mov eax, dword [eax + 0xc]
add eax, edx
mov dword [ebp - 0x30], eax
cmp byte [eax], 0
je 0x100080ff
push eax
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov ecx, eax
mov dword [ebp - 0x44], ecx
test ecx, ecx
jne 0x10007ed5
push dword [ebp - 0x30]
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov ecx, eax
mov dword [ebp - 0x44], eax
test esi, esi
jne 0x10007ede
mov dword [ebp - 0x14], esi
jmp 0x10007eeb
cmp dword [esi + 4], 0
je 0x10007eeb
mov dword [esi + 4], 0
mov eax, dword [ebp - 0x3c]
lea edx, [edi + 0x10]
mov eax, dword [eax + 0x10]
add eax, edx
mov dword [ebp - 0x38], eax
mov eax, dword [eax]
test eax, eax
je 0x1000802d
mov edi, dword [ebp - 0x44]
jns 0x10007f0d
movzx eax, ax
jmp 0x10007f12
add eax, 2
add eax, edx
mov dword [ebp - 0x40], eax
test edi, edi
je 0x10007f29
push eax
push edi
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
test eax, eax
jne 0x10008011
mov ecx, dword [ebp - 0x40]
mov edx, 0x100286d8
cmp ecx, 0xffff
mov eax, 0x1007d6cc
push ecx
cmova eax, edx
push eax
lea eax, [ebp - 0x28]
push eax
call fcn.10008cd0
or edx, 0xffffffff
mov dword [ebp - 0x50], eax
add esp, 0xc
mov dword [ebp - 0x40], edx
test esi, esi
jne 0x10007fb6
push 0xe0
call fcn.1001219a
mov esi, eax
add esp, 4
test esi, esi
jne 0x10007f75
mov dword [ebp - 0x14], esi
jmp 0x10008011
push 0xc8
lea eax, [esi + 0x18]
mov dword [esi + 0x10], 0
push 0
push eax
call fcn.1000bd30
mov edx, dword [ebp - 0x40]
lea eax, [esi + 0x18]
mov dword [esi], eax
add esp, 0xc
mov dword [esi + 0x14], 0x7d
mov dword [esi + 8], 0x32
mov dword [esi + 0xc], 0x18
mov dword [ebp - 0x14], esi
mov dword [esi + 4], 0
mov eax, dword [esi + 4]
cmp eax, 0xffffffff
mov dword [ebp - 0x48], eax
cmovb edx, eax
mov dword [ebp - 0x40], edx
cmp eax, dword [esi + 8]
jne 0x10007fe3
push ecx
add eax, 0x64
lea ecx, [ebp - 0x14]
push eax
call fcn.10008b00
mov esi, dword [ebp - 0x14]
mov eax, dword [ebp - 0x48]
mov edx, dword [ebp - 0x40]
mov dword [esi + 4], eax
mov ecx, dword [esi]
lea ecx, [ecx + edx*4]
mov dword [ebp - 0x40], ecx
cmp edx, eax
jae 0x10008008
sub eax, edx
shl eax, 2
push eax
push ecx
lea eax, [ecx + 4]
push eax
call fcn.1000d2c0
mov eax, dword [ebp - 0x48]
add esp, 0xc
mov ecx, dword [ebp - 0x40]
inc eax
mov dword [esi + 4], eax
mov eax, dword [ebp - 0x50]
mov dword [ecx], eax
mov ecx, dword [ebp - 0x38]
mov edx, dword [ebp - 0x54]
add ecx, 4
mov dword [ebp - 0x38], ecx
mov eax, dword [ecx]
test eax, eax
jne 0x10007f06
mov edi, dword [ebp - 0x4c]
mov ecx, dword [ebp - 0x44]
test esi, esi
je 0x100080ff
mov eax, dword [esi + 4]
mov dword [ebp - 0x50], eax
test eax, eax
jle 0x100080ff
test ecx, ecx
mov ecx, dword [ebp - 0x34]
push 0
jne 0x10008072
push 0x1007d6e8
push 0
push dword [ebp - 0x30]
push 0
push 0x1007d6dc
call fcn.10009910
mov ecx, eax
call fcn.10009910
mov ecx, eax
call fcn.10009910
jmp 0x100080e0
push 0x1007d6f4
push 0
push dword [ebp - 0x30]
push 0
push 0x1007d6ec
call fcn.10009910
mov ecx, eax
call fcn.10009910
mov ecx, eax
call fcn.10009910
xor ecx, ecx
mov dword [ebp - 0x38], ecx
nop dword [eax + eax]
cmp dword [esi + 4], ecx
jbe 0x1000819e
mov eax, dword [esi]
push 0
push 0x1007d6e8
push 0
push dword [eax + ecx*4]
mov ecx, dword [ebp - 0x34]
push 0
push 0x1007d708
call fcn.10009910
mov ecx, eax
call fcn.10009910
mov ecx, eax
call fcn.10009910
mov ecx, dword [ebp - 0x38]
inc ecx
mov dword [ebp - 0x38], ecx
cmp ecx, dword [ebp - 0x50]
jl 0x100080a0
mov ecx, dword [ebp - 0x34]
push 0
push 0x1007d6e8
call fcn.10009910
cmp dword [esi + 4], 0
lea edx, [edi + 0x10]
je 0x100080ff
mov dword [esi + 4], 0
mov eax, dword [ebp - 0x3c]
add eax, 0x14
mov dword [ebp - 0x3c], eax
cmp dword [eax + 0xc], 0
jne 0x10007ea6
mov byte [ebp - 4], 9
test esi, esi
je 0x10008129
cmp byte [esi + 0x10], 0
je 0x10008129
push esi
call fcn.1001217f
add esp, 4
mov byte [ebp - 4], 0xa
mov ecx, dword [ebp - 0x24]
test ecx, ecx
je 0x10008167
mov eax, dword [ebp - 0x20]
test eax, eax
je 0x10008167
xor esi, esi
test eax, eax
je 0x1000815e
mov edi, eax
mov eax, dword [ecx + esi*4]
test eax, eax
je 0x10008156
push eax
call fcn.1001217f
mov ecx, dword [ebp - 0x24]
add esp, 4
inc esi
cmp esi, edi
jb 0x10008143
mov edi, dword [ebp - 0x4c]
push ecx
call fcn.1000a7b1
add esp, 4
mov dword [ebp - 4], 0xb
test edi, edi
je 0x10008181
add dword [edi + 4], 0xffffffff
jne 0x10008181
push edi
call fcn.1001217f
add esp, 4
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.1000a681
mov esp, ebp
pop ebp
ret 0x14
push 0x1007e9c4
lea eax, [ebp - 0x68]
mov dword [ebp - 0x68], ecx
push eax
call fcn.1000bee9
nop
push cs
jnp 268468659
adc byte [edx], ah
jnp 0x100081b7
adc al, dh
jp 0x100081bb
adc dl, bh
jp 0x100081bf
adc byte [ebx + edi*2], al
add byte [eax], dl
sbb byte [ebx], bh
adc byte [ebx + edi*2], ch
add byte [eax], dl
jnp 0x100081cf
adc dh, ah
jp 0x100081d3
adc byte [eax + 0x7b], ch
add byte [eax], dl
pop esi
jnp 268468699
adc byte [edx + 0x7b], cl
add byte [eax], dl
push esp
jnp 268468707
adc byte [eax + 0x7b], al
add byte [eax], dl
fdivr qword [edx]
adc byte [edx + 123], dh
add byte [eax], dl
sar byte [edx], cl
adc byte [ebx + edi*2], bh
adc al, cl
jp 0x100081fb
adc byte [esi - 0x41efff85], al
jp 0x10008203
adc byte [edx + edi*2 + 0x7aaa1000], dh
add byte [eax], dl
lea edi, [ebx]
adc byte [ebx + edi*2 + 2073759744], dl
add byte [eax], dl
mov byte [0xa910007b], al
jnp 268468767
adc byte [eax - 0x48efff85], dh
jnp 0x10008227
adc byte [esi - 0x3aefff85], bh
jnp 0x1000822f
adc ah, cl
jnp 0x10008233
adc bl, dl
jnp 0x10008237
adc dl, bl
jnp 0x1000823b
adc cl, ah
jnp 0x1000823f
adc al, ch
jnp 0x10008243
adc bh, ch
jnp 0x10008247
adc dh, dh
jnp 0x1000824b
adc ch, bh
jnp 0x1000824f
adc byte [ebp - 0x75], dl
in al, dx