Function at 0x424a70
Capabilities:
Enumerate pe sections

Disassembly:
push 0xffffffffffffffff
push 0x499beb
mov eax, dword fs:[0]
push eax
sub esp, 0x14
push ebx
push ebp
push esi
push edi
mov eax, dword [0x4ca09c]
xor eax, esp
push eax
lea eax, [esp + 0x28]
mov dword fs:[0], eax
mov ecx, dword [esp + 0x38]
mov eax, dword [ecx + 4]
mov edx, dword [eax + 0x10]
movzx eax, word [edx + 6]
movzx eax, ax
sub eax, 0x4001
je 0x424abb
sub eax, 2
jne 0x424ace
push str.5400B
jmp 0x424ac0
push str.5400A
add ecx, 0x48
push 0x40
push ecx
call fcn.00481ba5
add esp, 0xc
mov esi, dword [esp + 0x3c]
mov dword [esi + 4], 8
call fcn.00431480
mov eax, dword [eax + 0x34]
lea ecx, [esp + 0x38]
push ecx
push 0x56
push 1
push 0x10
xor ebp, ebp
push ebp
mov ecx, eax
call fcn.00438ea0
mov eax, dword [esp + 0x38]
and eax, 7
cmp eax, 7
ja case.0x424b02.5
jmp dword [eax*4 + 0x424eac]
fld1
push 0x4a4db4
jmp 0x424b2a
fld dword [0x4a42a8]
push 0x4a4ddc
jmp 0x424b2a
fld dword [0x4a4e50]
push 0x4a4e4c
fstp dword [esi + 0xc]
push 0x20
add esi, 0x74
push esi
call fcn.00481ba5
add esp, 0xc
call fcn.00431480
mov eax, dword [eax + 0x34]
lea edx, [esp + 0x38]
push edx
push 0x56
push ebp
push 0x10
push ebp
mov ecx, eax
call fcn.00438ea0
mov eax, dword [esp + 0x38]
mov edi, eax
movzx eax, ah
and edi, 0xff
mov dword [esp + 0x24], edi
mov dword [esp + 0x20], eax
call fcn.00431480
mov eax, dword [eax + 0x34]
lea ecx, [esp + 0x38]
push ecx
push 0x50
push ebp
push 0x10
push ebp
mov ecx, eax
call fcn.00438ea0
call fcn.00431480
mov edx, dword [esp + 0x38]
mov eax, dword [eax + 0x44]
push edx
push str.PCI__0__16__0__0x50___0x_08X_n
push eax
call fcn.00495a80
add esp, 0xc
cmp dword [esp + 0x38], ebp
je 0x424e95
call fcn.00431480
mov eax, dword [eax + 0x34]
lea ecx, [esp + 0x14]
push ecx
push 0x48
push ebp
push 0x10
push ebp
mov ecx, eax
call fcn.00438ea0
and dword [esp + 0x14], 0xfffe0000
call fcn.00431480
mov edx, dword [esp + 0x14]
mov eax, dword [eax + 0x44]
push edx
push str.AMBase_low__0x_08X_n
push eax
call fcn.00495a80
add esp, 0xc
call fcn.00431480
mov eax, dword [eax + 0x34]
lea ecx, [esp + 0x18]
push ecx
push 0x4c
push ebp
push 0x10
push ebp
mov ecx, eax
call fcn.00438ea0
and dword [esp + 0x18], 0xff
call fcn.00431480
mov edx, dword [esp + 0x18]
mov eax, dword [eax + 0x44]
push edx
push str.AMBase_high__0x_08X_n
push eax
call fcn.00495a80
mov eax, dword [esp + 0x20]
mov ecx, dword [esp + 0x24]
add esp, 0xc
cmp eax, ebp
jne 0x424c39
cmp ecx, ebp
je 0x424e95
push 0x2000000
push eax
push ecx
call fcn.00431480
mov ecx, eax
call fcn.00431690
mov esi, eax
cmp esi, ebp
jne 0x424c9f
push 0x14
call fcn.00472897
add esp, 4
mov dword [esp + 0x1c], eax
cmp eax, ebp
mov dword [esp + 0x30], ebp
je 0x424c7f
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x18]
push 0xffffffffffffffff
push ecx
push edx
mov ecx, eax
call fcn.00442c20
mov esi, eax
jmp 0x424c81
xor esi, esi
mov dword [esp + 0x30], 0xffffffff
call fcn.00431480
mov ecx, dword [eax + 0x18]
push esi
call fcn.004220c0
cmp esi, ebp
je 0x424e95
push esi
call fcn.00403db0
add esp, 4
cmp edi, ebp
mov esi, eax
jle 0x424e95
mov edi, ebp
xor ebx, ebx
shl edi, 0xf
cmp dword [esp + 0x20], ebx
jle 0x424cee
mov dword [esp + 0x1c], ebx
add edi, dword [esp + 0x1c]
mov eax, dword [esi]
mov edx, dword [eax + 0x18]
lea ecx, [esp + 0x38]
push ecx
push edi
mov ecx, esi
call edx
cmp dword [esp + 0x38], 0xffffffff
jne 0x424d0b
add dword [esp + 0x1c], 0x800
add ebx, 1
cmp ebx, dword [esp + 0x20]
jl 0x424cc3
add ebp, 1
cmp ebp, dword [esp + 0x24]
jl 0x424cb2
mov ecx, dword [esp + 0x28]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x20
ret
mov eax, dword [esi]
mov eax, dword [eax + 0x18]
lea ecx, [esp + 0x38]
push ecx
lea edx, [edi + 0x370]
push edx
mov ecx, esi
call eax
call fcn.00431480
mov ecx, dword [esp + 0x38]
mov edx, dword [eax + 0x44]
push ecx
push ebx
push ebp
push str._channel__d_dimm__d___0x370___0x_08X_n
push edx
call fcn.00495a80
mov eax, dword [esi]
mov eax, dword [eax + 0x18]
add esp, 0x14
lea ecx, [esp + 0x38]
push ecx
lea edx, [edi + 0x374]
push edx
mov ecx, esi
call eax
call fcn.00431480
mov ecx, dword [esp + 0x38]
mov edx, dword [eax + 0x44]
push ecx
push ebx
push ebp
push str._channel__d_dimm__d___0x374___0x_08X_n
push edx
call fcn.00495a80
mov eax, dword [esi]
mov eax, dword [eax + 0x18]
add esp, 0x14
lea ecx, [esp + 0x38]
push ecx
lea edx, [edi + 0x378]
push edx
mov ecx, esi
call eax
call fcn.00431480
mov ecx, dword [esp + 0x38]
mov edx, dword [eax + 0x44]
push ecx
push ebx
push ebp
push str._channel__d_dimm__d___0x378___0x_08X_n
push edx
call fcn.00495a80
mov ecx, dword [esp + 0x4c]
mov eax, ecx
shr eax, 0xa
and eax, 3
mov edx, 6
sub edx, eax
mov eax, dword [esp + 0x50]
mov dword [eax + 0x1c], edx
mov edx, ecx
shr edx, 8
and edx, 3
mov eax, 6
sub eax, edx
mov edx, dword [esp + 0x50]
mov dword [edx + 0x20], eax
mov eax, ecx
shr eax, 0x1d
and eax, 3
add esp, 0x14
sub eax, 0
je 0x424dfa
sub eax, 1
je 0x424df1
sub eax, 1
jne 0x424e01
mov dword [edx + 0x24], 0xc
jmp 0x424e01
mov dword [edx + 0x24], 0xf
jmp 0x424e01
mov dword [edx + 0x24], 0x12
shr ecx, 0xc
and ecx, 0xf
mov eax, 0x1a
sub eax, ecx
mov dword [edx + 0x28], eax
mov edx, dword [esi]
mov edx, dword [edx + 0x18]
lea eax, [esp + 0x38]
push eax
lea ecx, [edi + 0x37c]
push ecx
mov ecx, esi
call edx
call fcn.00431480
mov ecx, dword [esp + 0x38]
mov edx, dword [eax + 0x44]
push ecx
push ebx
push ebp
push str._channel__d_dimm__d___0x37C___0x_08X_n
push edx
call fcn.00495a80
mov eax, dword [esp + 0x4c]
and eax, 0xf
add esp, 0x14
test eax, eax
mov dword [esp + 0x24], eax
fild dword [esp + 0x24]
jge 0x424e5c
fadd dword [0x4a18e8]
mov ecx, dword [esp + 0x3c]
fstp dword [ecx + 0x18]
mov edx, dword [esi]
mov edx, dword [edx + 0x18]
lea eax, [esp + 0x38]
push eax
add edi, 0x385
push edi
mov ecx, esi
call edx
call fcn.00431480
mov ecx, dword [esp + 0x38]
mov edx, dword [eax + 0x44]
push ecx
push ebx
push ebp
push str._channel__d_dimm__d___0x385___0x_08X_n
push edx
call fcn.00495a80
add esp, 0x14
mov ecx, dword [esp + 0x28]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x20
ret