Function at 0x4bf4d0
Capabilities:
Enumerate pe sections

Disassembly:
sub esp, 0x14
mov eax, dword [esp + 0x18]
mov edx, dword [0x546944]
fld dword [0x544a70]
lea eax, [eax + eax*2]
push ebx
shl eax, 2
push ebp
push esi
xor ecx, ecx
lea esi, [eax + edx]
mov dword [esp + 0xc], ecx
mov dword [esp + 0x14], eax
fadd dword [esi + 4]
push edi
mov dword [esp + 0x14], ecx
fstp dword [esp + 0x28]
fld dword [esp + 0x28]
fcomp dword [0x4036e0]
mov eax, dword [esp + 0x28]
mov dword [esi + 4], eax
fnstsw ax
test ah, 0x41
jne 0x4bf520
mov dword [esi + 4], ecx
fld dword [esi + 8]
fcomp dword [0x4014c8]
fnstsw ax
test ah, 0x41
jne 0x4bf53b
fld dword [esi + 8]
fsub dword [0x544a70]
jmp 0x4bf560
push 0x320
call fcn.0042ed90
add eax, 0x190
mov dword [esp + 0x28], eax
fild dword [esp + 0x28]
fstp qword [esp + 0x1c]
fld dword [0x544a70]
fmul qword [esp + 0x1c]
fstp dword [esi + 8]
fld dword [esi + 8]
call dword [sym.imp.MSVBVM60.DLL___vbaFPFix]
fstp dword [esp + 0x28]
fld dword [esp + 0x28]
fcomp dword [0x4014c8]
fnstsw ax
test ah, 1
jne 0x4bf597
fld dword [esp + 0x28]
fcomp dword [0x402748]
fnstsw ax
test ah, 0x41
je 0x4bf597
mov byte [esi], 0
jmp 0x4bf5e3
fld dword [esp + 0x28]
fcomp dword [0x402400]
fnstsw ax
test ah, 1
jne 0x4bf5be
fld dword [esp + 0x28]
fcomp dword [0x402ff0]
fnstsw ax
test ah, 0x41
je 0x4bf5be
mov byte [esi], 1
jmp 0x4bf5e3
fld dword [esp + 0x28]
fcomp dword [0x4036dc]
fnstsw ax
test ah, 1
jne 0x4bf5e3
fld dword [esp + 0x28]
fcomp dword [0x4036d8]
fnstsw ax
test ah, 0x41
je 0x4bf5e3
mov byte [esi], 2
fld dword [esi + 4]
call dword [sym.imp.MSVBVM60.DLL___vbaFPFix]
fstp dword [esp + 0x28]
fld dword [esp + 0x28]
fcomp dword [0x4014c8]
fnstsw ax
test ah, 1
jne 0x4bf618
fld dword [esp + 0x28]
fcomp dword [0x4036d4]
fnstsw ax
test ah, 0x41
je 0x4bf618
mov byte [esi + 1], 0
jmp 0x4bf688
fld dword [esp + 0x28]
fcomp dword [0x40172c]
fnstsw ax
test ah, 1
jne 0x4bf63a
fld dword [esp + 0x28]
fcomp dword [0x4036d0]
fnstsw ax
test ah, 0x41
jne 0x4bf65c
fld dword [esp + 0x28]
fcomp dword [0x4024d4]
fnstsw ax
test ah, 1
jne 0x4bf662
fld dword [esp + 0x28]
fcomp dword [0x4036e0]
fnstsw ax
test ah, 0x41
je 0x4bf662
mov byte [esi + 1], 1
jmp 0x4bf688
fld dword [esp + 0x28]
fcomp dword [0x401734]
fnstsw ax
test ah, 1
jne 0x4bf688
fld dword [esp + 0x28]
fcomp dword [0x4024d8]
fnstsw ax
test ah, 0x41
je 0x4bf688
mov byte [esi + 1], 2
mov esi, dword [esp + 0x34]
mov bl, byte [esi + 3]
test bl, bl
jbe 0x4bf821
cmp byte [esi], 1
jne 0x4bf757
cmp bl, 0x7f
jbe 0x4bf6ad
mov dword [esp + 0x14], 0x3c0
mov eax, dword [0x546950]
mov ecx, ebx
and ecx, 0xff
mov edi, dword [eax + 0x14]
mov edx, dword [eax + 0xc]
sub ecx, edi
lea eax, [edx + ecx*8]
mov cl, byte [edx + ecx*8 + 4]
cmp cl, 0xff
jae 0x4bf821
mov dl, byte [eax + 2]
lea edi, [esp + 0x10]
mov byte [esp + 0x28], dl
mov edx, dword [0x544b3c]
push edi
push 0x3f800000
mov ebp, dword [edx]
xor edx, edx
mov dl, byte [eax + 3]
and ecx, 0xff
push edx
mov edx, dword [esp + 0x34]
and edx, 0xff
push edx
movsx edx, word [eax]
movzx di, byte [esp + 0x38]
push edx
movzx dx, byte [esi + 4]
add edx, 8
imul edx, edi
mov edi, dword [esp + 0x28]
movsx edx, dx
add edx, edi
push edx
xor edx, edx
mov dl, byte [eax + 5]
mov eax, dword [esp + 0x48]
lea edx, [edx + eax - 0x25]
mov eax, dword [esp + 0x44]
push edx
mov edx, dword [0x546960]
lea ecx, [ecx + eax - 0x1f]
mov eax, dword [0x544b3c]
push ecx
push edx
push eax
call dword [ebp + 0x7c]
test eax, eax
fnclex
jge 0x4bf821
jmp 0x4bf80c
mov dl, 0x7f
mov ecx, ebx
cmp dl, bl
sbb eax, eax
and ecx, 0xff
and eax, 0x514
add eax, 0x780
mov dword [esp + 0x14], eax
mov eax, dword [0x546954]
mov edi, dword [eax + 0x14]
mov edx, dword [eax + 0xc]
sub ecx, edi
lea eax, [edx + ecx*8]
mov cl, byte [edx + ecx*8 + 4]
cmp cl, 0xff
jae 0x4bf821
mov dl, byte [eax + 2]
lea edi, [esp + 0x10]
mov byte [esp + 0x28], dl
mov edx, dword [0x544b3c]
push edi
push 0x3f800000
mov ebp, dword [edx]
xor edx, edx
mov dl, byte [eax + 3]
and ecx, 0xff
push edx
mov edx, dword [esp + 0x34]
and edx, 0xff
push edx
movsx edx, word [eax]
movzx di, byte [esp + 0x38]
push edx
movzx dx, byte [esi + 4]
add edx, 8
imul edx, edi
mov edi, dword [esp + 0x28]
movsx edx, dx
add edx, edi
push edx
xor edx, edx
mov dl, byte [eax + 5]
mov eax, dword [esp + 0x48]
lea edx, [edx + eax - 0x25]
mov eax, dword [esp + 0x44]
push edx
mov edx, dword [0x546960]
lea ecx, [ecx + eax - 0x1f]
mov eax, dword [0x544b3c]
push ecx
push edx
push eax
call dword [ebp + 0x7c]
test eax, eax
fnclex
jge 0x4bf821
mov ecx, dword [0x544b3c]
push 0x7c
push 0x42099c
push ecx
push eax
call dword [sym.imp.MSVBVM60.DLL___vbaHresultCheckObj]
lea edi, [esp + 0x10]
mov al, byte [esi]
push edi
mov ebp, dword [esp + 0x1c]
movzx di, byte [esi + 1]
shl edi, 6
movsx edi, di
push 0x3f800000
push 0x40
push 0x27
push edi
mov edi, dword [0x546944]
mov ecx, dword [0x544b3c]
movzx ax, al
movzx di, byte [edi + ebp + 1]
lea eax, [eax + eax*2]
mov edx, dword [ecx]
lea eax, [edi + eax - 3]
lea edi, [eax + eax*4]
shl edi, 3
sub edi, eax
movsx eax, di
push eax
mov eax, dword [esp + 0x48]
push eax
mov eax, dword [esp + 0x48]
push eax
mov eax, dword [0x546964]
push eax
push ecx
call dword [edx + 0x7c]
test eax, eax
fnclex
jge 0x4bf89b
mov ecx, dword [0x544b3c]
push 0x7c
push 0x42099c
push ecx
push eax
call dword [sym.imp.MSVBVM60.DLL___vbaHresultCheckObj]
cmp byte [esi], 1
jne 0x4bf970
mov eax, dword [0x546958]
xor ecx, ecx
mov cl, byte [esi + 2]
xor dx, dx
mov edi, dword [eax + 0x14]
sub ecx, edi
mov edi, dword [eax + 0xc]
movzx bp, byte [esi + 5]
lea ecx, [ecx + ecx*4]
shl ecx, 1
mov al, byte [ecx + edi + 2]
mov dl, al
imul ebp, edx
lea edx, [ebp + ebp*2]
mov ebp, dword [esp + 0x18]
movsx edx, dx
mov dword [esp + 0x34], edx
mov edx, dword [0x546944]
mov dl, byte [edx + ebp]
lea ebp, [esp + 0x10]
mov byte [esp + 0x28], dl
and edx, 0xff
add edx, ecx
push ebp
add edx, edi
push 0x3f800000
mov dword [esp + 0x20], edx
mov edx, dword [0x544b3c]
mov edx, dword [edx]
mov dword [esp + 0x24], edx
xor edx, edx
mov dl, byte [ecx + edi + 3]
push edx
mov edx, eax
imul byte [esp + 0x34]
movsx ecx, word [ecx + edi]
and edx, 0xff
and eax, 0xff
push edx
push ecx
mov ecx, dword [esp + 0x48]
mov edi, dword [esp + 0x44]
add eax, ecx
xor edx, edx
push eax
mov eax, dword [esp + 0x30]
xor ecx, ecx
mov dl, byte [eax + 7]
mov cl, byte [eax + 4]
mov eax, dword [esp + 0x44]
add edx, edi
push edx
mov edx, dword [0x546968]
add ecx, eax
mov eax, dword [0x544b3c]
push ecx
mov ecx, dword [esp + 0x3c]
push edx
push eax
call dword [ecx + 0x7c]
test eax, eax
fnclex
jge 0x4bfa4c
jmp 0x4bfa37
mov eax, dword [0x54695c]
xor ecx, ecx
mov cl, byte [esi + 2]
mov edi, dword [eax + 0x14]
sub ecx, edi
mov edi, dword [eax + 0xc]
movzx dx, byte [esi + 5]
lea ecx, [ecx + ecx*4]
shl ecx, 1
mov al, byte [ecx + edi + 2]
movzx bp, al
imul edx, ebp
add edx, 0x15f
mov ebp, dword [esp + 0x18]
lea edx, [edx + edx*2]
movsx edx, dx
mov dword [esp + 0x34], edx
mov edx, dword [0x546944]
mov dl, byte [edx + ebp]
lea ebp, [esp + 0x10]
mov byte [esp + 0x28], dl
and edx, 0xff
add edx, ecx
push ebp
add edx, edi
push 0x3f800000
mov dword [esp + 0x24], edx
mov edx, dword [0x544b3c]
mov edx, dword [edx]
mov dword [esp + 0x20], edx
xor edx, edx
mov dl, byte [ecx + edi + 3]
push edx
mov edx, eax
imul byte [esp + 0x34]
movsx ecx, word [ecx + edi]
and edx, 0xff
and eax, 0xff
push edx
push ecx
mov ecx, dword [esp + 0x48]
mov edi, dword [esp + 0x44]
add eax, ecx
xor edx, edx
push eax
mov eax, dword [esp + 0x34]
xor ecx, ecx
mov dl, byte [eax + 7]
mov cl, byte [eax + 4]
mov eax, dword [esp + 0x44]
add edx, edi
push edx
mov edx, dword [0x546968]
add ecx, eax
mov eax, dword [0x544b3c]
push ecx
mov ecx, dword [esp + 0x38]
push edx
push eax
call dword [ecx + 0x7c]
test eax, eax
fnclex
jge 0x4bfa4c
mov edx, dword [0x544b3c]
push 0x7c
push 0x42099c
push edx
push eax
call dword [sym.imp.MSVBVM60.DLL___vbaHresultCheckObj]
test bl, bl
jbe 0x4bfb5b
cmp byte [esi], 1
jne 0x4bfad3
mov eax, dword [0x546950]
and ebx, 0xff
lea edx, [esp + 0x10]
mov edi, dword [0x544b3c]
mov ecx, dword [eax + 0x14]
mov eax, dword [eax + 0xc]
sub ebx, ecx
push edx
xor edx, edx
push 0x3f800000
mov dl, byte [eax + ebx*8 + 3]
lea ebx, [eax + ebx*8]
xor eax, eax
push edx
movsx edx, word [ebx]
mov al, byte [ebx + 2]
mov ecx, dword [edi]
push eax
push edx
xor edx, edx
mov dl, byte [esi + 4]
mov esi, dword [esp + 0x28]
imul edx, eax
add edx, esi
xor eax, eax
mov al, byte [ebx + 7]
push edx
mov edx, dword [esp + 0x48]
lea eax, [eax + edx - 0x25]
xor edx, edx
mov dl, byte [ebx + 6]
push eax
mov eax, dword [esp + 0x48]
lea edx, [edx + eax - 0x1f]
mov eax, dword [0x546960]
push edx
push eax
push edi
call dword [ecx + 0x7c]
test eax, eax
fnclex
jge 0x4bfb5b
jmp 0x4bfb46
mov eax, dword [0x546954]
and ebx, 0xff
mov edi, dword [0x544b3c]
mov ecx, dword [eax + 0x14]
mov edx, dword [eax + 0xc]
sub ebx, ecx
xor eax, eax
mov ecx, dword [edi]
lea ebx, [edx + ebx*8]
lea edx, [esp + 0x10]
push edx
xor edx, edx
mov dl, byte [ebx + 3]
mov al, byte [ebx + 2]
push 0x3f800000
push edx
movsx edx, word [ebx]
push eax
push edx
xor edx, edx
mov dl, byte [esi + 4]
mov esi, dword [esp + 0x28]
imul edx, eax
add edx, esi
xor eax, eax
mov al, byte [ebx + 7]
push edx
mov edx, dword [esp + 0x48]
lea eax, [eax + edx - 0x25]
xor edx, edx
mov dl, byte [ebx + 6]
push eax
mov eax, dword [esp + 0x48]
lea edx, [edx + eax - 0x1f]
mov eax, dword [0x546960]
push edx
push eax
push edi
call dword [ecx + 0x7c]
test eax, eax
fnclex
jge 0x4bfb5b
mov ecx, dword [0x544b3c]
push 0x7c
push 0x42099c
push ecx
push eax
call dword [sym.imp.MSVBVM60.DLL___vbaHresultCheckObj]
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x14
ret 0x10