Function at 0x455f60
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push 0xffffffffffffffff
push 0x5966ce
mov eax, dword fs:[0]
push eax
sub esp, 0x2c
push ebx
push ebp
push esi
push edi
mov eax, dword [0x614b80]
xor eax, esp
push eax
lea eax, [esp + 0x40]
mov dword fs:[0], eax
mov esi, ecx
fld dword [0x5dcf50]
mov dword [esp + 0x2c], vtable.CClockSet.0
fst dword [esp + 0x30]
fst dword [esp + 0x34]
fst dword [esp + 0x38]
fstp dword [esp + 0x3c]
mov eax, dword [esi + 0x590]
mov dword [esp + 0x48], 0
test eax, eax
je 0x4565a2
mov eax, dword [eax + 4]
mov dword [esp + 0x28], eax
test eax, eax
je 0x4565a2
mov eax, dword [eax + 4]
test eax, eax
je 0x4565a2
jmp 0x455fe0
mov ebx, dword [eax]
test ebx, ebx
je 0x456584
mov edx, dword [ebx]
mov eax, dword [edx + 0x70]
push esi
mov ecx, ebx
call eax
mov edx, dword [ebx]
mov eax, dword [edx + 0x2c]
push esi
mov ecx, ebx
call eax
mov edi, eax
cmp edi, dword [esi + 0x640]
jle 0x45609e
mov ecx, dword [esi + 0x63c]
test ecx, ecx
je 0x45603c
cmp dword [ecx - 4], 0
lea eax, [ecx - 4]
je 0x456029
mov edx, dword [ecx]
mov eax, dword [edx]
push 3
call eax
jmp 0x456032
push eax
call fcn.005684ad
add esp, 4
mov dword [esi + 0x63c], 0
mov dword [esi + 0x640], edi
inc edi
xor ecx, ecx
mov eax, edi
mov edx, 0x6c
mul edx
seto cl
neg ecx
or ecx, eax
xor eax, eax
add ecx, 4
setb al
neg eax
or eax, ecx
push eax
call fcn.005684a2
add esp, 4
mov dword [esp + 0x20], eax
mov byte [esp + 0x48], 1
test eax, eax
je 0x456091
push 0x455580
push 0x4557d0
push edi
lea ebp, [eax + 4]
push 0x6c
push ebp
mov dword [eax], edi
call fcn.005798e1
jmp 0x456093
xor ebp, ebp
mov byte [esp + 0x48], 0
mov dword [esi + 0x63c], ebp
cmp dword [esi + 0x640], 1
jle 0x4560b7
mov edx, dword [ebx]
mov eax, dword [edx + 0x34]
push esi
mov ecx, ebx
call eax
mov dword [esi + 0x644], eax
mov eax, dword [esi + 0x640]
fld dword [0x5dcf50]
imul eax, eax, 0x6c
add eax, dword [esi + 0x63c]
xor ebp, ebp
mov byte [eax + 4], 0
fst dword [eax + 0x48]
fst dword [eax + 0x4c]
fst dword [eax + 0x50]
fst dword [eax + 0x54]
fst dword [eax + 0x5c]
fst dword [eax + 0x60]
fst dword [eax + 0x64]
fstp dword [eax + 0x68]
cmp dword [esi + 0x640], ebp
jle 0x456186
fldz
xor edi, edi
mov ecx, dword [esi + 0x63c]
fcom dword [ecx + edi + 0x48]
fnstsw ax
test ah, 0x41
jne 0x456174
mov edx, dword [ebx]
fstp st(0)
mov edx, dword [edx + 0x44]
lea eax, [esp + 0x2c]
push eax
push ebp
push esi
mov ecx, ebx
call edx
fldz
test eax, eax
je 0x456174
fld dword [esp + 0x30]
fcom st(1)
fnstsw ax
test ah, 0x41
jne 0x45613c
mov eax, dword [esi + 0x63c]
fstp dword [eax + edi + 0x48]
jmp 0x45613e
fstp st(0)
fld dword [esp + 0x34]
fcom st(1)
fnstsw ax
test ah, 0x41
jne 0x456157
mov ecx, dword [esi + 0x63c]
fstp dword [ecx + edi + 0x4c]
jmp 0x456159
fstp st(0)
fld dword [esp + 0x38]
fcom st(1)
fnstsw ax
test ah, 0x41
jne 0x456172
mov edx, dword [esi + 0x63c]
fstp dword [edx + edi + 0x50]
jmp 0x456174
fstp st(0)
inc ebp
add edi, 0x6c
cmp ebp, dword [esi + 0x640]
jl 0x4560fa
fstp st(0)
push 0xf000
push 0
mov ecx, esi
call fcn.00464be0
test eax, eax
jne 0x456279
mov eax, dword [ebx]
mov edx, dword [eax + 0x44]
lea ecx, [esp + 0x2c]
push ecx
push 0xffffffffffffffff
push esi
mov ecx, ebx
call edx
test eax, eax
je 0x45633f
mov eax, dword [esi + 0x63c]
test eax, eax
je 0x45633f
mov ecx, dword [esi + 0x640]
imul ecx, ecx, 0x6c
push str.Current
lea edx, [ecx + eax + 4]
push 0x40
push edx
call fcn.00439b20
add esp, 0xc
fldz
fld dword [esp + 0x30]
fcom st(1)
fnstsw ax
test ah, 0x41
jne 0x456204
mov eax, dword [esi + 0x640]
mov ecx, dword [esi + 0x63c]
imul eax, eax, 0x6c
fstp dword [eax + ecx + 0x48]
jmp 0x456206
fstp st(0)
fld dword [esp + 0x34]
fcom st(1)
fnstsw ax
test ah, 0x41
jne 0x456228
mov edx, dword [esi + 0x640]
mov eax, dword [esi + 0x63c]
imul edx, edx, 0x6c
fstp dword [edx + eax + 0x4c]
jmp 0x45622a
fstp st(0)
fld dword [esp + 0x38]
fcom st(1)
fnstsw ax
test ah, 0x41
jne 0x45624c
mov ecx, dword [esi + 0x640]
mov edx, dword [esi + 0x63c]
imul ecx, ecx, 0x6c
fstp dword [ecx + edx + 0x50]
jmp 0x45624e
fstp st(0)
fld dword [esp + 0x3c]
fcom st(1)
fnstsw ax
fstp st(1)
test ah, 0x41
jne 0x45633d
mov eax, dword [esi + 0x640]
mov ecx, dword [esi + 0x63c]
imul eax, eax, 0x6c
fstp dword [eax + ecx + 0x54]
jmp 0x45633f
mov ecx, dword [esi + 0x63c]
test ecx, ecx
je 0x45633f
mov edx, dword [esi + 0x640]
fld dword [eax + 0x158]
imul edx, edx, 0x6c
fstp dword [esp + 0x20]
fld dword [esp + 0x20]
push 0xf000
push 1
fstp dword [edx + ecx + 0x48]
mov ecx, esi
call fcn.00464be0
test eax, eax
je 0x4562d5
fld dword [eax + 0x158]
mov eax, dword [esi + 0x640]
mov ecx, dword [esi + 0x63c]
imul eax, eax, 0x6c
fstp dword [esp + 0x20]
fld dword [esp + 0x20]
fstp dword [eax + ecx + 0x4c]
push 0xf000
push 2
mov ecx, esi
call fcn.00464be0
test eax, eax
je 0x456308
mov edx, dword [esi + 0x640]
fld dword [eax + 0x158]
mov eax, dword [esi + 0x63c]
imul edx, edx, 0x6c
fstp dword [esp + 0x20]
fld dword [esp + 0x20]
fstp dword [edx + eax + 0x50]
push 0xf000
push 3
mov ecx, esi
call fcn.00464be0
test eax, eax
je 0x45633f
mov ecx, dword [esi + 0x640]
fld dword [eax + 0x158]
mov edx, dword [esi + 0x63c]
imul ecx, ecx, 0x6c
fstp dword [esp + 0x20]
fld dword [esp + 0x20]
fstp dword [ecx + edx + 0x54]
jmp 0x45633f
fstp st(0)
cmp dword [esi + 0x63c], 0
je 0x456376
xor edi, edi
cmp dword [esi + 0x640], edi
jle 0x456376
xor ebp, ebp
mov ecx, dword [esi + 0x63c]
mov eax, dword [ebx]
mov eax, dword [eax + 0x30]
lea edx, [ecx + ebp + 4]
push edx
push edi
push esi
mov ecx, ebx
call eax
inc edi
add ebp, 0x6c
cmp edi, dword [esi + 0x640]
jl 0x456354
or ebp, 0xffffffff
cmp dword [esi + 0x5ac], ebp
jne 0x4563a2
mov edx, dword [ebx]
mov edx, dword [edx + 0x78]
lea eax, [esp + 0x20]
push eax
push esi
mov ecx, ebx
mov dword [esp + 0x28], ebp
call edx
test eax, eax
je 0x4563a2
mov eax, dword [esp + 0x20]
mov dword [esi + 0x5ac], eax
cmp dword [esi + 0x5b0], ebp
jne 0x4563cb
mov edx, dword [ebx]
mov edx, dword [edx + 0x74]
lea eax, [esp + 0x20]
push eax
push esi
mov ecx, ebx
mov dword [esp + 0x28], ebp
call edx
test eax, eax
je 0x4563cb
mov eax, dword [esp + 0x20]
mov dword [esi + 0x5b0], eax
cmp byte [esi + 0x5b4], 0
lea edi, [esi + 0x5b4]
jne case.default.0x456403
mov edx, dword [ebx]
mov edx, dword [edx + 0x7c]
lea eax, [esp + 0x20]
push eax
push esi
mov ecx, ebx
mov dword [esp + 0x28], 0
call edx
test eax, eax
je case.default.0x456403
mov eax, dword [esp + 0x20]
dec eax
cmp eax, 9
ja case.default.0x456403
jmp dword [eax*4 + 0x456620]
push str.Samsung
jmp 0x45644e
push str.Qimonda
jmp 0x45644e
push str.Elpida
jmp 0x45644e
push str.Etron
jmp 0x45644e
push str.Nanya
jmp 0x45644e
push str.Hynix
jmp 0x45644e
push str.Mosel
jmp 0x45644e
push str.Winbond
jmp 0x45644e
push str.ESMT
jmp 0x45644e
push str.Micron
push 0x80
push edi
call fcn.0057a7c3
add esp, 0xc
cmp dword [esi + 0x634], ebp
jne 0x456488
mov eax, dword [ebx]
mov edx, dword [eax + 0x80]
lea ecx, [esp + 0x20]
push ecx
push esi
mov ecx, ebx
mov dword [esp + 0x28], ebp
call edx
test eax, eax
je 0x456488
mov eax, dword [esp + 0x20]
mov dword [esi + 0x634], eax
fld dword [0x5dcf50]
lea eax, [esp + 0x1c]
push eax
fst dword [esp + 0x18]
lea ecx, [esp + 0x1c]
fst dword [esp + 0x1c]
push ecx
fstp dword [esp + 0x24]
mov edx, dword [ebx]
mov edx, dword [edx + 0x88]
lea eax, [esp + 0x1c]
push eax
push esi
mov ecx, ebx
call edx
test eax, eax
je 0x456509
fldz
fld dword [esp + 0x14]
fcom st(1)
fnstsw ax
test ah, 0x41
jne 0x4564d1
fstp dword [esi + 0x4d4]
jmp 0x4564d3
fstp st(0)
fld dword [esp + 0x18]
fcom st(1)
fnstsw ax
test ah, 0x41
jne 0x4564ee
fst dword [esi + 0x4d8]
fstp dword [esi + 0x4d0]
jmp 0x4564f0
fstp st(0)
fld dword [esp + 0x1c]
fcom st(1)
fnstsw ax
fstp st(1)
test ah, 0x41
jne 0x456507
fstp dword [esi + 0x4d8]
jmp 0x456509
fstp st(0)
fld dword [0x5dcf50]
lea ecx, [esp + 0x1c]
push ecx
fst dword [esp + 0x18]
lea edx, [esp + 0x1c]
fst dword [esp + 0x1c]
push edx
fstp dword [esp + 0x24]
mov eax, dword [ebx]
mov edx, dword [eax + 0x8c]
lea ecx, [esp + 0x1c]
push ecx
push esi
mov ecx, ebx
call edx
test eax, eax
je 0x456584
fldz
fld dword [esp + 0x14]
fcom st(1)
fnstsw ax
test ah, 0x41
jne 0x456552
fstp dword [esi + 0x4dc]
jmp 0x456554
fstp st(0)
fld dword [esp + 0x18]
fcom st(1)
fnstsw ax
test ah, 0x41
jne 0x456569
fstp dword [esi + 0x4e0]
jmp 0x45656b
fstp st(0)
fld dword [esp + 0x1c]
fcom st(1)
fnstsw ax
fstp st(1)
test ah, 0x41
jne 0x456582
fstp dword [esi + 0x4e4]
jmp 0x456584
fstp st(0)
mov eax, dword [esp + 0x28]
test eax, eax
je 0x4565a2
mov eax, dword [eax + 8]
test eax, eax
je 0x4565a2
mov dword [esp + 0x28], eax
mov eax, dword [eax + 4]
test eax, eax
jne 0x455fe0
or eax, 0xffffffff
cmp dword [esi + 0x5ac], eax
jne 0x456609
push pe_nt_image_headers32
mov dword [esp + 0x24], eax
call fcn.00568473
add esp, 4
mov dword [esp + 0x24], eax
mov byte [esp + 0x48], 2
test eax, eax
je 0x4565db
push 0x10000
mov ecx, eax
call fcn.0046ece0
mov edi, eax
jmp 0x4565dd
xor edi, edi
mov eax, dword [edi]
mov edx, dword [eax + 0x78]
lea ecx, [esp + 0x20]
push ecx
push esi
mov ecx, edi
mov byte [esp + 0x50], 0
call edx
test eax, eax
je 0x4565ff
mov eax, dword [esp + 0x20]
mov dword [esi + 0x5ac], eax
mov edx, dword [edi]
mov eax, dword [edx]
push 1
mov ecx, edi
call eax
mov ecx, dword [esp + 0x40]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x38
ret